#4880 Fix annotations missing in comparison view

This commit is contained in:
Jacob Støren
2019-11-01 15:51:50 +01:00
parent 8bdb05447c
commit f7fb4caa69
2 changed files with 7 additions and 20 deletions

View File

@@ -536,7 +536,6 @@ void Rim2dIntersectionView::onCreateDisplayModel()
if ( this->hasUserRequestedAnimation() ) if ( this->hasUserRequestedAnimation() )
{ {
if ( viewer() ) viewer()->setCurrentFrame( m_currentTimeStep ); if ( viewer() ) viewer()->setCurrentFrame( m_currentTimeStep );
onUpdateDisplayModelForCurrentTimeStep();
} }
if ( this->viewer()->mainCamera()->viewMatrix() == sm_defaultViewMatrix ) if ( this->viewer()->mainCamera()->viewMatrix() == sm_defaultViewMatrix )

View File

@@ -479,24 +479,7 @@ void Rim3dView::setCurrentTimeStep( int frameIndex )
void Rim3dView::setCurrentTimeStepAndUpdate( int frameIndex ) void Rim3dView::setCurrentTimeStepAndUpdate( int frameIndex )
{ {
setCurrentTimeStep( frameIndex ); setCurrentTimeStep( frameIndex );
updateDisplayModelForCurrentTimeStepAndRedraw();
this->onUpdateDisplayModelForCurrentTimeStep();
if ( Rim3dView* depView = prepareComparisonView() )
{
depView->onUpdateDisplayModelForCurrentTimeStep();
depView->appendAnnotationsToModel();
depView->appendMeasurementToModel();
restoreComparisonView();
}
RimProject* project;
firstAncestorOrThisOfTypeAsserted( project );
project->mainPlotCollection()->updateCurrentTimeStepInPlots();
appendAnnotationsToModel();
appendMeasurementToModel();
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -509,10 +492,14 @@ void Rim3dView::updateDisplayModelForCurrentTimeStepAndRedraw()
if ( nativeOrOverrideViewer() ) if ( nativeOrOverrideViewer() )
{ {
this->onUpdateDisplayModelForCurrentTimeStep(); this->onUpdateDisplayModelForCurrentTimeStep();
appendAnnotationsToModel();
appendMeasurementToModel();
if ( Rim3dView* depView = prepareComparisonView() ) if ( Rim3dView* depView = prepareComparisonView() )
{ {
depView->onUpdateDisplayModelForCurrentTimeStep(); depView->onUpdateDisplayModelForCurrentTimeStep();
depView->appendAnnotationsToModel();
depView->appendMeasurementToModel();
restoreComparisonView(); restoreComparisonView();
} }
@@ -530,6 +517,7 @@ void Rim3dView::updateDisplayModelForCurrentTimeStepAndRedraw()
view->updateDisplayModelForCurrentTimeStepAndRedraw(); view->updateDisplayModelForCurrentTimeStepAndRedraw();
} }
} }
m_isCallingUpdateDisplayModelForCurrentTimestepAndRedraw = false; m_isCallingUpdateDisplayModelForCurrentTimestepAndRedraw = false;
RimProject* project; RimProject* project;
@@ -569,7 +557,7 @@ void Rim3dView::createDisplayModelAndRedraw()
// But avoid any call back down to this Rim3dView, instead do the update manually to not confuse the // But avoid any call back down to this Rim3dView, instead do the update manually to not confuse the
// m_currentTimeStep // m_currentTimeStep
nativeOrOverrideViewer()->caf::Viewer::slotSetCurrentFrame( currentTimeStep() ); nativeOrOverrideViewer()->caf::Viewer::slotSetCurrentFrame( currentTimeStep() );
depView->onUpdateDisplayModelForCurrentTimeStep(); depView->updateDisplayModelForCurrentTimeStepAndRedraw();
} }
restoreComparisonView(); restoreComparisonView();