Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

X3D_MeshBuilder.h

Go to the documentation of this file.
00001 
00002 //                            X3D_MeshBuilder.h                               //
00004 
00005 #ifndef MESHBUILDER_H
00006 #define MESHBUILDER_H
00007 
00008 #include "MESH_Mesh.h"
00009 #include "MESH_VertexSet.h"
00010 #include "X3D_TemplateMeshBuilder.h"
00011 
00012 #include <iostream>
00013 
00014 namespace X3DTK {
00015 namespace X3D {
00016 
00017 class IndexedFaceSet;
00018 class Coordinate;
00019 
00020 typedef TemplateMeshBuilder<MESH::MeshData, MESH::VertexData, MESH::EdgeData, MESH::FaceData> MeshBuilder;
00021 
00023 
00024 template<>
00025 struct TemplateMeshBuilderGeometryTraits<MESH::MeshData, MESH::VertexData, MESH::EdgeData, MESH::FaceData, IndexedFaceSet>
00026 {
00028   static void init(MESH::TemplateMesh<MESH::MeshData, MESH::VertexData, MESH::EdgeData, MESH::FaceData> *mesh, IndexedFaceSet *I);
00030   static void processNewFace(MESH::TemplateMesh<MESH::MeshData, MESH::VertexData, MESH::EdgeData, MESH::FaceData> *mesh, IndexedFaceSet *I, MESH::SFTemplateFace<MESH::FaceData, MESH::VertexData, MESH::EdgeData> *F);
00032   static void finish(MESH::TemplateMesh<MESH::MeshData, MESH::VertexData, MESH::EdgeData, MESH::FaceData> *mesh, IndexedFaceSet *I);
00033 };
00034 
00036 
00037 template<>
00038 struct TemplateMeshBuilderCoordinateTraits<MESH::VertexData, MESH::EdgeData, MESH::FaceData, Coordinate>
00039 {
00041   static void process(MESH::TemplateVertexSet<MESH::VertexData, MESH::EdgeData, MESH::FaceData> *vertexSet, Coordinate *N);
00042 };
00043 
00044 }
00045 }
00046 
00047 #endif

Generated on Thu Dec 4 13:25:48 2003 for X3DToolKit by doxygen1.2.18