- Cal3D 0.9 API Reference -

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

# CalCoreSubmesh Class Reference

The core submesh class. More...

`#include <coresubmesh.h>`

List of all members.

## Public Member Functions

| CalCoreSubmesh ()
| Constructs the core submesh instance.
virtual | ~CalCoreSubmesh ()
| Destructs the core submesh instance.
bool | create ()
| Creates the core submesh instance.
void | destroy ()
| Destroys the core submesh instance.
int | getCoreMaterialThreadId ()
| Returns the ID of the core material thread.
int | getFaceCount ()
| Returns the number of faces.
int | getLodCount ()
| Returns the number of LOD steps.
int | getSpringCount ()
| Returns the number of springs.
std::vector< Face > & | getVectorFace ()
| Returns the face vector.
std::vector< PhysicalProperty > & | getVectorPhysicalProperty ()
| Returns the physical property vector.
std::vector< Spring > & | getVectorSpring ()
| Returns the spring vector.
std::vector< std::vector< TangentSpace > > & | getVectorVectorTangentSpace ()
| Returns the tangent space vector-vector.
std::vector< std::vector< TextureCoordinate > > & | getVectorVectorTextureCoordinate ()
| Returns the texture coordinate vector-vector.
std::vector< Vertex > & | getVectorVertex ()
| Returns the vertex vector.
int | getVertexCount ()
| Returns the number of vertices.
bool | isTangentsEnabled (int mapId)
| Returns true if tangent vectors are enabled.
bool | enableTangents (int mapId, bool enabled)
| Enables (and calculates) or disables the storage of tangent spaces.
bool | reserve (int vertexCount, int textureCoordinateCount, int faceCount, int springCount)
| Reserves memory for the vertices, faces and texture coordinates.
void | setCoreMaterialThreadId (int coreMaterialThreadId)
| Sets the ID of the core material thread.
bool | setFace (int faceId, const Face &face)
| Sets a specified face.
void | setLodCount (int lodCount)
| Sets the number of LOD steps.
bool | setPhysicalProperty (int vertexId, const PhysicalProperty &physicalProperty)
| Sets a specified physical property.
bool | setSpring (int springId, const Spring &spring)
| Sets a specified spring.
bool | setTangentSpace (int vertexId, int textureCoordinateId, const CalVector &tangent, float crossFactor)
| Sets the tangent vector associated with a specified texture coordinate pair.
bool | setTextureCoordinate (int vertexId, int textureCoordinateId, const TextureCoordinate &textureCoordinate)
| Sets a specified texture coordinate.
bool | setVertex (int vertexId, const Vertex &vertex)
| Sets a specified vertex.
int | addCoreSubMorphTarget (CalCoreSubMorphTarget *pCoreSubMorphTarget)
| Adds a core sub morph target.
CalCoreSubMorphTarget * | getCoreSubMorphTarget (int id)
| Provides access to a core sub morph target.
int | getCoreSubMorphTargetCount ()
| Returns the number of core sub morph targets.
std::vector< CalCoreSubMorphTarget * > & | getVectorCoreSubMorphTarget ()
| Returns the core sub morph target vector.

## Protected Member Functions

void | UpdateTangentVector (int v0, int v1, int v2, int channel)
| UpdateTangentVector.

## Protected Attributes

std::vector< Vertex > | m_vectorVertex
std::vector< bool > | m_vectorTangentsEnabled
std::vector< std::vector< TangentSpace > > | m_vectorvectorTangentSpace
std::vector< std::vector< TextureCoordinate > > | m_vectorvectorTextureCoordinate
std::vector< PhysicalProperty > | m_vectorPhysicalProperty
std::vector< Face > | m_vectorFace
std::vector< Spring > | m_vectorSpring
std::vector< CalCoreSubMorphTarget * > | m_vectorCoreSubMorphTarget
int | m_coreMaterialThreadId
int | m_lodCount

## Detailed Description

The core submesh class.

## Constructor & Destructor Documentation

CalCoreSubmesh::CalCoreSubmesh | ( |  | ) |

| Constructs the core submesh instance. This function is the default constructor of the core submesh instance.

CalCoreSubmesh::~CalCoreSubmesh | ( |  | ) | `[virtual]`

| Destructs the core submesh instance. This function is the destructor of the core submesh instance.

