A scene group allows structuring a scene in a hierarchical form.
More...
#include <iscene_group.h>
Inherits mi::base::Interface_declare< 0xdf29205a, ... >.
|
virtual bool | append (mi::neuraylib::Tag_struct scene_element_tag, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Append a scene element at the end of the scene group's element list. More...
|
|
virtual bool | prepend (mi::neuraylib::Tag_struct scene_element_tag, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Add a scene element as the new first item of the scene group's element list. More...
|
|
virtual mi::Uint32 | nb_elements () const =0 |
| Get the number of scene elements contained in this group. More...
|
|
virtual mi::neuraylib::Tag_struct | get_scene_element (mi::Uint32 index) const =0 |
| Get the scene element tag at the position index of the scene group's element list. More...
|
|
virtual bool | insert (mi::Uint32 index, mi::neuraylib::Tag_struct scene_element_tag, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Insert a scene element into the scene group's element list at position index . More...
|
|
virtual bool | remove (mi::Uint32 index, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Remove the scene element at the position index in the element list from the group. More...
|
|
virtual bool | remove (mi::neuraylib::Tag_struct scene_element_tag, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Remove all scene elements with the given tag from the group. More...
|
|
virtual void | clear (mi::neuraylib::IDice_transaction *dice_transaction)=0 |
| Remove all scene elements from the group. More...
|
|
A scene group allows structuring a scene in a hierarchical form.
Every scene group may contain a list of scene elements referenced by tags. A scene element can be a shape (e.g., a sphere), an attribute (e.g., a material), or other scene groups. Scene groups that contains other scene groups create a hierarchical scene description.
◆ append()
virtual bool nv::index::IScene_group::append |
( |
mi::neuraylib::Tag_struct |
scene_element_tag, |
|
|
mi::neuraylib::IDice_transaction * |
dice_transaction |
|
) |
| |
|
pure virtual |
Append a scene element at the end of the scene group's element list.
Certain scene elements may have restrictions on where in the scene description they may be added, and these rules will be enforced by this method.
- Parameters
-
[in] | scene_element_tag | Tag of the scene element |
[in] | dice_transaction | DiCE transaction |
- Returns
- true on success, or false when the element could not be added
◆ clear()
virtual void nv::index::IScene_group::clear |
( |
mi::neuraylib::IDice_transaction * |
dice_transaction | ) |
|
|
pure virtual |
Remove all scene elements from the group.
- Parameters
-
[in] | dice_transaction | DiCE transaction |
◆ get_scene_element()
virtual mi::neuraylib::Tag_struct nv::index::IScene_group::get_scene_element |
( |
mi::Uint32 |
index | ) |
const |
|
pure virtual |
Get the scene element tag at the position index
of the scene group's element list.
- Parameters
-
[in] | index | The index in the list of scene elements |
- Returns
- the scene element tag position at
index
, or NULL_TAG when the index
is invalid.
◆ insert()
virtual bool nv::index::IScene_group::insert |
( |
mi::Uint32 |
index, |
|
|
mi::neuraylib::Tag_struct |
scene_element_tag, |
|
|
mi::neuraylib::IDice_transaction * |
dice_transaction |
|
) |
| |
|
pure virtual |
Insert a scene element into the scene group's element list at position index
.
Certain scene elements may have restrictions on where in the scene description they may be added, and these rules will be enforced by this method.
- Parameters
-
[in] | index | The index in the list of scene elements |
[in] | scene_element_tag | Tag of the scene element to be inserted |
[in] | dice_transaction | DiCE transaction |
- Returns
- true on success, or false when the element could not be added.
◆ nb_elements()
virtual mi::Uint32 nv::index::IScene_group::nb_elements |
( |
| ) |
const |
|
pure virtual |
Get the number of scene elements contained in this group.
- Returns
- the number of contained elements
◆ prepend()
virtual bool nv::index::IScene_group::prepend |
( |
mi::neuraylib::Tag_struct |
scene_element_tag, |
|
|
mi::neuraylib::IDice_transaction * |
dice_transaction |
|
) |
| |
|
pure virtual |
Add a scene element as the new first item of the scene group's element list.
Certain scene elements may have restrictions on where in the scene description they may be added, and these rules will be enforced by this method.
- Parameters
-
[in] | scene_element_tag | Tag of the scene element |
[in] | dice_transaction | DiCE transaction |
- Returns
- true on success, or false when the element could not be added
◆ remove() [1/2]
virtual bool nv::index::IScene_group::remove |
( |
mi::neuraylib::Tag_struct |
scene_element_tag, |
|
|
mi::neuraylib::IDice_transaction * |
dice_transaction |
|
) |
| |
|
pure virtual |
Remove all scene elements with the given tag from the group.
- Parameters
-
[in] | scene_element_tag | Tag of the scene element to be removed |
[in] | dice_transaction | DiCE transaction |
- Returns
- true on success, or false when the element was not found
◆ remove() [2/2]
virtual bool nv::index::IScene_group::remove |
( |
mi::Uint32 |
index, |
|
|
mi::neuraylib::IDice_transaction * |
dice_transaction |
|
) |
| |
|
pure virtual |
Remove the scene element at the position index
in the element list from the group.
- Parameters
-
[in] | index | The index in the list of scene elements |
[in] | dice_transaction | DiCE transaction |
- Returns
- true on success, or false when the element was not found
The documentation for this class was generated from the following file: