neuray API Programmer's Manual

mi::neuraylib::IDecal Class Reference

[Miscellaneous]

Description

Decals are sticker-like objects that can be applied to other geometry objects. The geometry of a decal in object space is a unit square centered at the origin in the x-y-plane facing positive z-direction. It can be transformed as usual using mi::neuraylib::IInstance nodes. As for other geometry objects, the material attribute determines its look.

Note that decals are not independent scene objects like geometry objects. Decals are always applied to other scene objects. To reflect this, decals are not placed into the scene by adding them (or instances of them) to groups. Instead, decals are attached to other scene nodes via the attribute decals. See mi::neuraylib::IAttribute_set for details.

Public Member Functions

virtual Bbox3_struct get_clipping_box() const =0
Returns the clipping box of the decal. More...
virtual Decal_face_mode get_face_mode() const =0
Returns the face(s) of the object on which the decal is applied.
virtual Sint32 get_priority() const =0
Returns the priority of the decal. More...
virtual const char* get_projector() const =0
Returns the name of the projector, or NULL if no projector is set.
virtual Uint32 get_texture_space() const =0
Returns the index of the texture space to be used by the projector. More...
virtual Bbox3_struct get_uvw_clipping_box() const =0
Returns the uvw clipping box of the decal. More...
virtual void set_clipping_box( const Bbox3_struct& clipping_box) =0
Sets the clipping box of the decal.
virtual void set_face_mode( Decal_face_mode face_mode) =0
Sets the face(s) of the object on which the decal is applied.
virtual void set_priority( Sint32 priority) =0
Sets the priority of the decal.
virtual Uint32 set_projector( const char* name) =0
Sets the projector. More...
virtual void set_texture_space( Uint32 index) =0
Sets the index of the texture space to be used by the projector.
virtual void set_uvw_clipping_box( const Bbox3_struct& uvw_clipping_box) =0
Sets the uvw clipping box of the decal.

Member Functions

virtual Bbox3_struct mi::​neuraylib::​IDecal::get_clipping_box() const [pure virtual]

Returns the clipping box of the decal. The clipping box limits the effects of the projected decal. The default clipping box is unbounded.

virtual Decal_face_mode mi::​neuraylib::​IDecal::get_face_mode() const [pure virtual]

Returns the face(s) of the object on which the decal is applied.

virtual Sint32 mi::​neuraylib::​IDecal::get_priority() const [pure virtual]

Returns the priority of the decal. The priority of a decal controls the ordering in case of overlapping decals. Decals with higher priority are positioned on top of decals with lower priority. The default priority is 0.

virtual const char* mi::​neuraylib::​IDecal::get_projector() const [pure virtual]

Returns the name of the projector, or NULL if no projector is set.

virtual Uint32 mi::​neuraylib::​IDecal::get_texture_space() const [pure virtual]

Returns the index of the texture space to be used by the projector. The default index is 0.

virtual Bbox3_struct mi::​neuraylib::​IDecal::get_uvw_clipping_box() const [pure virtual]

Returns the uvw clipping box of the decal. The uvw clipping box limits the effects of the projected decal in uvw space. The default clipping box is unbounded.

virtual void mi::​neuraylib::​IDecal::set_clipping_box( const Bbox3_struct& clipping_box) [pure virtual]

Sets the clipping box of the decal.

virtual void mi::​neuraylib::​IDecal::set_face_mode( Decal_face_mode face_mode) [pure virtual]

Sets the face(s) of the object on which the decal is applied.

virtual void mi::​neuraylib::​IDecal::set_priority( Sint32 priority) [pure virtual]

Sets the priority of the decal.

virtual Uint32 mi::​neuraylib::​IDecal::set_projector( const char* name) [pure virtual]

Sets the projector.

Parameters

name
The name of the projector, or NULL to remove the current projector.

Returns

  • 0: Success.
  • -2: There is no element with that name.
  • -3: The projector can not be attached to the decal because it is in a more private scope than the decal.
  • -4: The projector does not have the correct type mi::neuraylib::IMdl_function_call.
  • -5: The projector does not have the correct return type "::base::texture_coordinate_info".
virtual void mi::​neuraylib::​IDecal::set_texture_space( Uint32 index) [pure virtual]

Sets the index of the texture space to be used by the projector.

virtual void mi::​neuraylib::​IDecal::set_uvw_clipping_box( const Bbox3_struct& uvw_clipping_box) [pure virtual]

Sets the uvw clipping box of the decal.