Repository navigation
feat: Remote rendering 4.1a: Share VTK pipeline between client and server renderers - #180
Merged
Merged
Conversation
LKasianAnsys
changed the base branch from
main
to
chore/renderer-interface-cleanup
October 22, 2026 21:59
LKasianAnsys
force-pushed
the
chore/renderer-interface-cleanup
branch
from
October 26, 2026 13:49
f7595dd to
fd7d908
Compare
LKasianAnsys
force-pushed
the
feat/4.1a-share-pipeline-between-renderers
branch
from
October 26, 2026 14:14
a317cba to
50be0a6
Compare
LKasianAnsys
marked this pull request as ready for review
October 26, 2026 15:48
ansBAkula
previously approved these changes
Oct 28, 2026
ansBAkula
left a comment
Collaborator
There was a problem hiding this comment.
Tested basic functionalities...Seems to work after the rfecator.
LKasianAnsys
force-pushed
the
feat/4.1a-share-pipeline-between-renderers
branch
from
October 28, 2026 15:00
50be0a6 to
76a1689
Compare
margalva
approved these changes
Oct 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
Addresses #26
Context
Until now, the VTK pipeline code, including the render window, interactor, widgets, per-part pipelines, and the camera and cross section plane, lived in
VisorLocalRenderer, mixed with wasm serialization. This moves the shared parts into an abstractVtkPipelineRenderer, and keeps_publish*methods on the concrete renderer subclass. It also movespick_geometryoffIRendererandVisorSceneBasefor now, as only client mode can pick geometry; it moves to the shared base when server mode gains geometry picking.No behaviour changes are expected, this is a pure refactor.
Copilot summary
This pull request introduces several important changes related to the renderer pipeline and picking functionality, along with updates to the test suite to reflect refactoring. The most significant update is the sharing of the VTK pipeline between client and server renderers, which improves maintainability and consistency. The picking interface has been refactored, moving responsibility for geometry picking to the appropriate renderer, and related code has been cleaned up. Test imports and mocks have been updated to align with the new module structure.
Renderer pipeline and picking refactor:
doc/changelog.d/180.added.md).pick_geometrymethod fromRendererBaseand its implementation fromNullRenderer, centralizing picking logic in the appropriate renderer (src/ansys/visor/viewer/renderer/base.py,src/ansys/visor/viewer/renderer/null_renderer.py). [1] [2]pick_geometryfrontend entry point from the VTK scene base toLocalScene, ensuring picking is handled only where needed (src/ansys/visor/viewer/vtk/scene/base.py,src/ansys/visor/viewer/vtk/scene/local_scene.py). [1] [2]Test suite updates:
pipeline_rendererinstead oflocal_renderer, reflecting the refactored module structure (tests/unit/renderer/test_local_renderer.py,tests/unit/vtk/scene/test_base.py). [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]Documentation:
doc/changelog.d/180.added.md).