FCDGeometry Class Reference
[COLLADA Document Geometry Entity]

A COLLADA geometry entity. More...

#include <FCDGeometry.h>

Inheritance diagram for FCDGeometry:

FCDEntity FCDObjectWithId FCDObject FUParameterizable FUTrackable FUObject List of all members.

Public Member Functions

 FCDGeometry (FCDocument *document)
 Contructor: do not use directly.
virtual ~FCDGeometry ()
 Destructor.
void SetMesh (FCDGeometryMesh *data)
 [INTERNAL] Set geometry information.
void SetSpline (FCDGeometrySpline *data)
virtual Type GetType () const
 Retrieves the entity class type.
bool IsMesh () const
 Retrieves whether the type of this geometry is a mesh.
FCDGeometryMeshGetMesh ()
 Retrieves the mesh information structure for this geometry.
const FCDGeometryMeshGetMesh () const
 See above.
FCDGeometryMeshCreateMesh ()
 Sets the type of this geometry to mesh and creates an empty mesh structure.
bool IsSpline () const
 Retrieves whether the type of this geometry is a spline.
FCDGeometrySplineGetSpline ()
 Retrieves the spline information structure for this geometry.
const FCDGeometrySplineGetSpline () const
 See above.
FCDGeometrySplineCreateSpline ()
 Sets the type of this geometry to spline and creates an empty spline structure.
bool IsPSurface () const
 Retrieves whether the type of this geometry is a parameterized surface.
virtual FCDEntityClone (FCDEntity *clone=NULL, bool cloneChildren=false) const
 Copies the geometry entity into a clone.

Detailed Description

A COLLADA geometry entity.

There are three types of COLLADA geometry entities: meshes, NURBS surfaces and splines. NURBS Surfaces are part of the Premium Build only.*

Meshes are collections of polygons where the vertices always have a position, usually have a normal to define smooth or hard edges and may be colored or textured.

Parameterized surfaces (PSurface) are a list of parameterized patches defined as a sequence of weighted control points that may be associated with two knot vectors and possibly trimming curves to define a 3D surface.

Note: "PSurfaces" are part of the Premium Build only.

Splines are a sequence of control points used to generate a smooth curve.


Constructor & Destructor Documentation

FCDGeometry::FCDGeometry FCDocument document  ) 
 

Contructor: do not use directly.

Create new geometries using the FCDLibrary::AddEntity function.

Parameters:
document The COLLADA document which owns the new geometry entity.


Member Function Documentation

virtual FCDEntity* FCDGeometry::Clone FCDEntity clone = NULL,
bool  cloneChildren = false
const [virtual]
 

Copies the geometry entity into a clone.

The clone may reside in another document.

Parameters:
clone The empty clone. If this pointer is NULL, a new geometry entity will be created and you will need to release the returned pointer manually.
cloneChildren Whether to recursively clone this entity's children.
Returns:
The clone.

Reimplemented from FCDEntity.

FCDGeometryMesh* FCDGeometry::CreateMesh  ) 
 

Sets the type of this geometry to mesh and creates an empty mesh structure.

This function will release any mesh or spline structure that the geometry may already contain

Returns:
The mesh information structure. This pointer will always be valid.

FCDGeometrySpline* FCDGeometry::CreateSpline  ) 
 

Sets the type of this geometry to spline and creates an empty spline structure.

This function will release any mesh or spline structure that the geometry may already contain.

Returns:
The spline information structure. This pointer will always be valid.

FCDGeometryMesh* FCDGeometry::GetMesh  )  [inline]
 

Retrieves the mesh information structure for this geometry.

Verify that this geometry is a mesh using the IsMesh function prior to calling this function.

Returns:
The mesh information structure. This pointer will be NULL when the geometry is a spline or is undefined.

FCDGeometrySpline* FCDGeometry::GetSpline  )  [inline]
 

Retrieves the spline information structure for this geometry.

Verify that this geometry is a spline using the IsSpline function prior to calling this function.

Returns:
The spline information structure. This pointer will be NULL when the geometry is a mesh or is undefined.

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

Retrieves the entity class type.

This function is a part of the FCDEntity interface.

Returns:
The entity class type: GEOMETRY.

Reimplemented from FCDEntity.

bool FCDGeometry::IsMesh  )  const [inline]
 

Retrieves whether the type of this geometry is a mesh.

Returns:
Whether this geometry is a mesh.

bool FCDGeometry::IsPSurface  )  const [inline]
 

Retrieves whether the type of this geometry is a parameterized surface.

Returns:
Whether this geometry is a parameterized surface.

bool FCDGeometry::IsSpline  )  const [inline]
 

Retrieves whether the type of this geometry is a spline.

Returns:
Whether this geometry is a spline.

void FCDGeometry::SetMesh FCDGeometryMesh data  )  [inline]
 

[INTERNAL] Set geometry information.

Parameters:
data The specific geometry data structure.


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