List of all members.
Public Member Functions |
| virtual MCCOMErr MCCOMAPI | SetName (const TMCString &name)=0 |
| virtual MCCOMErr MCCOMAPI | GetName (TMCString &name)=0 |
| virtual uint32 MCCOMAPI | GetInstancesCount ()=0 |
| virtual void MCCOMAPI | GetInstanceArray (TMCCountedPtrArray< I3DShInstance > &instances)=0 |
| virtual void MCCOMAPI | GetInstanceArray (TMCCountedPtrArray< I3DShTreeElement > &instances)=0 |
| virtual uint32 MCCOMAPI | GetUVSpaceCount ()=0 |
| virtual MCCOMErr MCCOMAPI | GetUVSpace (uint32 uvSpaceID, UVSpaceInfo *uvSpaceInfo)=0 |
| virtual boolean MCCOMAPI | CanRenameUVSpace ()=0 |
| virtual MCCOMErr MCCOMAPI | RenameUVSpace (uint32 uvSpaceID, const TMCString &name)=0 |
| virtual void MCCOMAPI | GetScene (I3DShScene **scene)=0 |
| virtual boolean MCCOMAPI | IsInfiniteObject ()=0 |
| virtual void MCCOMAPI | GetBoundingBox (TBBox3D &bbox, boolean rendering=true)=0 |
| virtual void MCCOMAPI | GetFacetBoundingBox (TBBox3D &bbox, const TMatrix33 &mappingTransform, void *listener, uint32 matrixChangedPhase)=0 |
| virtual MCCOMErr MCCOMAPI | Clone (I3DShObject **clone, ECloneMode cloneMode) const =0 |
| virtual int32 MCCOMAPI | GetEditor ()=0 |
| virtual int32 MCCOMAPI | GetObjectID ()=0 |
| virtual boolean MCCOMAPI | IsExcludedFromTripleBuffer ()=0 |
| virtual void MCCOMAPI | GetPreviewObject (I3DShMasterShader *masterShader, I3DShObject **object, I3DShTreeElement **previewTree, I3DShTreeElement **additionnalChildInstance)=0 |
| virtual int32 MCCOMAPI | GetAllInstancesCount ()=0 |
| virtual I3DShInstance *MCCOMAPI | GetInstanceByIndex (uint32 inIndex)=0 |
| virtual I3DShScene *MCCOMAPI | GetSceneNoAddRef ()=0 |
| | Returns the scene that contains this object.
|
| virtual I3DShMaster *MCCOMAPI | GetThisMaster ()=0 |
| virtual MCCOMErr MCCOMAPI | GetApproximateBoundingBox (TBBox3D &bbox)=0 |
| | Returns an approximation of the bounding box.
|
| virtual boolean MCCOMAPI | ShouldDeleteWithInstance (I3DShInstance *inInstance)=0 |
| virtual boolean MCCOMAPI | IsReferencedByThisSubTree (I3DShTreeElement *subTree, I3DShScene *scene)=0 |
Detailed Description
I3DShObject stores the geometry of the objects (master objects) in a scene.
Master Objects are kept in a list in the scene (the Objects List), and can be instanciated as many times as needed in a scene.
There are two types of Master Objects: Primitives and Master Groups. See I3DShPrimitive and I3DMasterGroup.
Other supported interfaces:
Member Function Documentation
| virtual boolean MCCOMAPI I3DShObject::CanRenameUVSpace |
( |
|
) |
[pure virtual] |
Returns true if the primitive can rename uv spaces (ie. implements RenameUVSpace()).
Creates a copy of the object.
- Parameters:
-
| clone | A pointer to the new copy of the object. |
| cloneMode | The clone mode (see ECloneMode) |
| virtual int32 MCCOMAPI I3DShObject::GetAllInstancesCount |
( |
|
) |
[pure virtual] |
Returns the total number of instances of this master object NOTE: Some instances may not be in the same scene than the master object... (Use this and GetInstanceByIndex when you need to avoid the memory allocation(s) caused by GetInstanceArray)
| virtual MCCOMErr MCCOMAPI I3DShObject::GetApproximateBoundingBox |
( |
TBBox3D & |
bbox |
) |
[pure virtual] |
Returns an approximation of the bounding box.
| virtual void MCCOMAPI I3DShObject::GetBoundingBox |
( |
TBBox3D & |
bbox, |
|
|
boolean |
rendering = true | |
|
) |
| | [pure virtual] |
Gets the bounding box of the object (in local coordinates)
- Parameters:
-
| bbox | A struct where the result is stored. |
| rendering | Need a bbox for rendering (more precise) |
| virtual int32 MCCOMAPI I3DShObject::GetEditor |
( |
|
) |
[pure virtual] |
Returns the class ID of the Editor (i.e. the module) capable of editing this object in the Modeling room
| virtual void MCCOMAPI I3DShObject::GetFacetBoundingBox |
( |
TBBox3D & |
bbox, |
|
|
const TMatrix33 & |
mappingTransform, |
|
|
void * |
listener, |
|
|
uint32 |
matrixChangedPhase | |
|
) |
| | [pure virtual] |
The bounding box calculated here fit exactly the facets of the object in a given direction. The FacetBounding boxes are cached inside the Object because it can take a long time to calculate. We added a listener here to accelerate the Get. So we don't have to compare mappingTransform (TMatrix33) in the look-up table. A last hit is provide inside the GetFacetBoundingBox method to make the Get on same listener very fast. Each time the BoudingBox of the object changed , the list is flushed.
- Parameters:
-
| bbox | The bounding box that is returned. |
| mappingTransform | The transform of the bounding box |
| listener | A listener |
| matrixChangedPhase | Each time you ask with a new mappingTransform, increment the matrixChangedPhase. |
Returns an array of all the instances that points to that class.
- Parameters:
-
| instances | An array of instances. |
Builds the array of all the instances of this object. The array should be empty when the function is called.
- Parameters:
-
| instances | An array to store the list of instances. |
| virtual I3DShInstance* MCCOMAPI I3DShObject::GetInstanceByIndex |
( |
uint32 |
inIndex |
) |
[pure virtual] |
Returns the inIndex(th) instance of this master object. NOTE: Some instances may not be in the same scene than the master object... (Use this and GetAllInstancesCount when you need to avoid the memory allocation(s) caused by GetInstanceArray)
| virtual uint32 MCCOMAPI I3DShObject::GetInstancesCount |
( |
|
) |
[pure virtual] |
Returns the name of the master object.
- Parameters:
-
| name | The name of the master object. |
| virtual int32 MCCOMAPI I3DShObject::GetObjectID |
( |
|
) |
[pure virtual] |
Returns the ID of the object. In the case of a Primitive, it will be its Class ID. For a Master Group, it is 'sc '
Return the Master object to preview if different from main one. Return NULL if it is the same,
- Parameters:
-
| masterShader | the master shader being previewed |
| object | the object to use to preview the shader |
| previewTree | a tree to set the transform of the preview object (only the transform will be used) |
| additionnalChild | the master object can also add an instance that will be used for the preview as well, puting it as child of the previewed object |
| virtual void MCCOMAPI I3DShObject::GetScene |
( |
I3DShScene ** |
scene |
) |
[pure virtual] |
Returns the scene that contains this object.
- Parameters:
-
| scene | A pointer to the scene. |
| virtual I3DShScene* MCCOMAPI I3DShObject::GetSceneNoAddRef |
( |
|
) |
[pure virtual] |
Returns the scene that contains this object.
| virtual I3DShMaster* MCCOMAPI I3DShObject::GetThisMaster |
( |
|
) |
[pure virtual] |
Gets information on a specific UV Space
- Parameters:
-
| uvSpaceID | The index (0 based) of the shading domaine (= uv space). |
| uvSpaceInfo | A pointer to a struct that will contain the definition of the shading domain. |
| virtual uint32 MCCOMAPI I3DShObject::GetUVSpaceCount |
( |
|
) |
[pure virtual] |
Return the number of UV spaces for this object. If 0 is returned only projection mapping can be performed on the object
| virtual boolean MCCOMAPI I3DShObject::IsExcludedFromTripleBuffer |
( |
|
) |
[pure virtual] |
Returns true if its instances should be excluded from the triple buffer (eg used for skinning)
| virtual boolean MCCOMAPI I3DShObject::IsInfiniteObject |
( |
|
) |
[pure virtual] |
Returns TRUE if the object is infinite (like the infinite plane)
Return true if the given sub tree keeps a reference to that master object
- Parameters:
-
| subTree | The sub tree that might reference that master object |
| scene | The scene that contains that sub tree. |
Rename a particular uvSpace (= shading domain).
- Parameters:
-
| uvSpaceID | The ID of the uvspace (0 based index) |
| name | The new name of the uvspace. |
| virtual MCCOMErr MCCOMAPI I3DShObject::SetName |
( |
const TMCString & |
name |
) |
[pure virtual] |
Sets the name of a master object. Note that you should not call this method once the object is inserted in a scene because it does not garantee the unicity of the name. If you want to change the name of a Master Object once it is inserted in a scene, you should call: I3DShScene::Rename3DObject().
- Parameters:
-
| name | The new name of the master object. |
| virtual boolean MCCOMAPI I3DShObject::ShouldDeleteWithInstance |
( |
I3DShInstance * |
inInstance |
) |
[pure virtual] |
Tells if the master should be deleted when the user deletes the given instance
- Parameters:
-
| inInstance | The instance that is being deleted |
The documentation for this struct was generated from the following file: