set_dash_mode Subroutine

private subroutine set_dash_mode(self, mode, length)

For lines, how the dashes are laid out: 0 anchored to the line (the default), 1 screen-locked (a constant length in pixels, following the line on screen), 2 a fixed length of the line (strips): length scene units for the pattern, or if 0 its length on screen when first drawn.

Type Bound

LineChain

Arguments

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

0 anchored, 1 screen-locked, 2 fixed length

real(kind=wp), intent(in) :: length

(2) the pattern's length (scene units; 0: from the first view)


Calls

proc~~set_dash_mode~~CallsGraph proc~set_dash_mode LineChain%set_dash_mode proc~apply_style apply_style proc~set_dash_mode->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

Called by

proc~~set_dash_mode~~CalledByGraph proc~set_dash_mode LineChain%set_dash_mode proc~segment_set_dash_mode SegmentArtist%segment_set_dash_mode proc~segment_set_dash_mode->proc~set_dash_mode

Source Code

    subroutine set_dash_mode(self, mode, length)
        class(LineChain), intent(inout) :: self
        integer, intent(in) :: mode             !! 0 anchored, 1 screen-locked, 2 fixed length
        real(wp), intent(in) :: length          !! (2) the pattern's length (scene units; 0: from the first view)
        integer :: j
        self%dash_mode = mode
        self%dash_length = length
        do j = 1, self%n_chunks
            call apply_style(self, self%chunks(j)%line)
        end do
    end subroutine set_dash_mode