#define VISU_ACTOR_H
#include "SALOME_Actor.h"
-#include "SALOME_GeometryFilter.h"
-#include <stdexcept>
#include <string>
class vtkProp;
class vtkProperty;
-class vtkShrinkPolyData;
+class vtkDataSetMapper;
+class VTKViewer_ShrinkFilter;
class VISU_PipeLine;
namespace VISU {
vtkTypeMacro(VISU_Actor,SALOME_Actor);
void ShallowCopy(vtkProp *prop);
static VISU_Actor* New();
- ~VISU_Actor();
+ virtual ~VISU_Actor();
virtual void setIO(const Handle(SALOME_InteractiveObject)& theIO);
VISU_Actor* GetParent(){ return myParent;}
virtual void SetParent(VISU_Actor* theParent);
- virtual void highlight(Standard_Boolean highlight);
- Standard_Boolean isHighlighted() { return true; };
-
virtual void SetOpacity(float theValue);
virtual float GetOpacity();
- virtual void SetShrinkable(bool theIsShrinkable);
- virtual bool GetShrinkable() { return myIsShrinkable;}
-
virtual void SetRepresentation(int theMode);
+ virtual bool IsShrunkable() { return myIsShrinkable;}
virtual bool IsShrunk() { return myIsShrunk;}
- virtual void SetShrink(float theFactor = 0.8);
+ virtual void SetShrink();
virtual void UnShrink();
+ virtual void SetShrinkable(bool theIsShrinkable);
+ virtual void SetShrinkFactor(float theFactor = 0.8);
+ virtual float GetShrinkFactor();
+
virtual void SetVisibility(int theMode);
virtual int GetVisibility();
- virtual void SetProperty(vtkProperty* theProperty);
- virtual vtkProperty* GetProperty();
-
virtual void SetLineWidth(float theLineWidth);
virtual float GetLineWidth();
-
- int GetObjId(int theVtkID);
- TVectorId GetVtkId(int theObjID);
-
- bool IsHighlighting;
- std::string myFieldName;
+
+ virtual int GetNodeObjId(int theVtkID);
+ virtual int GetElemObjId(int theVtkID);
protected:
VISU_Actor();
VISU_Actor* myParent;
VISU::Prs3d_i* myPrs3d;
VISU_PipeLine* myPipeLine;
- vtkProperty* HighlightProperty;
+ vtkDataSetMapper* myMapper;
- vtkShrinkPolyData* myShrinkFilter;
+ VTKViewer_ShrinkFilter* myShrinkFilter;
bool myIsShrinkable;
bool myIsShrunk;
};