Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef GEOM_FACESOURCE_H
00021 #define GEOM_FACESOURCE_H
00022
00023 #include "OCC2VTK.h"
00024
00025 #include <gp_Pnt.hxx>
00026 #include <TopoDS_Face.hxx>
00027 #include <NCollection_Set.hxx>
00028
00029 typedef NCollection_Set<TopoDS_Face> TFaceSet;
00030
00031 #include <vtkPoints.h>
00032 #include <vtkPolyDataSource.h>
00033
00034 class OCC2VTK_EXPORT GEOM_FaceSource: public vtkPolyDataSource
00035 {
00036 public:
00037 vtkTypeMacro(GEOM_FaceSource,vtkPolyDataSource);
00038
00039 void AddFace(const TopoDS_Face& theFace);
00040 void Clear(){ myFaceSet.Clear();}
00041 bool IsEmpty(){return myFaceSet.IsEmpty();}
00042
00043 protected:
00044 TFaceSet myFaceSet;
00045
00046 static
00047 void MoveTo(gp_Pnt thePnt,
00048 vtkPoints* thePts);
00049 static
00050 void DrawTo(gp_Pnt thePnt,
00051 vtkPolyData* thePolyData,
00052 vtkPoints* thePts);
00053
00054 GEOM_FaceSource();
00055 ~GEOM_FaceSource();
00056
00057 private:
00058
00059 GEOM_FaceSource(const GEOM_FaceSource&);
00060 void operator=(const GEOM_FaceSource&);
00061 };
00062
00063
00064 #endif //GEOM_FACESOURCE_H