NVIDIA IndeX API nvidia_logo_transpbg.gif Up
ishape.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7#ifndef NVIDIA_INDEX_ISHAPE_H
8#define NVIDIA_INDEX_ISHAPE_H
9
10#include <mi/base/interface_declare.h>
11#include <mi/dice.h>
12
14
15namespace nv
16{
17namespace index
18{
19
25class IShape :
26 public mi::base::Interface_declare<0xa0df402e,0x4e28,0x4dc4,0x81,0x4b,0x6b,0x68,0x74,0xeb,0xd0,0xd2,
27 nv::index::IScene_element>
28{
29public:
35 virtual bool get_pickable() const = 0;
36
41 virtual void set_pickable(bool pickable) = 0;
42};
43
50 public mi::base::Interface_declare<0xca3aacf8,0x99af,0x46dc,0xa0,0xa7,0xe9,0xb7,0xf0,0xed,0x68,0xda,
51 nv::index::IShape>
52{
53public:
60 virtual mi::math::Bbox_struct<mi::Float32, 3> get_bounding_box() const = 0;
61};
62
71 public mi::base::Interface_declare<0xb98467a6,0xf317,0x459d,0xa9,0x64,0xc9,0x8f,0x4c,0x37,0x54,0x71,
72 nv::index::IShape>
73{
74};
75
76}} // namespace index / nv
77
78#endif // NVIDIA_INDEX_ISHAPE_H
Image space shapes have an extent defined in two-dimensional image space even though their position m...
Definition: ishape.h:73
Object space shapes are defined in the 3D scene, i.e., their position as well as their extent is affe...
Definition: ishape.h:52
virtual mi::math::Bbox_struct< mi::Float32, 3 > get_bounding_box() const =0
An object space shape must define its bounding box.
The base class of all shapes.
Definition: ishape.h:28
virtual void set_pickable(bool pickable)=0
Sets the pickable state of the shape.
virtual bool get_pickable() const =0
Each shape may be pickable, so that the ray cast through the scene can intersect the shape.
Interface class representing scene elements in the scene description.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349