new_vector_handle Function

private function new_vector_handle(name, vector, color, scale) result(h)

A vector handle (see the module documentation): vector in its frame's coordinates (default [1, 0, 0]), drawn scale times as long (default 1), in color ([r, g, b] or [r, g, b, a]). Its axes and labels are hidden.

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: name

the frame's name

real(kind=wp), intent(in), optional :: vector(3)

frame coordinates

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

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

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

display scale (scene units per vector unit; > 0)

Return Value type(VectorHandle)


Calls

proc~~new_vector_handle~~CallsGraph proc~new_vector_handle new_vector_handle proc~show_decorations ReferenceFrame%show_decorations proc~new_vector_handle->proc~show_decorations proc~show_axes ReferenceFrame%show_axes proc~show_decorations->proc~show_axes proc~show_axes_labels ReferenceFrame%show_axes_labels proc~show_decorations->proc~show_axes_labels proc~show_name_label ReferenceFrame%show_name_label proc~show_decorations->proc~show_name_label proc~update_switches update_switches proc~show_axes->proc~update_switches proc~show_axes_labels->proc~update_switches proc~show_name_label->proc~update_switches interface~vkf_switch_set vkf_switch_set proc~update_switches->interface~vkf_switch_set proc~check_status check_status proc~update_switches->proc~check_status

Called by

proc~~new_vector_handle~~CalledByGraph proc~new_vector_handle new_vector_handle interface~vectorhandle VectorHandle interface~vectorhandle->proc~new_vector_handle

Source Code

    function new_vector_handle(name, vector, color, scale) result(h)
        character(len=*), intent(in) :: name                !! the frame's name
        real(wp), intent(in), optional :: vector(3)         !! frame coordinates
        real(wp), intent(in), optional :: color(:)          !! [r, g, b] or [r, g, b, a] (0 to 1)
        real(wp), intent(in), optional :: scale             !! display scale (scene units per vector unit; > 0)
        type(VectorHandle) :: h
        h%ReferenceFrame = ReferenceFrame(name, color)
        call h%show_decorations(.false.)
        if (present(vector)) h%vector_ = vector
        if (present(scale)) then
            if (scale > 0.0_wp) h%scale_ = scale
        end if
    end function new_vector_handle