set_marker_style Subroutine

private subroutine set_marker_style(self, color, size, shape, radius)

For markers, the color (rgba), size (window units), shape (shaders/marker.frag) and attenuation radius (scene units, 0 for none).

Type Bound

LineChain

Arguments

Type IntentOptional Attributes Name
class(LineChain), intent(inout) :: self
real(kind=wp), intent(in) :: color(4)

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

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

(window units)

integer, intent(in) :: shape

marker shape (shaders/marker.frag)

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

attenuation radius (scene units; 0: none)


Calls

proc~~set_marker_style~~CallsGraph proc~set_marker_style LineChain%set_marker_style proc~apply_style apply_style proc~set_marker_style->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_marker_style~~CalledByGraph proc~set_marker_style LineChain%set_marker_style proc~marker_style marker_style proc~marker_style->proc~set_marker_style proc~build_marker_nodes build_marker_nodes proc~build_marker_nodes->proc~marker_style proc~set_auto_attenuate MarkerArtist%set_auto_attenuate proc~set_auto_attenuate->proc~marker_style proc~set_marker_color MarkerArtist%set_marker_color proc~set_marker_color->proc~marker_style proc~set_marker_shape~2 MarkerArtist%set_marker_shape proc~set_marker_shape~2->proc~marker_style proc~set_marker_size~2 MarkerArtist%set_marker_size proc~set_marker_size~2->proc~marker_style proc~update_bounds update_bounds proc~update_bounds->proc~marker_style proc~marker_build MarkerArtist%marker_build proc~marker_build->proc~build_marker_nodes proc~marker_update MarkerArtist%marker_update proc~marker_update->proc~update_bounds proc~rebuild_markers rebuild_markers proc~marker_update->proc~rebuild_markers proc~new_marker_artist new_marker_artist proc~new_marker_artist->proc~set_marker_color proc~rebuild_markers->proc~build_marker_nodes interface~markerartist MarkerArtist interface~markerartist->proc~new_marker_artist proc~marker_set_point_colors MarkerArtist%marker_set_point_colors proc~marker_set_point_colors->proc~rebuild_markers proc~set_marker_image MarkerArtist%set_marker_image proc~set_marker_image->proc~rebuild_markers

Source Code

    subroutine set_marker_style(self, color, size, shape, radius)
        class(LineChain), intent(inout) :: self
        real(wp), intent(in) :: color(4)        !! [r, g, b, a] (0 to 1)
        real(wp), intent(in) :: size            !! (window units)
        real(wp), intent(in) :: radius          !! attenuation radius (scene units; 0: none)
        integer, intent(in) :: shape            !! marker shape (shaders/marker.frag)
        integer :: j
        self%color = real(color, c_float)
        self%width = real(size, c_float)
        self%shape = shape
        self%radius = real(radius, c_float)
        do j = 1, self%n_chunks
            call apply_style(self, self%chunks(j)%line)
        end do
    end subroutine set_marker_style