I3DExInstancePrimitive Struct Reference
[External Interfaces]

Inheritance diagram for I3DExInstancePrimitive:
IMCUnknown

List of all members.

Public Member Functions

virtual uint32 MCCOMAPI GetObjectNumber ()=0
virtual void MCCOMAPI GetInstanceMesh (uint32 instanceKind, FacetMesh **mesh)=0
virtual void MCCOMAPI GetInstanceList (uint32 instanceKind, TInstanceList **instanceList)=0
virtual void MCCOMAPI GetInstanceLink (uint32 instanceKind, I3DShInstance **link)=0
virtual uint32 MCCOMAPI GetInstanceKindFromInstance (I3DShInstance *link)=0
virtual boolean MCCOMAPI AllwaysRender ()=0

Detailed Description

A primitive (see I3DExGeometricPrimitive) can derive from this interface when it is composed of multiple identical parts. For example a tree in which leaves are stored as instances or Generators that duplicate existing (linked) instances. This allow storing the geometry of each object type only once. Note that you will either need to provide your own Ray tracing implementation for this primitive (see IRaytracablePrimitive) or use the Instance link .


Member Function Documentation

virtual boolean MCCOMAPI I3DExInstancePrimitive::AllwaysRender (  )  [pure virtual]

True if the instances should be displayed even when not in final renderer

virtual uint32 MCCOMAPI I3DExInstancePrimitive::GetInstanceKindFromInstance ( I3DShInstance link  )  [pure virtual]

Return the number of an object given the instance

Parameters:
link A pointer to the instance that identify the object
Returns:
A 0-based index that identifies the object
virtual void MCCOMAPI I3DExInstancePrimitive::GetInstanceLink ( uint32  instanceKind,
I3DShInstance **  link 
) [pure virtual]

Returns the link to the instance for a given object.

Parameters:
instanceKind A 0-based index that identifies the object (the number of objects is defined by GetObjectNumber())
link A pointer to the instance that is returned.
virtual void MCCOMAPI I3DExInstancePrimitive::GetInstanceList ( uint32  instanceKind,
TInstanceList **  instanceList 
) [pure virtual]

Returns the list of instances for a given object

Parameters:
instanceKind A 0-based index that identifies the object (the number of objects is defined by GetObjectNumber())
instanceList A pointer (counted) to the instance list that is returned.
virtual void MCCOMAPI I3DExInstancePrimitive::GetInstanceMesh ( uint32  instanceKind,
FacetMesh **  mesh 
) [pure virtual]

Returns the mesh for a given object.

Parameters:
instanceKind A 0-based index that identifies the object (the number of objects is defined by GetObjectNumber())
mesh A pointer to the facet mesh that is returned.
virtual uint32 MCCOMAPI I3DExInstancePrimitive::GetObjectNumber (  )  [pure virtual]

Returns the number of "template" objects being instanciated in the primitive


The documentation for this struct was generated from the following file:
Generated on Mon Apr 26 22:47:37 2010 for Carrara SDK Doc by  doxygen 1.6.3