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

MESH_EdgesDrawer.h

Go to the documentation of this file.
00001 #ifndef X3DTK_MESH_EDGESDRAWER_H
00002 #define X3DTK_MESH_EDGESDRAWER_H
00003 
00004 #include "MESH_EdgesDrawerStateVariables.h"
00005 #include "DFSGraphTraversal.h"
00006 #include "MESH_EdgesDrawerCoreVisitor.h"
00007 #include "MESH_SceneGraphTypes.h"
00008 #include "MESH_Mesh.h"
00009 #include "X3DOnePassProcessor.h"
00010 #include "MESH_MeshData.h"
00011 
00012 namespace X3DTK {
00013 namespace MESH {
00014 
00021 template<class MData, class VData, class EData, class FData, bool readOnly>
00022 class EdgesDrawer : public X3DOnePassProcessor
00023 {
00024 public:
00026   EdgesDrawer();
00028   virtual ~EdgesDrawer();
00029  
00031   void draw(X3DNode *N, bool selection = false);
00032   
00033   // Get ith Mesh of the scene.
00034   inline Mesh<MData, VData, EData, FData, readOnly> *getMesh(int i) const;
00035   // Gets stored transformation matrix associated with a given Mesh.
00036   inline const SFMatrix34f &getMatrix(int i) const;
00037   
00038 protected:
00039   EdgesDrawerStateVariables<MData, VData, EData, FData, readOnly> *stateVariables;
00040 };
00041 
00043 typedef EdgesDrawer<MeshData, VertexData, EdgeData, FaceData, true> DefEdgesDrawer;
00044 
00045 }
00046 }
00047 
00048 #include "MESH_EdgesDrawer.inl"
00049 
00050 #endif
00051 

Generated on Wed Apr 7 12:15:20 2004 for X3DToolKit by doxygen 1.3.3