X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FOBJECT%2FSMESH_Actor.h;h=744571e41360280a92dbb6cfd3a50821ad74b496;hb=refs%2Ftags%2FRELIQUAT_5x_15112010;hp=89f4fc51acf9814560b0d56b40ab9cdd110ddd35;hpb=2daa321efae3d0c6ce41199fa5a2482630d505d9;p=modules%2Fsmesh.git diff --git a/src/OBJECT/SMESH_Actor.h b/src/OBJECT/SMESH_Actor.h index 89f4fc51a..744571e41 100644 --- a/src/OBJECT/SMESH_Actor.h +++ b/src/OBJECT/SMESH_Actor.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -19,24 +19,32 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + // SMESH OBJECT : interactive object for SMESH visualization // File : SMESH_Actor.h // Author : Nicolas REJNERI // Module : SMESH - +// #ifndef SMESH_ACTOR_H #define SMESH_ACTOR_H #include #include "SMESH_Object.h" +#include + class vtkUnstructuredGrid; -class vtkScalarBarActor; +class SMESH_ScalarBarActor; class vtkPlane; class vtkImplicitBoolean; +namespace SMESH +{ + const vtkIdType DeleteActorEvent = vtkCommand::UserEvent + 100; +} + class SMESHOBJECT_EXPORT SMESH_Actor: public SALOME_Actor { static SMESH_Actor* New() { return NULL;} @@ -60,6 +68,9 @@ class SMESHOBJECT_EXPORT SMESH_Actor: public SALOME_Actor virtual void SetNodeColor(vtkFloatingPointType r,vtkFloatingPointType g,vtkFloatingPointType b) = 0; virtual void GetNodeColor(vtkFloatingPointType& r,vtkFloatingPointType& g,vtkFloatingPointType& b) = 0; + virtual void Set0DColor(vtkFloatingPointType r,vtkFloatingPointType g,vtkFloatingPointType b) = 0; + virtual void Get0DColor(vtkFloatingPointType& r,vtkFloatingPointType& g,vtkFloatingPointType& b) = 0; + virtual void SetHighlightColor(vtkFloatingPointType r,vtkFloatingPointType g,vtkFloatingPointType b) = 0; virtual void GetHighlightColor(vtkFloatingPointType& r,vtkFloatingPointType& g,vtkFloatingPointType& b) = 0; @@ -69,8 +80,8 @@ class SMESHOBJECT_EXPORT SMESH_Actor: public SALOME_Actor virtual vtkFloatingPointType GetLineWidth() = 0; virtual void SetLineWidth(vtkFloatingPointType theVal) = 0; - virtual void SetNodeSize(vtkFloatingPointType size) = 0; - virtual vtkFloatingPointType GetNodeSize() = 0; + virtual void Set0DSize(vtkFloatingPointType size) = 0; + virtual vtkFloatingPointType Get0DSize() = 0; enum EReperesent { ePoint, eEdge, eSurface}; @@ -100,16 +111,25 @@ class SMESHOBJECT_EXPORT SMESH_Actor: public SALOME_Actor virtual void SetFacesOriented(bool theIsFacesOriented) = 0; virtual bool GetFacesOriented() = 0; + virtual void SetFacesOrientationColor(vtkFloatingPointType theColor[3]) = 0; + virtual void GetFacesOrientationColor(vtkFloatingPointType theColor[3]) = 0; + + virtual void SetFacesOrientationScale(vtkFloatingPointType theScale) = 0; + virtual vtkFloatingPointType GetFacesOrientationScale() = 0; + + virtual void SetFacesOrientation3DVectors(bool theState) = 0; + virtual bool GetFacesOrientation3DVectors() = 0; + enum eControl{eNone, eLength, eLength2D, eFreeBorders, eFreeEdges, eFreeNodes, eFreeFaces, eMultiConnection, eArea, eTaper, eAspectRatio, - eMinimumAngle, eWarping, eSkew, eAspectRatio3D, eMultiConnection2D, eVolume3D}; + eMinimumAngle, eWarping, eSkew, eAspectRatio3D, eMultiConnection2D, eVolume3D, + eMaxElementLength2D, eMaxElementLength3D, eBareBorderFace, eBareBorderVolume, + eOverConstrainedFace, eOverConstrainedVolume}; virtual void SetControlMode(eControl theMode) = 0; virtual eControl GetControlMode() = 0; + virtual SMESH::Controls::FunctorPtr GetFunctor() = 0; - virtual vtkScalarBarActor* GetScalarBarActor() = 0; - - virtual void SetPlaneParam(vtkFloatingPointType theDir[3], vtkFloatingPointType theDist, vtkPlane* thePlane) = 0; - virtual void GetPlaneParam(vtkFloatingPointType theDir[3], vtkFloatingPointType& theDist, vtkPlane* thePlane) = 0; + virtual SMESH_ScalarBarActor* GetScalarBarActor() = 0; virtual void RemoveAllClippingPlanes() = 0; virtual vtkIdType GetNumberOfClippingPlanes() = 0; @@ -122,6 +142,7 @@ class SMESHOBJECT_EXPORT SMESH_Actor: public SALOME_Actor virtual long GetControlsPrecision() const = 0; virtual void UpdateScalarBar() = 0; + virtual void UpdateDistribution() = 0; };