File tree Expand file tree Collapse file tree 6 files changed +32
-1
lines changed
Expand file tree Collapse file tree 6 files changed +32
-1
lines changed Original file line number Diff line number Diff line change @@ -415,6 +415,7 @@ void vtkF3DImguiActor::RenderNode(NodeInfo* node)
415415 NodeVisibilityState[node->prop ] = visible;
416416 node->prop ->SetVisibility (visible ? 1 : 0 );
417417 node->prop ->Modified ();
418+ this ->RequestRender ();
418419 }
419420
420421 ImGui::PopID ();
Original file line number Diff line number Diff line change @@ -187,6 +187,11 @@ void vtkF3DImguiObserver::RenderUI(vtkRenderWindowInteractor* interactor)
187187 info->Set (vtkF3DRenderPass::RENDER_UI_ONLY (), 1 );
188188 renWin->Render ();
189189 info->Remove (vtkF3DRenderPass::RENDER_UI_ONLY ());
190+
191+ if (ren->ConsumeUIRenderRequest ())
192+ {
193+ renWin->Render ();
194+ }
190195}
191196
192197// ----------------------------------------------------------------------------
Original file line number Diff line number Diff line change @@ -3468,9 +3468,14 @@ void vtkF3DRenderer::SetUIDeltaTime(double time)
34683468 this ->UIActor ->SetDeltaTime (time);
34693469}
34703470
3471+ // ----------------------------------------------------------------------------
3472+ bool vtkF3DRenderer::ConsumeUIRenderRequest ()
3473+ {
3474+ return this ->UIActor ->ConsumeRenderRequest ();
3475+ }
3476+
34713477// ----------------------------------------------------------------------------
34723478void vtkF3DRenderer::SetConsoleBadgeEnabled (bool enabled)
34733479{
34743480 this ->UIActor ->SetConsoleBadgeEnabled (enabled);
34753481}
3476-
Original file line number Diff line number Diff line change @@ -489,6 +489,8 @@ class vtkF3DRenderer : public vtkOpenGLRenderer
489489 */
490490 void SetUIDeltaTime (double time);
491491
492+ bool ConsumeUIRenderRequest ();
493+
492494 /* *
493495 * Set console badge enabled status
494496 */
Original file line number Diff line number Diff line change @@ -12,6 +12,20 @@ vtkF3DUIActor::vtkF3DUIActor() = default;
1212// ----------------------------------------------------------------------------
1313vtkF3DUIActor::~vtkF3DUIActor () = default ;
1414
15+ // ----------------------------------------------------------------------------
16+ void vtkF3DUIActor::RequestRender ()
17+ {
18+ this ->RenderRequested = true ;
19+ }
20+
21+ // ----------------------------------------------------------------------------
22+ bool vtkF3DUIActor::ConsumeRenderRequest ()
23+ {
24+ const bool requested = this ->RenderRequested ;
25+ this ->RenderRequested = false ;
26+ return requested;
27+ }
28+
1529// ----------------------------------------------------------------------------
1630void vtkF3DUIActor::SetDropZoneVisibility (bool show)
1731{
Original file line number Diff line number Diff line change @@ -193,6 +193,9 @@ class vtkF3DUIActor : public vtkProp
193193 {
194194 }
195195
196+ void RequestRender ();
197+ bool ConsumeRenderRequest ();
198+
196199protected:
197200 vtkF3DUIActor ();
198201 ~vtkF3DUIActor () override ;
@@ -322,6 +325,7 @@ class vtkF3DUIActor : public vtkProp
322325 void operator =(const vtkF3DUIActor&) = delete ;
323326
324327 bool Initialized = false ;
328+ bool RenderRequested = false ;
325329};
326330
327331#endif
You can’t perform that action at this time.
0 commit comments