A marker node at points xyz(3, n), px window units (MarkerArtist's
shapes and attenuation).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | xyz(:,:) |
(3, n) points |
||
| real(kind=wp), | intent(in) | :: | rgba(4) |
color [r, g, b, a] (0 to 1) |
||
| real(kind=wp), | intent(in) | :: | px |
marker size (window units) |
||
| integer, | intent(in) | :: | shape |
a MARKER_* shape |
||
| real(kind=wp), | intent(in) | :: | radius |
markers shrink beyond this camera distance (scene units) |
||
| type(c_ptr), | intent(in) | :: | image |
image for MARKER_IMAGE (null: none) |
function marker_node(xyz, rgba, px, shape, radius, image) result(node) real(wp), intent(in) :: xyz(:,:) !! (3, n) points real(wp), intent(in) :: rgba(4) !! color [r, g, b, a] (0 to 1) real(wp), intent(in) :: px !! marker size (window units) real(wp), intent(in) :: radius !! markers shrink beyond this camera distance (scene units) integer, intent(in) :: shape !! a MARKER_* shape type(c_ptr), intent(in) :: image !! image for MARKER_IMAGE (null: none) type(c_ptr) :: node node = c_null_ptr if (size(xyz, 2) < 1) return node = vkf_marker_create(int(size(xyz, 2), c_int), image, 0_c_int) if (.not. c_associated(node)) return call check_status(marker_set_style(node, real(rgba, c_float), real(px, c_float), shape, real(radius, c_float)), 'shapes') call check_status(line_set_points(node, real(xyz, c_double)), 'shapes') end function marker_node