Skip to content

Commit 87e39bb

Browse files
authored
Merge pull request #76 from Geode-solutions/next
Next
2 parents b196af9 + f9768b0 commit 87e39bb

File tree

7 files changed

+75
-1
lines changed

7 files changed

+75
-1
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
55

66
[project]
77
name = "OpenGeodeWeb-Viewer"
8-
version = "1.8.1"
8+
version = "1.9.0-rc.1"
99
dynamic = ["dependencies"]
1010
authors = [
1111
{ name="Geode-solutions", email="team-web@geode-solutions.com" },
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"rpc": "set_z_scaling",
3+
"type": "object",
4+
"properties": {
5+
"z_scale": {
6+
"type": "number"
7+
}
8+
},
9+
"required": [
10+
"z_scale"
11+
],
12+
"additionalProperties": false
13+
}

src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from vtkmodules.vtkIOImage import vtkPNGWriter, vtkJPEGWriter
88
from vtkmodules.vtkRenderingAnnotation import vtkCubeAxesActor
99
from vtkmodules.vtkRenderingCore import vtkWindowToImageFilter
10+
from vtkmodules.vtkCommonTransforms import vtkTransform
1011
from wslink import register as exportRpc
1112

1213
# Local application imports
@@ -277,3 +278,22 @@ def renderNow(self, params):
277278
params, self.viewer_schemas_dict["render_now"], self.viewer_prefix
278279
)
279280
self.render()
281+
282+
@exportRpc(viewer_prefix + viewer_schemas_dict["set_z_scaling"]["rpc"])
283+
def setZScaling(self, params):
284+
285+
validate_schema(
286+
params, self.viewer_schemas_dict["set_z_scaling"], self.viewer_prefix
287+
)
288+
z_scale = params["z_scale"]
289+
290+
renderWindow = self.getView("-1")
291+
renderer = renderWindow.GetRenderers().GetFirstRenderer()
292+
293+
actors = renderer.GetActors()
294+
295+
for actor in actors:
296+
transform = vtkTransform()
297+
transform.Scale(1, 1, z_scale)
298+
actor.SetUserTransform(transform)
299+
self.render()
Loading
9.49 KB
Loading
Loading

src/tests/test_viewer_protocols.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,3 +257,44 @@ def test_render_now(server):
257257
)
258258

259259
assert server.compare_image(3, "viewer/render_now.jpeg") == True
260+
261+
262+
def test_set_z_scaling(server):
263+
264+
server.call(
265+
VtkMeshView.mesh_prefix + VtkMeshView.mesh_schemas_dict["register"]["rpc"],
266+
[{"id": "12345678", "file_name": "polygon_attribute.vtp"}],
267+
)
268+
assert server.compare_image(3, "viewer/polygon_attribute.jpeg") == True
269+
270+
server.call(
271+
VtkMeshView.mesh_prefix + VtkMeshView.mesh_schemas_dict["register"]["rpc"],
272+
[{"id": "123456789", "file_name": "vertex_attribute.vtp"}],
273+
)
274+
assert server.compare_image(3, "viewer/vertex_and_polygon_attribute.jpeg") == True
275+
276+
camera_options = {
277+
"focal_point": [6.05, 5.7, 1.5],
278+
"view_up": [-0.019853719211915175, 0.9994261532466464, 0.02744438084681784],
279+
"position": [-19.898328271321652, 5.221831172558093, 0.1417477620371277],
280+
"view_angle": 30.0,
281+
"clipping_range": [20.16946812228507, 31.94497749971925],
282+
}
283+
284+
server.call(
285+
VtkViewerView.viewer_prefix
286+
+ VtkViewerView.viewer_schemas_dict["update_camera"]["rpc"],
287+
[
288+
{
289+
"camera_options": camera_options,
290+
}
291+
],
292+
)
293+
server.compare_image(3, "mesh/register.jpeg")
294+
295+
server.call(
296+
VtkViewerView.viewer_prefix
297+
+ VtkViewerView.viewer_schemas_dict["set_z_scaling"]["rpc"],
298+
[{"z_scale": 2.5}],
299+
)
300+
assert server.compare_image(3, "viewer/set_z_scaling.jpeg") == True

0 commit comments

Comments
 (0)