From c8425cee520830af23114f36edb07e80bb497acc Mon Sep 17 00:00:00 2001 From: SpliiT Date: Thu, 12 Jun 2025 14:38:50 +0200 Subject: [PATCH 1/3] feat(New RPC): New feature Z_Scaling --- .../rpc/viewer/schemas/set_z_scaling.json | 13 ++++++ .../rpc/viewer/viewer_protocols.py | 21 +++++++++ .../data/images/viewer/polygon_attribute.jpeg | Bin 0 -> 6217 bytes .../data/images/viewer/set_z_scaling.jpeg | Bin 0 -> 9722 bytes .../viewer/vertex_and_polygon_attribute.jpeg | Bin 0 -> 10392 bytes src/tests/test_viewer_protocols.py | 41 ++++++++++++++++++ 6 files changed, 75 insertions(+) create mode 100644 src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.json create mode 100644 src/tests/data/images/viewer/polygon_attribute.jpeg create mode 100644 src/tests/data/images/viewer/set_z_scaling.jpeg create mode 100644 src/tests/data/images/viewer/vertex_and_polygon_attribute.jpeg diff --git a/src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.json b/src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.json new file mode 100644 index 0000000..d5b0bcb --- /dev/null +++ b/src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.json @@ -0,0 +1,13 @@ +{ + "rpc": "set_z_scaling", + "type": "object", + "properties": { + "z_scale": { + "type": "number" + } + }, + "required": [ + "z_scale" + ], + "additionalProperties": false +} \ No newline at end of file diff --git a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py index f78483e..bce781e 100644 --- a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py +++ b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py @@ -7,6 +7,7 @@ from vtkmodules.vtkIOImage import vtkPNGWriter, vtkJPEGWriter from vtkmodules.vtkRenderingAnnotation import vtkCubeAxesActor from vtkmodules.vtkRenderingCore import vtkWindowToImageFilter +from vtkmodules.vtkCommonTransforms import vtkTransform from wslink import register as exportRpc # Local application imports @@ -277,3 +278,23 @@ def renderNow(self, params): params, self.viewer_schemas_dict["render_now"], self.viewer_prefix ) self.render() + + @exportRpc(viewer_prefix + viewer_schemas_dict["set_z_scaling"]["rpc"]) + def setZScaling(self, params): + validate_schema( + params, self.viewer_schemas_dict["set_z_scaling"], self.viewer_prefix + ) + z_scale = params["z_scale"] + db = self.get_data_base() + print(f"{db=}", flush=True) + + for values in db.values(): + actor = values["actor"] + print(f"{actor=}", flush=True) + transform = vtkTransform() + transform.Scale([1, 1, z_scale]) + print(f"{transform=}", flush=True) + + actor.SetUserTransform(transform) + + self.render() diff --git a/src/tests/data/images/viewer/polygon_attribute.jpeg b/src/tests/data/images/viewer/polygon_attribute.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..f0849e56b3ae50a9a97dbdd70b9aa25be368864f GIT binary patch literal 6217 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 KLU9LQ&ixlene^cR literal 0 HcmV?d00001 diff --git a/src/tests/data/images/viewer/set_z_scaling.jpeg b/src/tests/data/images/viewer/set_z_scaling.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..cf8aeef462ab74f7cd7a2a32109c07f4699e7b67 GIT binary patch literal 9722 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 literal 0 HcmV?d00001 diff --git a/src/tests/data/images/viewer/vertex_and_polygon_attribute.jpeg b/src/tests/data/images/viewer/vertex_and_polygon_attribute.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..5ab696d57a8565f698f58e423bbdcf8f5cb053fb GIT binary patch literal 10392 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 literal 0 HcmV?d00001 diff --git a/src/tests/test_viewer_protocols.py b/src/tests/test_viewer_protocols.py index b1ff472..85a6781 100644 --- a/src/tests/test_viewer_protocols.py +++ b/src/tests/test_viewer_protocols.py @@ -257,3 +257,44 @@ def test_render_now(server): ) assert server.compare_image(3, "viewer/render_now.jpeg") == True + + +def test_set_z_scaling(server): + + server.call( + VtkMeshView.mesh_prefix + VtkMeshView.mesh_schemas_dict["register"]["rpc"], + [{"id": "12345678", "file_name": "polygon_attribute.vtp"}], + ) + assert server.compare_image(3, "viewer/polygon_attribute.jpeg") == True + + server.call( + VtkMeshView.mesh_prefix + VtkMeshView.mesh_schemas_dict["register"]["rpc"], + [{"id": "123456789", "file_name": "vertex_attribute.vtp"}], + ) + assert server.compare_image(3, "viewer/vertex_and_polygon_attribute.jpeg") == True + + camera_options = { + "focal_point": [6.05, 5.7, 1.5], + "view_up": [-0.019853719211915175, 0.9994261532466464, 0.02744438084681784], + "position": [-19.898328271321652, 5.221831172558093, 0.1417477620371277], + "view_angle": 30.0, + "clipping_range": [20.16946812228507, 31.94497749971925], + } + + server.call( + VtkViewerView.viewer_prefix + + VtkViewerView.viewer_schemas_dict["update_camera"]["rpc"], + [ + { + "camera_options": camera_options, + } + ], + ) + server.compare_image(3, "mesh/register.jpeg") + + server.call( + VtkViewerView.viewer_prefix + + VtkViewerView.viewer_schemas_dict["set_z_scaling"]["rpc"], + [{"z_scale": 2.5}], + ) + assert server.compare_image(3, "viewer/set_z_scaling.jpeg") == True From a5ea0363671b14122bf1367ad07c62f081f81b0b Mon Sep 17 00:00:00 2001 From: SpliiT Date: Thu, 12 Jun 2025 14:39:02 +0200 Subject: [PATCH 2/3] rm prints --- src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py index bce781e..f3a3200 100644 --- a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py +++ b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py @@ -286,15 +286,10 @@ def setZScaling(self, params): ) z_scale = params["z_scale"] db = self.get_data_base() - print(f"{db=}", flush=True) for values in db.values(): actor = values["actor"] - print(f"{actor=}", flush=True) transform = vtkTransform() transform.Scale([1, 1, z_scale]) - print(f"{transform=}", flush=True) - actor.SetUserTransform(transform) - self.render() From 8d68b33a51c8c173a6d06114e146e0d1a5700818 Mon Sep 17 00:00:00 2001 From: SpliiT Date: Thu, 12 Jun 2025 15:49:49 +0200 Subject: [PATCH 3/3] actor --- .../rpc/viewer/viewer_protocols.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py index f3a3200..d50983d 100644 --- a/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py +++ b/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py @@ -281,15 +281,19 @@ def renderNow(self, params): @exportRpc(viewer_prefix + viewer_schemas_dict["set_z_scaling"]["rpc"]) def setZScaling(self, params): + validate_schema( params, self.viewer_schemas_dict["set_z_scaling"], self.viewer_prefix ) z_scale = params["z_scale"] - db = self.get_data_base() - for values in db.values(): - actor = values["actor"] + renderWindow = self.getView("-1") + renderer = renderWindow.GetRenderers().GetFirstRenderer() + + actors = renderer.GetActors() + + for actor in actors: transform = vtkTransform() - transform.Scale([1, 1, z_scale]) + transform.Scale(1, 1, z_scale) actor.SetUserTransform(transform) self.render()