{
aViewer->Erase( aPrs, true );
}
- module()->removeObjectVTKPrs( (size_t)aViewer, anObj );
+ if ( anObj->IsRemoved() )
+ {
+ module()->removeObjectVTKPrs( (size_t)aViewer, anObj );
+ }
}
}
}
Handle(HYDROData_Entity) anObj = theObjs.Value( i );
if( !anObj.IsNull() )
{
- bool anIsVisible = module()->isObjectVisible( (size_t)(aViewer->getViewManager()->getViewModel()), anObj );
+ bool anIsVisible = module()->isObjectVisible( (size_t)aViewer, anObj );
aPrs = module()->getObjectVTKPrs( (size_t)aViewer, anObj );
bool anIsInserted = ( aPrs != 0 );
{
if( aDriver->Update( anObj, aPrs ) && aPrs && !anIsInserted )
{
- module()->setObjectVTKPrs( theViewerId, anObj, aPrs );
- aViewer->Display( aPrs );
- isChanged = true;
+ module()->setObjectVTKPrs( (size_t)aViewer, anObj, aPrs );
}
}
}
- if( aPrs && !anIsVisible )
+ if( aPrs )
{
- aViewer->Erase( aPrs );
+ if ( anIsVisible )
+ {
+ aViewer->Display( aPrs );
+ }
+ else
+ {
+ aViewer->Erase( aPrs );
+ }
isChanged = true;
}
}