7#ifndef NVIDIA_INDEX_ILINE_SET_H
8#define NVIDIA_INDEX_ILINE_SET_H
10#include <mi/base/interface_declare.h>
32 public mi::base::Interface_declare<0xdd11bb4e,0x46ff,0x405b,0xbe,0x0f,0xa4,0x16,0x4f,0x10,0xbd,0x94,
33 nv::index::IImage_space_shape>
144 virtual const mi::math::Vector_struct<mi::Float32, 3>*
get_lines()
const = 0;
158 mi::math::Vector_struct<mi::Float32, 3>* line_vertices,
159 mi::Size nb_line_vertices) = 0;
173 virtual const mi::math::Color_struct*
get_colors()
const = 0;
195 mi::math::Color_struct* colors,
196 mi::Size nb_colors) = 0;
233 mi::Size nb_widths) = 0;
Interface class for line geometry, which is a scene element and can be added to the scene description...
Definition: iline_set.h:34
virtual mi::Size get_nb_widths() const =0
Get number of line segment width.
virtual void set_line_type(Line_type type)=0
Set the line type.
virtual const mi::math::Vector_struct< mi::Float32, 3 > * get_lines() const =0
Get the pointer to the array of line vertices (points).
virtual Line_style get_line_style() const =0
Get the line style.
virtual void set_colors(mi::math::Color_struct *colors, mi::Size nb_colors)=0
Set the pointer to the array of colors per segment/vertex.
virtual void set_widths(mi::Float32 *widths, mi::Size nb_widths)=0
Set the pointer to the array of widths per segment/vertex.
virtual const mi::math::Color_struct * get_colors() const =0
Get the pointer to the array of colors per segment/vertex.
Cap_style
Available cap styles for the line rendering.
Definition: iline_set.h:72
@ CAP_STYLE_ROUND
round
Definition: iline_set.h:78
@ CAP_STYLE_FLAT
flat
Definition: iline_set.h:74
@ CAP_STYLE_SQUARE
square
Definition: iline_set.h:76
Line_type
Available line types for the line rendering.
Definition: iline_set.h:38
@ LINE_TYPE_PATH
one connected line path
Definition: iline_set.h:42
@ LINE_TYPE_LOOP
one connected and closed line path
Definition: iline_set.h:44
@ LINE_TYPE_SEGMENTS
separated line segments
Definition: iline_set.h:40
virtual void set_line_style(Line_style style)=0
Set the line style.
virtual const mi::Float32 * get_widths() const =0
Get the pointer to the array of widths per segment/vertex.
virtual Cap_style get_cap_style() const =0
Get the line cap style.
virtual mi::Size get_nb_lines() const =0
Get number of line segments.
virtual void set_cap_style(Cap_style style)=0
Set the line cap style.
virtual Line_type get_line_type() const =0
Get the line type.
Line_style
Available line styles for the line rendering.
Definition: iline_set.h:49
@ LINE_STYLE_CENTER
centered
Definition: iline_set.h:57
@ LINE_STYLE_SOLID
solid
Definition: iline_set.h:51
@ LINE_STYLE_PHANTOM
phantom
Definition: iline_set.h:61
@ LINE_STYLE_BORDER
border
Definition: iline_set.h:65
@ LINE_STYLE_DOTTED
dotted
Definition: iline_set.h:55
@ LINE_STYLE_DIVIDE
divide
Definition: iline_set.h:67
@ LINE_STYLE_HIDDEN
hidden
Definition: iline_set.h:59
@ LINE_STYLE_DASHED
dashed
Definition: iline_set.h:53
@ LINE_STYLE_DASHDOT
dashed with dots
Definition: iline_set.h:63
virtual mi::Size get_nb_vertices() const =0
Get number of line vertices.
virtual mi::Size get_nb_colors() const =0
Get number of color values.
virtual void set_lines(mi::math::Vector_struct< mi::Float32, 3 > *line_vertices, mi::Size nb_line_vertices)=0
Set the line vertices (points).
Base class declaring the functionality of higher-level shapes.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349