NVIDIA IndeX API nvidia_logo_transpbg.gif Up
icircle.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7#ifndef NVIDIA_INDEX_ICIRCLE_SHAPES_H
8#define NVIDIA_INDEX_ICIRCLE_SHAPES_H
9
10#include <mi/base/interface_declare.h>
11#include <mi/dice.h>
12
13#include <nv/index/ishape.h>
14#include <nv/index/iattribute.h>
15#include <nv/index/ifont.h>
16
17namespace nv
18{
19namespace index
20{
21
33class ICircle :
34 public mi::base::Interface_declare<0xf5617675,0x23cc,0x4f82,0xbc,0xf7,0x24,0x52,0x7e,0xd6,0xf7,0xe5,
35 nv::index::IImage_space_shape>
36{
37public:
48 virtual void set_geometry(
49 const mi::math::Vector_struct<mi::Float32, 3>& center,
50 mi::Float32 radius) = 0;
51
62 virtual void get_geometry(
63 mi::math::Vector_struct<mi::Float32, 3>& center,
64 mi::Float32& radius) const = 0;
65
73 virtual void set_outline_style(
74 const mi::math::Color_struct& line_color,
75 mi::Float32 line_width = 1.5f) = 0;
76
84 virtual void get_outline_style(
85 mi::math::Color_struct& line_color,
86 mi::Float32& line_width) const = 0;
87
90 //
92 {
95 };
96
97
105 virtual void set_fill_style(
106 const mi::math::Color_struct& fill_color,
107 Fill_style fill_style) = 0;
108
116 virtual void get_fill_style(
117 mi::math::Color_struct& fill_color,
118 Fill_style& fill_style) const = 0;
119};
120
121}} // namespace index / nv
122
123#endif // NVIDIA_INDEX_ICIRCLE_SHAPES_H
NVIDIA IndeX provides scene elements that enable annotating 3D scenes or implementing 3D user-interfa...
Definition: icircle.h:36
virtual void get_geometry(mi::math::Vector_struct< mi::Float32, 3 > &center, mi::Float32 &radius) const =0
A circle is defined by its center and a radius.
virtual void get_outline_style(mi::math::Color_struct &line_color, mi::Float32 &line_width) const =0
A circle's outline can have a style defined by the line color and a line width.
virtual void set_fill_style(const mi::math::Color_struct &fill_color, Fill_style fill_style)=0
The inner part of a circle can be filled using a fill color or may be empty.
virtual void set_outline_style(const mi::math::Color_struct &line_color, mi::Float32 line_width=1.5f)=0
A circle's outline can have a style defined by the line color and a line width.
virtual void get_fill_style(mi::math::Color_struct &fill_color, Fill_style &fill_style) const =0
The inner part of a circle can be filled using a fill color or may be empty.
virtual void set_geometry(const mi::math::Vector_struct< mi::Float32, 3 > &center, mi::Float32 radius)=0
A circle is defined by its center and a radius.
Fill_style
The inner part of a circle is defined to be empty or can be filled.
Definition: icircle.h:92
@ FILL_SOLID
The circle will be filled using a solid color.
Definition: icircle.h:94
@ FILL_EMPTY
No fill applied to the circle.
Definition: icircle.h:93
Base class representing attributes that can be defined in a scene description.
Base class representing the fonts in the scene description.
Base class declaring the functionality of higher-level shapes.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349