From: apo Date: Wed, 12 Jan 2005 13:12:10 +0000 (+0000) Subject: Fix on Bug PAL7606 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=a809677ab60adda88e438331ba8cc834314c9749;p=modules%2Fsmesh.git Fix on Bug PAL7606 Controls operation aren't work during Clipping --- diff --git a/src/OBJECT/SMESH_Actor.cxx b/src/OBJECT/SMESH_Actor.cxx index 1b9000893..b3802aefb 100644 --- a/src/OBJECT/SMESH_Actor.cxx +++ b/src/OBJECT/SMESH_Actor.cxx @@ -1263,35 +1263,28 @@ int SMESH_ActorDef::RenderTranslucentGeometry(vtkViewport *vp) void SMESH_ActorDef::Render(vtkRenderer *ren){ - unsigned long mTime = myTimeStamp->GetMTime(); + unsigned long aTime = myTimeStamp->GetMTime(); unsigned long anObjTime = myVisualObj->GetUnstructuredGrid()->GetMTime(); - if(anObjTime > mTime) + unsigned long aClippingTime = myImplicitBoolean->GetMTime(); + if(anObjTime > aTime || aClippingTime > aTime) Update(); } void SMESH_ActorDef::Update(){ - SetVisibility(GetVisibility()); - unsigned long int anObjTime = myVisualObj->GetUnstructuredGrid()->GetMTime(); - unsigned long int aClippingTime = myImplicitBoolean->GetMTime(); - unsigned long int aTime = myTimeStamp->GetMTime(); if(MYDEBUG) MESSAGE("SMESH_ActorDef::Update"); if(GetControlMode() != eNone) { - if(anObjTime > aTime || aClippingTime > aTime){ - SetControlMode(GetControlMode()); - SetVisibility(GetVisibility()); - } + SetControlMode(GetControlMode()); } if(myIsPointsLabeled){ - if(anObjTime > aTime || aClippingTime > aTime) - SetPointsLabeled(myIsPointsLabeled); + SetPointsLabeled(myIsPointsLabeled); } if(myIsCellsLabeled){ - if(anObjTime > aTime || aClippingTime > aTime) - SetCellsLabeled(myIsCellsLabeled); + SetCellsLabeled(myIsCellsLabeled); } - + SetVisibility(GetVisibility()); + myTimeStamp->Modified(); Modified(); } @@ -1498,7 +1491,6 @@ void SMESH_ActorDef::SetPlaneParam(float theDir[3], float theDist, vtkPlane* the float anOrigin[3]; ::DistanceToPosition(GetUnstructuredGrid(),theDir,theDist,anOrigin); thePlane->SetOrigin(anOrigin); - Update(); }