bos #17888 VTK viewer: scaling is not applied to GEOM objects

This commit is contained in:
vsr 2020-01-27 18:54:27 +03:00
parent 7c35075817
commit 31ee669792
4 changed files with 30 additions and 0 deletions

View File

@ -1166,3 +1166,20 @@ void GEOM_Actor::SetWidth(const int width) {
int GEOM_Actor::GetWidth() const {
return (int)myIsolatedEdgeActor->GetProperty()->GetLineWidth();
}
void GEOM_Actor::SetTransform(VTKViewer_Transform* theTransform)
{
SALOME_Actor::SetTransform(theTransform);
myVertexActor->SetTransform(theTransform);
myStandaloneVertexActor->SetTransform(theTransform);
myIsolatedEdgeActor->SetTransform(theTransform);
myOneFaceEdgeActor->SetTransform(theTransform);
mySharedEdgeActor->SetTransform(theTransform);
myWireframeFaceActor->SetTransform(theTransform);
myShadingFaceActor->SetTransform(theTransform);
myHighlightActor->SetTransform(theTransform);
//myTextActor->SetTransform(theTransform);
Modified();
}

View File

@ -80,6 +80,8 @@ public:
void SetSelected(bool theIsSelected);
bool IsSelected() const { return myIsSelected;}
void SetTransform(VTKViewer_Transform* theTransform);
// OLD METHODS
// Properties
void SetHighlightProperty(vtkProperty* Prop);

View File

@ -28,6 +28,7 @@
#include <vtkPolyDataNormals.h>
#include <vtkActor.h>
#include <VTKViewer_Actor.h>
#include <VTKViewer_Transform.h>
#include <vtkRenderer.h>
vtkStandardNewMacro(GEOM_DeviceActor);
@ -118,3 +119,10 @@ RemoveFromRender(vtkRenderer* theRenderer)
{
theRenderer->RemoveActor(myActor.GetPointer());
}
void
GEOM_DeviceActor::
SetTransform(VTKViewer_Transform* theTransform)
{
myActor->SetTransform(theTransform);
}

View File

@ -44,6 +44,7 @@ class vtkRenderer;
#include <vtkObject.h>
class vtkAlgorithmOutput;
class VTKViewer_Transform;
class VTK_EXPORT GEOM_DeviceActor: public vtkObject
{
@ -66,6 +67,8 @@ public:
void RemoveFromRender(vtkRenderer* theRenderer);
PActor GetDeviceActor() {return myActor;}
void SetTransform(VTKViewer_Transform* theTransform);
protected:
PPolyDataNormals myPolyDataNormals;