curve_set_highlight Subroutine

private subroutine curve_set_highlight(self, mode, color, arrow_spacing, arrow_speed, band_width, pulse_period)

Highlight the curve (see the module documentation): mode a sum of HIGHLIGHT_PULSE and HIGHLIGHT_ARROWS (HIGHLIGHT_NONE: not highlighted), in color ([r, g, b] or [r, g, b, a]; default white). The other settings are kept when not given.

Type Bound

CurveArtist

Arguments

Type IntentOptional Attributes Name
class(CurveArtist), intent(inout) :: self
integer, intent(in) :: mode

HIGHLIGHT_* (added)

real(kind=wp), intent(in), optional :: color(:)

[r, g, b] or [r, g, b, a] (0 to 1)

real(kind=wp), intent(in), optional :: arrow_spacing

between arrows (window units; default 40)

real(kind=wp), intent(in), optional :: arrow_speed

(window units per second; default 50)

real(kind=wp), intent(in), optional :: band_width

of the arrows' band (window units; default 12)

real(kind=wp), intent(in), optional :: pulse_period

(s; default 1.5)


Calls

proc~~curve_set_highlight~~CallsGraph proc~curve_set_highlight CurveArtist%curve_set_highlight proc~curve_style CurveArtist%curve_style proc~curve_set_highlight->proc~curve_style proc~update_highlight update_highlight proc~curve_set_highlight->proc~update_highlight is_colored is_colored proc~curve_style->is_colored proc~apply_highlight apply_highlight proc~curve_style->proc~apply_highlight set_pattern set_pattern proc~curve_style->set_pattern set_style set_style proc~curve_style->set_style style_node style_node proc~curve_style->style_node proc~set_rgba set_rgba proc~update_highlight->proc~set_rgba proc~set_highlight LineChain%set_highlight proc~apply_highlight->proc~set_highlight proc~apply_style apply_style proc~set_highlight->proc~apply_style interface~vkf_line_set_dash_mode vkf_line_set_dash_mode proc~apply_style->interface~vkf_line_set_dash_mode interface~vkf_line_set_highlight vkf_line_set_highlight proc~apply_style->interface~vkf_line_set_highlight interface~vkf_line_set_trail vkf_line_set_trail proc~apply_style->interface~vkf_line_set_trail proc~check_status check_status proc~apply_style->proc~check_status proc~line_set_pattern line_set_pattern proc~apply_style->proc~line_set_pattern proc~line_set_style line_set_style proc~apply_style->proc~line_set_style proc~marker_set_style marker_set_style proc~apply_style->proc~marker_set_style interface~vkf_line_style vkf_line_style proc~line_set_pattern->interface~vkf_line_style interface~vkf_line_style_changed vkf_line_style_changed proc~line_set_pattern->interface~vkf_line_style_changed proc~line_set_style->interface~vkf_line_style proc~line_set_style->interface~vkf_line_style_changed proc~marker_set_style->interface~vkf_line_style proc~marker_set_style->interface~vkf_line_style_changed

Source Code

    subroutine curve_set_highlight(self, mode, color, arrow_spacing, arrow_speed, band_width, pulse_period)
        class(CurveArtist), intent(inout) :: self
        integer, intent(in) :: mode                         !! HIGHLIGHT_* (added)
        real(wp), intent(in), optional :: color(:)          !! [r, g, b] or [r, g, b, a] (0 to 1)
        real(wp), intent(in), optional :: arrow_spacing     !! between arrows (window units; default 40)
        real(wp), intent(in), optional :: arrow_speed       !! (window units per second; default 50)
        real(wp), intent(in), optional :: band_width        !! of the arrows' band (window units; default 12)
        real(wp), intent(in), optional :: pulse_period      !! (s; default 1.5)
        call update_highlight(self%highlight_, mode, color, arrow_spacing, arrow_speed, band_width, pulse_period)
        call curve_style(self)
    end subroutine curve_set_highlight