Public Types | Public Member Functions

OpenMesh::TriMeshT< Kernel > Class Template Reference

Base type for a triangle mesh. More...

#include <OpenMesh/Mesh/TriMeshT.hh>

Inheritance diagram for OpenMesh::TriMeshT< Kernel >:
Inheritance graph
[legend]
Collaboration diagram for OpenMesh::TriMeshT< Kernel >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef TriMeshT< Kernel > This
 Self type. Used to specify iterators/circulators.
typedef PolyMeshT< Kernel > PolyMesh
typedef PolyMesh::Scalar Scalar
 Scalar type.
typedef PolyMesh::Point Point
 Coordinate type.
typedef PolyMesh::Normal Normal
 Normal type.
typedef PolyMesh::Color Color
 Color type.
typedef PolyMesh::TexCoord1D TexCoord1D
 TexCoord1D type.
typedef PolyMesh::TexCoord2D TexCoord2D
 TexCoord2D type.
typedef PolyMesh::TexCoord3D TexCoord3D
 TexCoord3D type.
typedef PolyMesh::Vertex Vertex
 Vertex type.
typedef PolyMesh::Halfedge Halfedge
 Halfedge type.
typedef PolyMesh::Edge Edge
 Edge type.
typedef PolyMesh::Face Face
 Face type.
typedef PolyMesh::VertexHandle VertexHandle
 Handle for referencing the corresponding item.
typedef PolyMesh::HalfedgeHandle HalfedgeHandle
typedef PolyMesh::EdgeHandle EdgeHandle
typedef PolyMesh::FaceHandle FaceHandle
typedef PolyMesh::VertexIter VertexIter
typedef PolyMesh::ConstVertexIter ConstVertexIter
typedef PolyMesh::EdgeIter EdgeIter
typedef PolyMesh::ConstEdgeIter ConstEdgeIter
typedef PolyMesh::FaceIter FaceIter
typedef PolyMesh::ConstFaceIter ConstFaceIter
typedef PolyMesh::VertexVertexIter VertexVertexIter
 Circulator.
typedef
PolyMesh::VertexOHalfedgeIter 
VertexOHalfedgeIter
 Circulator.
typedef
PolyMesh::VertexIHalfedgeIter 
VertexIHalfedgeIter
 Circulator.
typedef PolyMesh::VertexEdgeIter VertexEdgeIter
 Circulator.
typedef PolyMesh::VertexFaceIter VertexFaceIter
 Circulator.
typedef PolyMesh::FaceVertexIter FaceVertexIter
 Circulator.
typedef PolyMesh::FaceHalfedgeIter FaceHalfedgeIter
 Circulator.
typedef PolyMesh::FaceEdgeIter FaceEdgeIter
 Circulator.
typedef PolyMesh::FaceFaceIter FaceFaceIter
 Circulator.
typedef
PolyMesh::ConstVertexVertexIter 
ConstVertexVertexIter
 Circulator.
typedef
PolyMesh::ConstVertexOHalfedgeIter 
ConstVertexOHalfedgeIter
 Circulator.
typedef
PolyMesh::ConstVertexIHalfedgeIter 
ConstVertexIHalfedgeIter
 Circulator.
typedef
PolyMesh::ConstVertexEdgeIter 
ConstVertexEdgeIter
 Circulator.
typedef
PolyMesh::ConstVertexFaceIter 
ConstVertexFaceIter
 Circulator.
typedef
PolyMesh::ConstFaceVertexIter 
ConstFaceVertexIter
 Circulator.
typedef
PolyMesh::ConstFaceHalfedgeIter 
ConstFaceHalfedgeIter
 Circulator.
typedef PolyMesh::ConstFaceEdgeIter ConstFaceEdgeIter
 Circulator.
typedef PolyMesh::ConstFaceFaceIter ConstFaceFaceIter
 Circulator.

Public Member Functions

 TriMeshT ()
 Default constructor.
virtual ~TriMeshT ()
 Destructor.
HalfedgeHandle vertex_split (Point _v0_point, VertexHandle _v1, VertexHandle _vl, VertexHandle _vr)
 Vertex Split: inverse operation to collapse().
HalfedgeHandle vertex_split (VertexHandle _v0, VertexHandle _v1, VertexHandle _vl, VertexHandle _vr)
void split (EdgeHandle _eh, const Point &_p)
 Edge split (= 2-to-4 split).
void split (EdgeHandle _eh, VertexHandle _vh)
void split (FaceHandle _fh, const Point &_p)
 Face split (= 1-to-3 split, calls corresponding PolyMeshT function).
void split (FaceHandle _fh, VertexHandle _vh)
Normal vector computation

Normal calc_face_normal (FaceHandle _fh) const
 Calculate normal vector for face _fh (specialized for TriMesh).



enum  { IsPolyMesh = 0 }
 

Determine whether this is a PolyMeshT or TriMeshT ( This function does not check the per face vertex count! It only checks if the datatype is PolyMeshT or TriMeshT ).


enum  { IsTriMesh = 1 }
 

Determine whether this is a PolyMeshT or TriMeshT ( This function does not check the per face vertex count! It only checks if the datatype is PolyMeshT or TriMeshT ).


static bool is_polymesh ()
 Determine whether this is a PolyMeshT or TriMeshT ( This function does not check the per face vertex count! It only checks if the datatype is PolyMeshT or TriMeshT ).
static bool is_trimesh ()
 Determine whether this is a PolyMeshT or TriMeshT ( This function does not check the per face vertex count! It only checks if the datatype is PolyMeshT or TriMeshT ).

Detailed Description

template<class Kernel>
class OpenMesh::TriMeshT< Kernel >

Base type for a triangle mesh.

Base type for a triangle mesh, parameterized by a mesh kernel. The mesh inherits all methods from the kernel class and the more general polygonal mesh PolyMeshT. Therefore it provides the same types for items, handles, iterators and so on.

Parameters:
Kernel,: template argument for the mesh kernel
Note:
You should use the predefined mesh-kernel combinations in Predefined Mesh Types
See also:
Specifying your MyMesh
OpenMesh::PolyMeshT

Member Function Documentation

template<class Kernel >
TriMeshT< Kernel >::Normal OpenMesh::TriMeshT< Kernel >::calc_face_normal ( FaceHandle  _fh  )  const [virtual]

Calculate normal vector for face _fh (specialized for TriMesh).

Reimplemented from OpenMesh::PolyMeshT< Kernel >.


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

acg pic Project OpenMesh, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .