segments_build_contents Subroutine

private subroutine segments_build_contents(self, viewer, group)

The chain of separate segments with a color per point, under group.

Type Bound

CustomLineSegments

Arguments

Type IntentOptional Attributes Name
class(CustomLineSegments), intent(inout) :: self
type(c_ptr), intent(in) :: viewer

a window's viewer handle (null: headless)

type(c_ptr), intent(in) :: group

the group node to draw under


Calls

proc~~segments_build_contents~~CallsGraph proc~segments_build_contents CustomLineSegments%segments_build_contents proc~apply_style~2 apply_style proc~segments_build_contents->proc~apply_style~2 proc~init LineChain%init proc~segments_build_contents->proc~init proc~reserve LineChain%reserve proc~segments_build_contents->proc~reserve proc~set_compile LineChain%set_compile proc~segments_build_contents->proc~set_compile proc~is_built LineChain%is_built proc~apply_style~2->proc~is_built proc~set_pattern LineChain%set_pattern proc~apply_style~2->proc~set_pattern proc~set_style LineChain%set_style proc~apply_style~2->proc~set_style interface~vkf_compile_node vkf_compile_node proc~reserve->interface~vkf_compile_node interface~vkf_line_create vkf_line_create proc~reserve->interface~vkf_line_create interface~vkf_line_create_colored vkf_line_create_colored proc~reserve->interface~vkf_line_create_colored interface~vkf_marker_create vkf_marker_create proc~reserve->interface~vkf_marker_create interface~vkf_node_add_child vkf_node_add_child proc~reserve->interface~vkf_node_add_child interface~vkf_ribbon_create vkf_ribbon_create proc~reserve->interface~vkf_ribbon_create proc~apply_style apply_style proc~reserve->proc~apply_style proc~check_status check_status proc~reserve->proc~check_status proc~line_set_segments line_set_segments proc~reserve->proc~line_set_segments proc~move_chunks move_chunks proc~reserve->proc~move_chunks proc~apply_style->proc~check_status 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~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_segments->interface~vkf_line_style interface~vkf_line_style_changed vkf_line_style_changed proc~line_set_segments->interface~vkf_line_style_changed proc~set_pattern->proc~apply_style proc~set_style->proc~apply_style proc~line_set_pattern->interface~vkf_line_style 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 segments_build_contents(self, viewer, group)
        class(CustomLineSegments), intent(inout) :: self
        type(c_ptr), intent(in) :: viewer   !! a window's viewer handle (null: headless)
        type(c_ptr), intent(in) :: group    !! the group node to draw under
        call self%chain%init(group, CHAIN_SEGMENTS, colored=.true.)
        call apply_style(self)
        call self%chain%reserve(max(2, 2 * self%n))          ! (compiled with the scene)
        call self%chain%set_compile(c_associated(viewer))
        self%changed = .true.
    end subroutine segments_build_contents