## Member Function Documentation

int CalCoreSubmesh::addCoreSubMorphTarget | ( | CalCoreSubMorphTarget * | pCoreSubMorphTarget | ) |

| Adds a core sub morph target. This function adds a core sub morph target to the core sub mesh instance.

Parameters:

  pCoreSubMorphTarget | A pointer to the core sub morph target that should be added.

Returns:
  One of the following values:
  - the assigned sub morph target ID of the added core sub morph target
  - -1 if an error happend

bool CalCoreSubmesh::create | ( |  | ) |

| Creates the core submesh instance. This function creates the core submesh instance.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

void CalCoreSubmesh::destroy | ( |  | ) |

| Destroys the core submesh instance. This function destroys all data stored in the core submesh instance and frees all allocated memory.

bool CalCoreSubmesh::enableTangents | ( | int | mapId,
|  | bool | enabled
| ) |

| Enables (and calculates) or disables the storage of tangent spaces. This function enables or disables the storage of tangent space bases.

int CalCoreSubmesh::getCoreMaterialThreadId | ( |  | ) |

| Returns the ID of the core material thread. This function returns the ID of the core material thread of this core submesh instance.

Returns:
  The ID of the core material thread.

CalCoreSubMorphTarget * CalCoreSubmesh::getCoreSubMorphTarget | ( | int | id | ) |

| Provides access to a core sub morph target. This function returns the core sub morph target with the given ID.

Parameters:

  id | The ID of the core sub morph target that should be returned.

Returns:
  One of the following values:
  - a pointer to the core sub morph target
  - 0 if an error happend

int CalCoreSubmesh::getCoreSubMorphTargetCount | ( |  | ) |

| Returns the number of core sub morph targets. This function returns the number of core sub morph targets in the core sub mesh instance.

Returns:
  The number of core sub morph targets.

int CalCoreSubmesh::getFaceCount | ( |  | ) |

| Returns the number of faces. This function returns the number of faces in the core submesh instance.

Returns:
  The number of faces.

int CalCoreSubmesh::getLodCount | ( |  | ) |

| Returns the number of LOD steps. This function returns the number of LOD steps in the core submesh instance.

Returns:
  The number of LOD steps.

int CalCoreSubmesh::getSpringCount | ( |  | ) |

| Returns the number of springs. This function returns the number of springs in the core submesh instance.

Returns:
  The number of springs.

std::vector< CalCoreSubMorphTarget * > & CalCoreSubmesh::getVectorCoreSubMorphTarget | ( |  | ) |

| Returns the core sub morph target vector. This function returns the vector that contains all core sub morph target of the core submesh instance.

Returns:
  A reference to the core sub morph target vector.

std::vector< CalCoreSubmesh::Face > & CalCoreSubmesh::getVectorFace | ( |  | ) |

| Returns the face vector. This function returns the vector that contains all faces of the core submesh instance.

Returns:
  A reference to the face vector.

std::vector< CalCoreSubmesh::PhysicalProperty > & CalCoreSubmesh::getVectorPhysicalProperty | ( |  | ) |

| Returns the physical property vector. This function returns the vector that contains all physical properties of the core submesh instance.

Returns:
  A reference to the physical property vector.

std::vector< CalCoreSubmesh::Spring > & CalCoreSubmesh::getVectorSpring | ( |  | ) |

| Returns the spring vector. This function returns the vector that contains all springs of the core submesh instance.

Returns:
  A reference to the spring vector.

std::vector< std::vector< CalCoreSubmesh::TangentSpace > > & CalCoreSubmesh::getVectorVectorTangentSpace | ( |  | ) |

| Returns the tangent space vector-vector. This function returns the vector that contains all tangent space bases of the core submesh instance. This vector contains another vector because there can be more than one texture map at each vertex.

Returns:
  A reference to the tangent space vector-vector.

std::vector< std::vector< CalCoreSubmesh::TextureCoordinate > > & CalCoreSubmesh::getVectorVectorTextureCoordinate | ( |  | ) |

| Returns the texture coordinate vector-vector. This function returns the vector that contains all texture coordinate vectors of the core submesh instance. This vector contains another vector because there can be more than one texture map at each vertex.

Returns:
  A reference to the texture coordinate vector-vector.

