X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FOBJECT%2FSMESH_DeviceActor.h;h=25ebf4d39d6d0454a3a5e16006bdf5ff9a43c780;hb=dbbd8a2dbee2a8ad0a41f0d01d280c25ab6a7e9f;hp=554af35d9462d64691e611ec5de367a04f561bea;hpb=f5016d85b7b4b88623723027a1585c6414c4dc66;p=modules%2Fsmesh.git diff --git a/src/OBJECT/SMESH_DeviceActor.h b/src/OBJECT/SMESH_DeviceActor.h index 554af35d9..25ebf4d39 100644 --- a/src/OBJECT/SMESH_DeviceActor.h +++ b/src/OBJECT/SMESH_DeviceActor.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2020 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 @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -45,6 +45,7 @@ class vtkUnstructuredGrid; class vtkLookupTable; class vtkImplicitBoolean; class vtkPassThroughFilter; +class vtkPlaneCollection; class VTKViewer_Transform; class VTKViewer_TransformFilter; @@ -68,22 +69,23 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ void SetStoreIDMapping(bool theStoreMapping); virtual int GetNodeObjId(int theVtkID); - virtual vtkFloatingPointType* GetNodeCoord(int theObjID); + virtual double* GetNodeCoord(int theObjID); + virtual int GetNodeVtkId(int theObjID); virtual int GetElemObjId(int theVtkID); virtual vtkCell* GetElemCell(int theObjID); virtual void SetTransform(VTKViewer_Transform* theTransform); - virtual unsigned long int GetMTime(); + virtual vtkMTimeType GetMTime(); virtual void SetFacesOriented(bool theIsFacesOriented); virtual bool GetFacesOriented() { return myIsFacesOriented; } - virtual void SetFacesOrientationColor(vtkFloatingPointType r,vtkFloatingPointType g,vtkFloatingPointType b); - virtual void GetFacesOrientationColor(vtkFloatingPointType& r,vtkFloatingPointType& g,vtkFloatingPointType& b); + virtual void SetFacesOrientationColor(double r,double g,double b); + virtual void GetFacesOrientationColor(double& r,double& g,double& b); - virtual void SetFacesOrientationScale(vtkFloatingPointType theScale); - virtual vtkFloatingPointType GetFacesOrientationScale(); + virtual void SetFacesOrientationScale(double theScale); + virtual double GetFacesOrientationScale(); virtual void SetFacesOrientation3DVectors(bool theState); virtual bool GetFacesOrientation3DVectors(); @@ -93,13 +95,13 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ virtual void SetQuadraticArcMode(bool theFlag); virtual bool GetQuadraticArcMode(); - virtual void SetQuadraticArcAngle(vtkFloatingPointType theMaxAngle); - virtual vtkFloatingPointType GetQuadraticArcAngle(); + virtual void SetQuadraticArcAngle(double theMaxAngle); + virtual double GetQuadraticArcAngle(); void UpdateFaceOrientation(); - vtkFloatingPointType GetShrinkFactor(); - void SetShrinkFactor(vtkFloatingPointType value); + double GetShrinkFactor(); + void SetShrinkFactor(double value); bool IsShrunkable() { return myIsShrinkable;} bool IsShrunk() { return myIsShrunk;} @@ -119,6 +121,8 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ VTKViewer_ExtractUnstructuredGrid* GetExtractUnstructuredGrid(); vtkUnstructuredGrid* GetUnstructuredGrid(); + void SetPlaneCollection( vtkPlaneCollection* theCollection ); + void SetControlMode(SMESH::Controls::FunctorPtr theFunctor, SMESH_ScalarBarActor* theScalarBarActor, vtkLookupTable* theLookupTable); @@ -144,11 +148,14 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ bool IsImplicitFunctionUsed() const{ return myIsImplicitFunctionUsed;} void SetMarkerEnabled( bool ); + void SetBallEnabled( bool ); + void SetBallScale( double ); void SetMarkerStd( VTK::MarkerType, VTK::MarkerScale ); void SetMarkerTexture( int, VTK::MarkerTexture ); VTK::MarkerType GetMarkerType(); VTK::MarkerScale GetMarkerScale(); int GetMarkerTexture(); + double GetBallScale(); protected: void Init(TVisualObjPtr theVisualObj, vtkImplicitBoolean* theImplicitBoolean); @@ -157,6 +164,8 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ VTKViewer_PolyDataMapper *myMapper; TVisualObjPtr myVisualObj; + vtkSmartPointer myPlaneCollection; + vtkProperty *myProperty; EReperesent myRepresentation; @@ -182,16 +191,16 @@ class SMESHOBJECT_EXPORT SMESH_DeviceActor: public vtkLODActor{ bool myIsHighlited; - vtkFloatingPointType myPolygonOffsetFactor; - vtkFloatingPointType myPolygonOffsetUnits; + double myPolygonOffsetFactor; + double myPolygonOffsetUnits; void - SetPolygonOffsetParameters(vtkFloatingPointType factor, - vtkFloatingPointType units); + SetPolygonOffsetParameters(double factor, + double units); void - GetPolygonOffsetParameters(vtkFloatingPointType& factor, - vtkFloatingPointType& units) + GetPolygonOffsetParameters(double& factor, + double& units) { factor = myPolygonOffsetFactor; units = myPolygonOffsetUnits;