NVIDIA Iray SDK API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::neuraylib::IProjector Class Referenceabstract

Projectors are functions that generate texture coordinates for a particular texture space. More...

Inheritance diagram for mi::neuraylib::IProjector:
mi::base::Interface_declare< 0x5f07ad1a, 0xbdc8, 0x4dfc, 0xb7, 0xdc, 0x7e, 0x1d, 0x2c, 0x87, 0xfa, 0x9d, neuraylib::IScene_element > mi::neuraylib::IScene_element mi::base::Interface_declare< 0x8a2a4da9, 0xe323, 0x452c, 0xb8, 0xda, 0x92, 0x45, 0x67, 0x85, 0xd7, 0x78, neuraylib::IAttribute_set > mi::neuraylib::IAttribute_set mi::base::Interface_declare< 0x1bcb8d48, 0x10c1, 0x4b3e, 0x9b, 0xfa, 0x06, 0x23, 0x61, 0x81, 0xd3, 0xe1 > mi::base::IInterface

Public Member Functions

virtual const char * get_projector () const =0
 Returns the name of the projector, or NULL if no projector is set. More...
 
virtual Sint32 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...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x5f07ad1a, 0xbdc8, 0x4dfc, 0xb7, 0xdc, 0x7e, 0x1d, 0x2c, 0x87, 0xfa, 0x9d, neuraylib::IScene_element >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
neuraylib::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< 0x5f07ad1a, 0xbdc8, 0x4dfc, 0xb7, 0xdc, 0x7e, 0x1d, 0x2c, 0x87, 0xfa, 0x9d, neuraylib::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

Projectors are functions that generate texture coordinates for a particular texture space.

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

Member Function Documentation

virtual const char* mi::neuraylib::IProjector::get_projector ( ) const
pure virtual

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

virtual Uint32 mi::neuraylib::IProjector::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 Sint32 mi::neuraylib::IProjector::set_projector ( const char *  name)
pure virtual

Sets the projector.

This is the actual projector, i.e., the MDL function call that represents the mapping.

Parameters
nameThe 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 this DB element because it is in a more private scope than the DB element.
  • -4: The projector does not have the correct type mi::neuraylib::IFunction_call.
  • -5: The projector does not have the correct return type "::base::texture_coordinate_info".
virtual void mi::neuraylib::IProjector::set_texture_space ( Uint32  index)
pure virtual

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