31 #include <SALOMEconfig.h>  
   32 #include <SALOME_Actor.h> 
   36 #include <vtkCommand.h> 
   43 class vtkImplicitBoolean;
 
   45 #ifndef DISABLE_PLOT2DVIEWER 
   46 class SPlot2d_Histogram;
 
   65   virtual void SetSufaceColor(
double r,
double g,
double b, 
int delta ) = 0;
 
   66   virtual void GetSufaceColor(
double& r,
double& g,
double& b, 
int& delta ) = 0;
 
   68   virtual void SetVolumeColor(
double r,
double g,
double b, 
int delta ) = 0;
 
   69   virtual void GetVolumeColor(
double& r,
double& g,
double& b, 
int& delta) = 0;
 
   71   virtual void SetEdgeColor(
double r,
double g,
double b) = 0;
 
   72   virtual void GetEdgeColor(
double& r,
double& g,
double& b) = 0;
 
   74   virtual void SetNodeColor(
double r,
double g,
double b) = 0;
 
   75   virtual void GetNodeColor(
double& r,
double& g,
double& b) = 0;
 
   77   virtual void SetOutlineColor(
double r,
double g,
double b) = 0;
 
   78   virtual void GetOutlineColor(
double& r,
double& g,
double& b) = 0;  
 
   80   virtual void Set0DColor(
double r,
double g,
double b) = 0;
 
   81   virtual void Get0DColor(
double& r,
double& g,
double& b) = 0;
 
   83   virtual void SetBallColor(
double r,
double g,
double b) = 0;
 
   84   virtual void GetBallColor(
double& r,
double& g,
double& b) = 0;
 
   86   virtual void SetHighlightColor(
double r,
double g,
double b) = 0;
 
   87   virtual void GetHighlightColor(
double& r,
double& g,
double& b) = 0;
 
   89   virtual void SetPreHighlightColor(
double r,
double g,
double b) = 0;
 
   90   virtual void GetPreHighlightColor(
double& r,
double& g,
double& b) = 0;
 
   92   virtual double GetLineWidth() = 0;
 
   93   virtual void SetLineWidth(
double theVal) = 0;
 
   95   virtual double GetOutlineWidth() = 0;
 
   96   virtual void SetOutlineWidth(
double theVal) = 0;
 
   98   virtual void Set0DSize(
double size) = 0;
 
   99   virtual double Get0DSize() = 0;
 
  101   virtual void SetBallSize(
double size) = 0;
 
  102   virtual double GetBallSize() = 0;
 
  104   virtual void SetBallScale(
double size) = 0;
 
  105   virtual double GetBallScale() = 0;
 
  109   enum EEntityMode { e0DElements = 0x01, eEdges = 0x02, eFaces = 0x04, eVolumes = 0x08, eBallElem = 0x10, eAllEntity = 0x1f};
 
  113   virtual void SetEntityMode(
unsigned int theMode) = 0;
 
  114   virtual unsigned int GetEntityMode() 
const = 0;
 
  116   virtual void SetQuadratic2DRepresentation(EQuadratic2DRepresentation) = 0;
 
  117   virtual EQuadratic2DRepresentation GetQuadratic2DRepresentation() = 0;
 
  120   virtual bool GetPointRepresentation() = 0;
 
  124   virtual void SetShrinkFactor(
double theValue) = 0;
 
  126   virtual void SetPointsLabeled(
bool theIsPointsLabeled) = 0;
 
  127   virtual bool GetPointsLabeled() = 0;
 
  129   virtual void SetCellsLabeled(
bool theIsCellsLabeled) = 0;
 
  130   virtual bool GetCellsLabeled() = 0;
 
  132   virtual void SetFacesOriented(
bool theIsFacesOriented) = 0;
 
  133   virtual bool GetFacesOriented() = 0;
 
  135   virtual void SetFacesOrientationColor(
double r,
double g,
double b) = 0;
 
  136   virtual void GetFacesOrientationColor(
double& r,
double& g,
double& b) = 0;
 
  138   virtual void SetFacesOrientationScale(
double theScale) = 0;
 
  139   virtual double GetFacesOrientationScale() = 0;
 
  141   virtual void SetFacesOrientation3DVectors(
bool theState) = 0;
 
  142   virtual bool GetFacesOrientation3DVectors() = 0;
 
  144   enum eControl{
eNone, eLength, eLength2D, eFreeBorders, eFreeEdges, eFreeNodes,
 
  145                 eFreeFaces, eMultiConnection, eArea, 
eTaper, eAspectRatio,
 
  146                 eMinimumAngle, 
eWarping, eSkew, eAspectRatio3D, eMultiConnection2D, eVolume3D,
 
  149                 eCoincidentElems1D, eCoincidentElems2D, eCoincidentElems3D, eNodeConnectivityNb };
 
  150   virtual void SetControlMode(eControl theMode) = 0;
 
  151   virtual eControl GetControlMode() = 0;
 
  153   virtual int GetNumberControlEntities() = 0;
 
  157   virtual void RemoveAllClippingPlanes() = 0; 
 
  158   virtual vtkIdType GetNumberOfClippingPlanes() = 0; 
 
  159   virtual vtkPlane* GetClippingPlane(vtkIdType theID) = 0; 
 
  160   virtual vtkIdType AddClippingPlane(
vtkPlane* thePlane) = 0; 
 
  161   virtual void AddOpenGLClippingPlane(
vtkPlane* thePlane) = 0;
 
  162   virtual void SetOpenGLClippingPlane() = 0;
 
  167   virtual long GetControlsPrecision() 
const = 0;
 
  169   virtual void UpdateScalarBar() = 0;
 
  170   virtual void UpdateDistribution() = 0;
 
  173                                         bool bold, 
bool italic, 
bool shadow,
 
  174                                         double r, 
double g, 
double b ) = 0;
 
  176                                        bool bold, 
bool italic, 
bool shadow,
 
  177                                        double r, 
double g, 
double b ) = 0;
 
  179 #ifndef DISABLE_PLOT2DVIEWER 
  180   virtual SPlot2d_Histogram* GetPlot2Histogram() = 0;
 
  181   virtual SPlot2d_Histogram* UpdatePlot2Histogram() = 0;
 
  186 #endif //SMESH_ACTOR_H