Salome HOME
Update copyright information
[modules/geom.git] / src / OBJECT / GEOM_VertexSource.h
1 #ifndef GEOM_VERTEXSOURCE_H 
2 #define GEOM_VERTEXSOURCE_H 
3  
4 #include "GEOM_DeviceActor.h" 
5  
6 #include <TopoDS_Vertex.hxx> 
7 #include <NCollection_Set.hxx> 
8  
9 typedef NCollection_Set<TopoDS_Vertex> TVertexSet; 
10  
11 #include <vtkPolyDataSource.h> 
12  
13  
14 class VTK_EXPORT GEOM_VertexSource: public vtkPolyDataSource 
15
16 public: 
17   vtkTypeMacro(GEOM_VertexSource,vtkPolyDataSource); 
18   static GEOM_VertexSource* New(); 
19  
20   void AddVertex(const TopoDS_Vertex& theVertex); 
21   void Clear(){ myVertexSet.Clear();} 
22  
23   static  
24   void OCC2VTK(const TopoDS_Vertex& theVertex,  
25                vtkPolyData* thePolyData, 
26                vtkPoints* thePts); 
27  
28 protected: 
29   TVertexSet myVertexSet; 
30  
31   void Execute(); 
32  
33   GEOM_VertexSource(); 
34   ~GEOM_VertexSource(); 
35  
36 private: 
37   // Not implememnted 
38   GEOM_VertexSource(const GEOM_VertexSource&); 
39   void operator=(const GEOM_VertexSource&); 
40 }; 
41  
42  
43 #endif //GEOM_VERTEXSOURCE_H