NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::IDecal Class Referenceabstract

Decals are sticker-like objects that can be applied to other geometry objects. More...

Inheritance diagram for mi::IDecal:
Inheritance graph
[legend]

Public Member Functions

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

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x6a21efd3, 0xa858, 0x41c5, 0xa4, 0xea, 0x4b, 0x93, 0x94, 0xf5, 0x43, 0x67, IScene_element >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
IScene_element
Self
  Own type. More...
 
typedef Uuid_t< id1, id2, id3,
id4, id5, id6, id7, id8, id9,
id10, id11 > 
IID
  Declares the interface ID (IID) of this interface. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0x6a21efd3, 0xa858, 0x41c5, 0xa4, 0xea, 0x4b, 0x93, 0x94, 0xf5, 0x43, 0x67, IScene_element >
static bool  compare_iid (const Uuid &iid)
  Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 

Detailed 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::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::IAttribute_set for details.

Member Function Documentation

virtual Bbox3_struct mi::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 the unit cube centered at the origin.

virtual Decal_face_mode mi::IDecal::get_face_mode ( ) const
pure virtual

Returns the face of the object on which the decal is applied.

virtual Sint32 mi::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::IDecal::get_projector ( ) const
pure virtual

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

virtual Uint32 mi::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::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::IDecal::set_clipping_box ( const Bbox3_struct clipping_box)
pure virtual

Sets the clipping box of the decal.

virtual void mi::IDecal::set_face_mode ( Decal_face_mode  face_mode)
pure virtual

Sets the face of the object on which the decal is applied.

virtual void mi::IDecal::set_priority ( Sint32  priority)
pure virtual

Sets the priority of the decal.

virtual Uint32 mi::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::IMdl_function_call.
  • -5: The projector does not have the correct return type "::base::texture_coordinate_info".
virtual void mi::IDecal::set_texture_space ( Uint32  index)
pure virtual

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

virtual void mi::IDecal::set_uvw_clipping_box ( const Bbox3_struct uvw_clipping_box)
pure virtual

Sets the uvw clipping box of the decal.