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