NVIDIA IndeX API nvidia_logo_transpbg.gif Up
ilabel.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7#ifndef NVIDIA_INDEX_ILABEL_SHAPES_H
8#define NVIDIA_INDEX_ILABEL_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
28 public mi::base::Interface_declare<0x408633d3,0xbbe1,0x4e01,0xa1,0x27,0xb2,0x2c,0xa3,0x44,0x5c,0x55,
29 nv::index::IAttribute>
30{
31public:
37 virtual void set_padding(mi::Float32 padding) = 0;
38
43 virtual mi::Float32 get_padding() const = 0;
44
50 virtual void set_auto_flip(bool auto_flip) = 0;
51
57 virtual bool get_auto_flip() const = 0;
58
59
67 virtual void get_color(
68 mi::math::Color_struct& foreground,
69 mi::math::Color_struct& background) const = 0;
70
78 virtual void set_color(
79 const mi::math::Color_struct& foreground,
80 const mi::math::Color_struct& background) = 0;
81};
82
89class ILabel_3D :
90 public mi::base::Interface_declare<0x4967ddd0,0xbc19,0x45d4,0x88,0x4d,0x82,0xfa,0x68,0xd0,0x13,0x35,
91 nv::index::IObject_space_shape>
92{
93public:
98 virtual const char* get_text() const = 0;
103 virtual void set_text(const char* text) = 0;
104
128 virtual void set_geometry(
129 const mi::math::Vector_struct<mi::Float32, 3>& position,
130 const mi::math::Vector_struct<mi::Float32, 3>& right_vector,
131 const mi::math::Vector_struct<mi::Float32, 3>& up_vector,
132 mi::Float32 height,
133 mi::Float32 width = -1.f) = 0;
134
158 virtual void get_geometry(
159 mi::math::Vector_struct<mi::Float32, 3>& position,
160 mi::math::Vector_struct<mi::Float32, 3>& right_vector,
161 mi::math::Vector_struct<mi::Float32, 3>& up_vector,
162 mi::Float32& height,
163 mi::Float32& width) const = 0;
164
175 virtual mi::Float32 compute_label_width(const IFont* font, const ILabel_layout *layout) const = 0;
176};
177
185 public mi::base::Interface_declare<0x641854bd,0xb7a7,0x45b0,0x94,0x44,0x25,0x0d,0x3e,0x10,0x6f,0xae,
186 nv::index::IImage_space_shape>
187{
188public:
193 virtual const char* get_text() const = 0;
198 virtual void set_text(const char* text) = 0;
199
223 virtual void set_geometry(
224 const mi::math::Vector_struct<mi::Float32, 3>& position,
225 const mi::math::Vector_struct<mi::Float32, 2>& right_vector,
226 const mi::math::Vector_struct<mi::Float32, 2>& up_vector,
227 mi::Float32 height,
228 mi::Float32 width = -1.f) = 0;
229
253 virtual void get_geometry(
254 mi::math::Vector_struct<mi::Float32, 3>& position,
255 mi::math::Vector_struct<mi::Float32, 2>& right_vector,
256 mi::math::Vector_struct<mi::Float32, 2>& up_vector,
257 mi::Float32& height,
258 mi::Float32& width) const = 0;
259
270 virtual mi::Float32 compute_label_width(const IFont *font, const ILabel_layout *layout) const = 0;
271};
272
273}} // namespace index / nv
274
275#endif // NVIDIA_INDEX_ILABEL_SHAPES_H
A font attribute describes the appearance of a label in the scene description.
Definition: ifont.h:29
A label defined in image space.
Definition: ilabel.h:187
virtual const char * get_text() const =0
Get the text of the label.
virtual void get_geometry(mi::math::Vector_struct< mi::Float32, 3 > &position, mi::math::Vector_struct< mi::Float32, 2 > &right_vector, mi::math::Vector_struct< mi::Float32, 2 > &up_vector, mi::Float32 &height, mi::Float32 &width) const =0
The position and orientation in object space is defined by an anchor point that lies inside plane the...
virtual mi::Float32 compute_label_width(const IFont *font, const ILabel_layout *layout) const =0
Compute the width of the label based on the given font.
virtual void set_text(const char *text)=0
The Set text of the label.
virtual void set_geometry(const mi::math::Vector_struct< mi::Float32, 3 > &position, const mi::math::Vector_struct< mi::Float32, 2 > &right_vector, const mi::math::Vector_struct< mi::Float32, 2 > &up_vector, mi::Float32 height, mi::Float32 width=-1.f)=0
The position and orientation in object space is defined by an anchor point that lies inside plane tha...
A label defined in object space.
Definition: ilabel.h:92
virtual void set_geometry(const mi::math::Vector_struct< mi::Float32, 3 > &position, const mi::math::Vector_struct< mi::Float32, 3 > &right_vector, const mi::math::Vector_struct< mi::Float32, 3 > &up_vector, mi::Float32 height, mi::Float32 width=-1.f)=0
The position and orientation in object space is defined by an anchor point that lies inside plane tha...
virtual void set_text(const char *text)=0
The Set text of the label.
virtual void get_geometry(mi::math::Vector_struct< mi::Float32, 3 > &position, mi::math::Vector_struct< mi::Float32, 3 > &right_vector, mi::math::Vector_struct< mi::Float32, 3 > &up_vector, mi::Float32 &height, mi::Float32 &width) const =0
The position and orientation in object space is defined by an anchor point that lies inside plane the...
virtual mi::Float32 compute_label_width(const IFont *font, const ILabel_layout *layout) const =0
Compute the width of the label based on the given font.
virtual const char * get_text() const =0
Get the text of the label.
A label layout defined a label's appearance including, for instance, the padding around the test and ...
Definition: ilabel.h:30
virtual bool get_auto_flip() const =0
Returns the state of the auto flip mode.
virtual void set_padding(mi::Float32 padding)=0
Set the padding around the label text.
virtual void set_auto_flip(bool auto_flip)=0
Set/Clear the auto flip mode.
virtual mi::Float32 get_padding() const =0
Get the padding around the label text.
virtual void get_color(mi::math::Color_struct &foreground, mi::math::Color_struct &background) const =0
A label defines it foreground color, i.e., the color of the text shown on the label,...
virtual void set_color(const mi::math::Color_struct &foreground, const mi::math::Color_struct &background)=0
A label defines it foreground color, i.e., the color of the text shown on the label,...
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