IGS_Mesh Class Reference

#include <basic/geometry/IGS/IGS_Mesh.h>

Inherits IGS_MeshBase.

Inheritance diagram for IGS_Mesh:

Inheritance graph
[legend]
Collaboration diagram for IGS_Mesh:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 IGS_Mesh ()
int AddEdge (const int v0, const int v1)
int AddFacet (const MeshFacet &facet)
void ClearSilhouetteEdges () const
void GetBoundingBox (double &xmin, double &xmax, double &ymin, double &ymax, double &zmin, double &zmax) const
virtual void Prepare (const IGS_Controller &controller)
virtual void Render (const IGS_Controller &controller) const

Public Attributes

std::vector< MeshEdgeedges
std::vector< MeshFacetfacets

Protected Member Functions

Vector4 ComputeNormalForFacet (const int facetNum) const

Detailed Description

Definition at line 36 of file IGS_Mesh.h.


Constructor & Destructor Documentation

IGS_Mesh::IGS_Mesh  ) 
 

Definition at line 14 of file IGS_Mesh.cpp.


Member Function Documentation

int IGS_Mesh::AddEdge const int  v0,
const int  v1
 

Definition at line 23 of file IGS_Mesh.cpp.

References edges, MeshEdge::v0, and MeshEdge::v1.

int IGS_Mesh::AddFacet const MeshFacet facet  ) 
 

Definition at line 53 of file IGS_Mesh.cpp.

References facets.

Referenced by VrmlIndexedFaceSet::RenderToIGS().

void IGS_Mesh::ClearSilhouetteEdges  )  const
 

Definition at line 64 of file IGS_Mesh.cpp.

References edges.

Referenced by Render().

Vector4 IGS_Mesh::ComputeNormalForFacet const int  facetNum  )  const [protected]
 

Definition at line 80 of file IGS_Mesh.cpp.

References facets, IGS_MeshBase::GetVertex(), MeshFacet::GetVertexNum(), IGS_MeshBase::m_Vertexes, Vector4::Magnitude(), and Vector4::Normalize().

Here is the call graph for this function:

void IGS_Mesh::GetBoundingBox double &  xmin,
double &  xmax,
double &  ymin,
double &  ymax,
double &  zmin,
double &  zmax
const
 

Definition at line 111 of file IGS_Mesh.cpp.

References IGS_MeshBase::GetVertex(), and IGS_MeshBase::m_Vertexes.

Here is the call graph for this function:

void IGS_Mesh::Prepare const IGS_Controller controller  )  [virtual]
 

Reimplemented from IGS_Object.

Definition at line 139 of file IGS_Mesh.cpp.

References IGS_MeshBase::AddNormal(), MeshFacet::AddNormalIndex(), MeshFacet::ClearNormals(), facets, IGS_Object::PreparationComplete(), IGS_Object::Prepare(), and MeshFacet::Size().

Here is the call graph for this function:

void IGS_Mesh::Render const IGS_Controller controller  )  const [virtual]
 

Implements IGS_Object.

Definition at line 192 of file IGS_Mesh.cpp.

References ClearSilhouetteEdges(), Vector4::Dot(), facets, IGS_Controller::GetCameraDirection(), IGS_MeshBase::GetNormal(), IGS_MeshBase::m_Normals, IGS_Controller::SettingRenderNormals(), IGS_Controller::SettingRenderSilhouettes(), Matrix4x4::SetValues(), and Matrix4x4::Transpose().

Here is the call graph for this function:


Member Data Documentation

std::vector< MeshEdge > IGS_Mesh::edges
 

Definition at line 49 of file IGS_Mesh.h.

Referenced by AddEdge(), ClearSilhouetteEdges(), MeshFacet::MarkBackFacing(), and MeshFacet::MarkFrontFacing().

std::vector< MeshFacet > IGS_Mesh::facets
 

Definition at line 50 of file IGS_Mesh.h.

Referenced by AddFacet(), ComputeNormalForFacet(), IGS_MeshTri::IGS_MeshTri(), Prepare(), and Render().


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 21:49:11 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO