FCDGeometryInstance Class Reference

A COLLADA geometry instance. More...

#include <FCDGeometryInstance.h>

Inheritance diagram for FCDGeometryInstance:

FCDEntityInstance FCDObject FUTracker FUParameterizable FUTrackable FUObject FCDControllerInstance List of all members.

Public Member Functions

virtual ~FCDGeometryInstance ()
 Destructor.
virtual Type GetType () const
 Retrieves the entity instance class type.
size_t GetEffectParameterCount () const
 Retrieves the number of local effect parameters.
FCDEffectParameterGetEffectParameter (size_t index)
 Retrieves a given local effect parameter.
const FCDEffectParameterGetEffectParameter (size_t index) const
FCDEffectParameterAddEffectParameter (uint32 type)
 Adds a local effect parameter to the local list.
FCDMaterialInstanceFindMaterialInstance (const fchar *semantic)
 Retrieves a material instance bound to the given material semantic.
FCDMaterialInstanceFindMaterialInstance (const fstring &semantic)
 See above.
const FCDMaterialInstanceFindMaterialInstance (const fchar *semantic) const
 See above.
const FCDMaterialInstanceFindMaterialInstance (const fstring &semantic) const
 See above.
size_t GetMaterialInstanceCount () const
 Retrieves the number of material instances.
FCDMaterialInstanceGetMaterialInstance (size_t index)
 Retrieves a material instance.
const FCDMaterialInstanceGetMaterialInstance (size_t index) const
 See above.
 DEPRECATED (3.05A, GetMaterialInstance) inline FCDMaterialInstance **GetMaterialInstances()
 Retrieves the material instances.
 DEPRECATED (3.05A, GetMaterialInstance) inline const FCDMaterialInstance **GetMaterialInstances() const
 See above.
FCDMaterialInstanceAddMaterialInstance ()
 Adds an empty material instance to the geometry.
FCDMaterialInstanceAddMaterialInstance (FCDMaterial *material, FCDGeometryPolygons *polygons)
 Binds a material with a polygons set for this geometry instance.
FCDMaterialInstanceAddMaterialInstance (FCDMaterial *material, const fchar *semantic)
 Binds a material to a material semantic token.
FCDMaterialInstanceAddMaterialInstance (FCDMaterial *material, const fstring &semantic)
 See above.
virtual FCDEntityInstanceClone (FCDEntityInstance *clone=NULL) const
 Clones the geometry instance.
virtual void CleanSubId (FUSUniqueStringMap *parentStringMap)
 [INTERNAL] Cleans up the sub identifiers.

Protected Member Functions

 FCDGeometryInstance (FCDocument *document, FCDSceneNode *parent, FCDEntity::Type entityType=FCDEntity::GEOMETRY)
 Constructor.

Friends

class FCDEntityInstanceFactory

Detailed Description

A COLLADA geometry instance.

It is during the instantiation of geometries that the mesh polygons are attached to actual materials.


Constructor & Destructor Documentation

FCDGeometryInstance::FCDGeometryInstance FCDocument document,
FCDSceneNode parent,
FCDEntity::Type  entityType = FCDEntity::GEOMETRY
[protected]
 

Constructor.

Parameters:
document The FCollada document that owns this instance.
parent The visual scene node that contains this instance. This pointer will be NULL for instances that are not directly under a visual scene node.
entityType The type of entity to instantiate.


Member Function Documentation

FCDEffectParameter* FCDGeometryInstance::AddEffectParameter uint32  type  ) 
 

Adds a local effect parameter to the local list.

See also:
FCDEffectParameter::Type
Parameters:
type The value type of the effect parameter to create.
Returns:
The new local effect parameter.

FCDMaterialInstance* FCDGeometryInstance::AddMaterialInstance FCDMaterial material,
const fchar *  semantic
 

Binds a material to a material semantic token.

No verification is done to ensure that the material semantic token is used within the instanced geometry or that a material is not already bound to this token.

Parameters:
material A material.
semantic A material semantic token.
Returns:
The new material instance.

FCDMaterialInstance* FCDGeometryInstance::AddMaterialInstance FCDMaterial material,
FCDGeometryPolygons polygons
 

Binds a material with a polygons set for this geometry instance.

No verification is done to ensure that the polygons set is not already bound to another material.

Parameters:
material A material.
polygons A polygons set that belongs to the instanced geometry.
Returns:
The new material instance.

FCDMaterialInstance* FCDGeometryInstance::AddMaterialInstance  ) 
 

Adds an empty material instance to the geometry.

This new material instance will be unbound.

Returns:
The empty material instance.

virtual void FCDGeometryInstance::CleanSubId FUSUniqueStringMap parentStringMap  )  [virtual]
 

[INTERNAL] Cleans up the sub identifiers.

The sub identifiers must be unique with respect to its parent. This method corrects the sub ids if there are conflicts.

Parameters:
parentStringMap The string map from the parent of this instance in which the sub ids must be unique.

Reimplemented from FCDEntityInstance.

virtual FCDEntityInstance* FCDGeometryInstance::Clone FCDEntityInstance clone = NULL  )  const [virtual]
 

Clones the geometry instance.

Parameters:
clone The geometry instance to become the clone. If this pointer is NULL, a new geometry instance will be created.
Returns:
The cloned geometry instance.

Reimplemented from FCDEntityInstance.

Reimplemented in FCDControllerInstance.

FCDGeometryInstance::DEPRECATED 3.  05A,
GetMaterialInstance 
[inline]
 

Retrieves the material instances.

Returns:
The list of material instances.

FCDMaterialInstance* FCDGeometryInstance::FindMaterialInstance const fchar *  semantic  )  [inline]
 

Retrieves a material instance bound to the given material semantic.

Parameters:
semantic A material semantic.
Returns:
The material instance bound to the given material semantic. This pointer will be NULL if the material semantic has no material instance binding to it.

FCDEffectParameter* FCDGeometryInstance::GetEffectParameter size_t  index  )  [inline]
 

Retrieves a given local effect parameter.

Parameters:
index An index.
Returns:
The local effect parameter at the given index.

size_t FCDGeometryInstance::GetEffectParameterCount  )  const [inline]
 

Retrieves the number of local effect parameters.

Returns:
The number of local effect parameters.

FCDMaterialInstance* FCDGeometryInstance::GetMaterialInstance size_t  index  )  [inline]
 

Retrieves a material instance.

Parameters:
index The index of the material instance.
Returns:
The material instance at the given index.

size_t FCDGeometryInstance::GetMaterialInstanceCount  )  const [inline]
 

Retrieves the number of material instances.

Returns:
The number of material instances.

virtual Type FCDGeometryInstance::GetType  )  const [inline, virtual]
 

Retrieves the entity instance class type.

This is used to determine the up-class for the entity instance object.

Deprecated:
Instead use: FCDEntityInstance::HasType(FCDGeometryInstance::GetClassType())
Returns:
The class type: GEOMETRY.

Reimplemented from FCDEntityInstance.

Reimplemented in FCDControllerInstance.


The documentation for this class was generated from the following file:
Generated on Thu Feb 14 16:58:38 2008 for FCollada by  doxygen 1.4.6-NO