Salome HOME
0019939: EDF 762 SMESH : Definition of groups from other existing groups.
[modules/smesh.git] / src / OBJECT / SMESH_DeviceActor.h
index 5ec3be21d13866d0df50a08005c1e049a7605e4f..f8ed9af9d47731e16d6995b4bbfdfc7b02f9cc72 100644 (file)
@@ -52,6 +52,7 @@ class VTKViewer_TransformFilter;
 class VTKViewer_ExtractUnstructuredGrid;
 
 class SMESH_ExtractGeometry;
+class SMESH_FaceOrientationFilter;
 
 
 class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{
@@ -74,6 +75,11 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{
   virtual void SetTransform(VTKViewer_Transform* theTransform); 
   virtual unsigned long int GetMTime();
 
+  virtual void SetFacesOriented(bool theIsFacesOriented);
+  virtual bool GetFacesOriented() { return myIsFacesOriented; }
+
+  void UpdateFaceOrientation();
+
   vtkFloatingPointType GetShrinkFactor();
   void  SetShrinkFactor(vtkFloatingPointType value);
 
@@ -89,6 +95,9 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{
   virtual void SetVisibility(int theMode);
   virtual int GetVisibility();
 
+  virtual void AddToRender(vtkRenderer* theRenderer); 
+  virtual void RemoveFromRender(vtkRenderer* theRenderer);
+
   VTKViewer_ExtractUnstructuredGrid* GetExtractUnstructuredGrid();
   vtkUnstructuredGrid* GetUnstructuredGrid();
 
@@ -124,6 +133,11 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{
   vtkMergeFilter* myMergeFilter;
   VTKViewer_ExtractUnstructuredGrid* myExtractUnstructuredGrid;
 
+  bool myIsFacesOriented;
+  SMESH_FaceOrientationFilter* myFaceOrientationFilter;
+  vtkPolyDataMapper* myFaceOrientationDataMapper;
+  vtkActor* myFaceOrientation;
+
   bool myStoreClippingMapping;
   VTKViewer_GeometryFilter *myGeomFilter;
   VTKViewer_TransformFilter *myTransformFilter;