std::vector< CalCoreSubmesh::Vertex > & CalCoreSubmesh::getVectorVertex | ( |  | ) |

| Returns the vertex vector. This function returns the vector that contains all vertices of the core submesh instance.

Returns:
  A reference to the vertex vector.

int CalCoreSubmesh::getVertexCount | ( |  | ) |

| Returns the number of vertices. This function returns the number of vertices in the core submesh instance.

Returns:
  The number of vertices.

bool CalCoreSubmesh::isTangentsEnabled | ( | int | mapId | ) |

| Returns true if tangent vectors are enabled. This function returns true if the core submesh contains tangent vectors.

Returns:
  True if tangent vectors are enabled.

bool CalCoreSubmesh::reserve | ( | int | vertexCount,
|  | int | textureCoordinateCount,
|  | int | faceCount,
|  | int | springCount
| ) |

| Reserves memory for the vertices, faces and texture coordinates. This function reserves memory for the vertices, faces, texture coordinates and springs of the core submesh instance.

Parameters:

  vertexCount | The number of vertices that this core submesh instance should be able to hold.
  textureCoordinateCount | The number of texture coordinates that this core submesh instance should be able to hold.
  faceCount | The number of faces that this core submesh instance should be able to hold.
  springCount | The number of springs that this core submesh instance should be able to hold.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

void CalCoreSubmesh::setCoreMaterialThreadId | ( | int | coreMaterialThreadId | ) |

| Sets the ID of the core material thread. This function sets the ID of the core material thread of the core submesh instance.

Parameters:

  coreMaterialThreadId | The ID of the core material thread that should be set.

bool CalCoreSubmesh::setFace | ( | int | faceId,
|  | const Face & | face
| ) |

| Sets a specified face. This function sets a specified face in the core submesh instance.

Parameters:

  faceId | The ID of the face.
  face | The face that should be set.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

void CalCoreSubmesh::setLodCount | ( | int | lodCount | ) |

| Sets the number of LOD steps. This function sets the number of LOD steps of the core submesh instance.

Parameters:

  lodCount | The number of LOD steps that should be set.

bool CalCoreSubmesh::setPhysicalProperty | ( | int | vertexId,
|  | const PhysicalProperty & | physicalProperty
| ) |

| Sets a specified physical property. This function sets a specified physical property in the core submesh instance.

Parameters:

  vertexId | The ID of the vertex.
  physicalProperty | The physical property that should be set.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

bool CalCoreSubmesh::setSpring | ( | int | springId,
|  | const Spring & | spring
| ) |

| Sets a specified spring. This function sets a specified spring in the core submesh instance.

Parameters:

  springId | The ID of the spring.
  spring | The spring that should be set.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

bool CalCoreSubmesh::setTangentSpace | ( | int | vertexId,
|  | int | textureCoordinateId,
|  | const CalVector & | tangent,
|  | float | crossFactor
| ) |

| Sets the tangent vector associated with a specified texture coordinate pair. This function sets the tangent vector associated with a specified texture coordinate pair in the core submesh instance.

Parameters:

  vertexId | The ID of the vertex.
  textureCoordinateId | The ID of the texture coordinate channel.
  tangent | The tangent vector that should be stored.
  crossFactor | The cross-product factor that should be stored.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

bool CalCoreSubmesh::setTextureCoordinate | ( | int | vertexId,
|  | int | textureCoordinateId,
|  | const TextureCoordinate & | textureCoordinate
| ) |

| Sets a specified texture coordinate. This function sets a specified texture coordinate in the core submesh instance.

Parameters:

  vertexId | The ID of the vertex.
  textureCoordinateId | The ID of the texture coordinate.
  textureCoordinate | The texture coordinate that should be set.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

bool CalCoreSubmesh::setVertex | ( | int | vertexId,
|  | const Vertex & | vertex
| ) |

| Sets a specified vertex. This function sets a specified vertex in the core submesh instance.

Parameters:

  vertexId | The ID of the vertex.
  vertex | The vertex that should be set.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

The documentation for this class was generated from the following files:

- coresubmesh.h
- coresubmesh.cpp

Generated at Wed Apr 7 16:57:17 2004 by The Cal3D Team with 1.3.6 © 1997-2001 Dimitri van Heesch