diff --git a/src/src/Rendering/Measure/OpenPolyAnnotationActor.cpp b/src/src/Rendering/Measure/OpenPolyAnnotationActor.cpp index 7533e35..0a19124 100644 --- a/src/src/Rendering/Measure/OpenPolyAnnotationActor.cpp +++ b/src/src/Rendering/Measure/OpenPolyAnnotationActor.cpp @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -30,6 +31,9 @@ void OpenPolyAnnotationActor::SetRenderer(vtkRenderer *ren) { void OpenPolyAnnotationActor::BuildShape() { if (!BaseDataPoints->GetNumberOfPoints()) return; + QString stamp = QString("%1-%2").arg(BaseDataPoints->GetMTime()) + .arg(Renderer->GetActiveCamera()->GetMTime()); + if (mRenderTime == stamp) return; RebuildRenderPoint(); vtkNew source; source->SetClosed(this->Closed); diff --git a/src/src/Rendering/Measure/OpenPolyAnnotationActor.h b/src/src/Rendering/Measure/OpenPolyAnnotationActor.h index fdaa261..daaa0c3 100644 --- a/src/src/Rendering/Measure/OpenPolyAnnotationActor.h +++ b/src/src/Rendering/Measure/OpenPolyAnnotationActor.h @@ -83,6 +83,7 @@ protected: vtkTextProperty *textProperty; bool measured; + QString mRenderTime; QString mUnitmm ; QString mUnitcm ; QString mUnitmm2;