OpenGeodeWeb-Viewer 1.24.0__tar.gz → 1.25.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/PKG-INFO +3 -3
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/pyproject.toml +1 -1
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/requirements.txt +2 -2
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/PKG-INFO +3 -3
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/SOURCES.txt +3 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/requires.txt +2 -2
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/object/object_methods.py +12 -43
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/mesh_protocols.py +42 -42
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/model_protocols.py +23 -100
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/__init__.py +1 -0
- opengeodeweb_viewer-1.25.0/src/opengeodeweb_viewer/rpc/viewer/schemas/clipping_planes.json +48 -0
- opengeodeweb_viewer-1.25.0/src/opengeodeweb_viewer/rpc/viewer/schemas/clipping_planes.py +21 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py +9 -1
- opengeodeweb_viewer-1.25.0/src/opengeodeweb_viewer/vtk_pipeline.py +229 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/vtk_protocol.py +83 -92
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/tests/test_viewer_protocols.py +27 -2
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/LICENSE +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/README.md +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/setup.cfg +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/dependency_links.txt +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/entry_points.txt +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/top_level.txt +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/app.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/config.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/py.typed +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/generic_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/schemas/deregister.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/schemas/deregister.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/schemas/register.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/generic/schemas/register.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/cell/cells_attribute_cell_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/cell/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/cell/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/cell/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/vertex/cells_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/cells_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/cells/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/edge/edges_attribute_edge_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/edge/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/edge/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/edge/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/vertex/edges_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/edges_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/width.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/edges/schemas/width.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/attribute/vertex/points_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/points_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/size.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/size.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_color_map.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_color_map.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_scalar_range.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/vertex_scalar_range.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/points/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/polygon/polygons_attribute_polygon_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/polygon/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/polygon/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/polygon/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/vertex/polygons_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/polygons_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polygons/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/polyhedron/polyhedra_attribute_polyhedron_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/polyhedron/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/polyhedron/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/polyhedron/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/vertex/polyhedra_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/polyhedra_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/polyhedra/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/apply_textures.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/apply_textures.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/deregister.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/deregister.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/highlight.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/highlight.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/register.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/register.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/mesh/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/polyhedron/blocks_attribute_polyhedron_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/polyhedron/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/polyhedron/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/polyhedron/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/vertex/blocks_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/model_blocks_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/blocks/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/attribute/vertex/corners_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/model_corners_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/corners/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/edges/model_edges_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/edges/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/edges/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/edges/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/edge/lines_attribute_edge_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/edge/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/edge/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/edge/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/vertex/lines_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/model_lines_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/lines/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/model_points_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/schemas/size.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/schemas/size.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/points/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/deregister.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/deregister.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/get_blocks_bounds.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/get_blocks_bounds.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/highlight.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/highlight.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/register.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/register.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/polygon/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/polygon/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/polygon/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/polygon/surfaces_attribute_polygon_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/vertex/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/vertex/schemas/attribute.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/vertex/schemas/attribute.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/attribute/vertex/surfaces_attribute_vertex_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/model_surfaces_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/apply_textures.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/apply_textures.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/visibility.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/model/surfaces/schemas/visibility.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/schemas/__init__.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/schemas/import_project.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/schemas/import_project.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/schemas/kill.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/schemas/kill.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/utils_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/axes.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/axes.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/get_point_position.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/get_point_position.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/grid_scale.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/grid_scale.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/highlight.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/highlight.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/pick_colormap.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/pick_colormap.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/picked_ids.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/picked_ids.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/preview_points.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/preview_points.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/render.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/render.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/reset_camera.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/reset_camera.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/reset_visualization.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/reset_visualization.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/set_background_color.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/set_background_color.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/set_z_scaling.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/take_screenshot.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/take_screenshot.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/update_camera.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/update_camera.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/update_data.json +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/rpc/viewer/schemas/update_data.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/opengeodeweb_viewer/utils_functions.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/tests/test_generic_protocols.py +0 -0
- {opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/tests/test_utils_protocols.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: OpenGeodeWeb-Viewer
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.25.0
|
|
4
4
|
Summary: OpenGeodeWeb-Viewer is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem
|
|
5
5
|
Author-email: Geode-solutions <team-web@geode-solutions.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/Geode-solutions/OpenGeodeWeb-Viewer
|
|
@@ -24,7 +24,7 @@ Requires-Dist: kiwisolver>=1
|
|
|
24
24
|
Requires-Dist: matplotlib>=3
|
|
25
25
|
Requires-Dist: multidict>=6
|
|
26
26
|
Requires-Dist: numpy>=2
|
|
27
|
-
Requires-Dist: packaging==26.
|
|
27
|
+
Requires-Dist: packaging==26.3
|
|
28
28
|
Requires-Dist: pillow>=12
|
|
29
29
|
Requires-Dist: propcache>=0
|
|
30
30
|
Requires-Dist: pyparsing>=3
|
|
@@ -35,7 +35,7 @@ Requires-Dist: vtk==9.5.2
|
|
|
35
35
|
Requires-Dist: websocket-client>=1
|
|
36
36
|
Requires-Dist: wslink==1.12.4
|
|
37
37
|
Requires-Dist: yarl>=1
|
|
38
|
-
Requires-Dist: opengeodeweb-microservice==1.*,>=1.
|
|
38
|
+
Requires-Dist: opengeodeweb-microservice==1.*,>=1.2.0rc2
|
|
39
39
|
Dynamic: license-file
|
|
40
40
|
|
|
41
41
|
# OpenGeodeWeb-Viewer
|
|
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|
|
5
5
|
|
|
6
6
|
[project]
|
|
7
7
|
name = "OpenGeodeWeb-Viewer"
|
|
8
|
-
version = "1.
|
|
8
|
+
version = "1.25.0"
|
|
9
9
|
dynamic = ["dependencies"]
|
|
10
10
|
authors = [{ name = "Geode-solutions", email = "team-web@geode-solutions.com" }]
|
|
11
11
|
description = "OpenGeodeWeb-Viewer is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem"
|
|
@@ -36,7 +36,7 @@ numpy>=2
|
|
|
36
36
|
# via
|
|
37
37
|
# contourpy
|
|
38
38
|
# matplotlib
|
|
39
|
-
packaging==26.
|
|
39
|
+
packaging==26.3
|
|
40
40
|
# via matplotlib
|
|
41
41
|
pillow>=12
|
|
42
42
|
# via matplotlib
|
|
@@ -63,4 +63,4 @@ wslink==1.12.4
|
|
|
63
63
|
yarl>=1
|
|
64
64
|
# via aiohttp
|
|
65
65
|
|
|
66
|
-
opengeodeweb-microservice==1.*,>=1.
|
|
66
|
+
opengeodeweb-microservice==1.*,>=1.2.0rc2
|
{opengeodeweb_viewer-1.24.0 → opengeodeweb_viewer-1.25.0}/src/OpenGeodeWeb_Viewer.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: OpenGeodeWeb-Viewer
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.25.0
|
|
4
4
|
Summary: OpenGeodeWeb-Viewer is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem
|
|
5
5
|
Author-email: Geode-solutions <team-web@geode-solutions.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/Geode-solutions/OpenGeodeWeb-Viewer
|
|
@@ -24,7 +24,7 @@ Requires-Dist: kiwisolver>=1
|
|
|
24
24
|
Requires-Dist: matplotlib>=3
|
|
25
25
|
Requires-Dist: multidict>=6
|
|
26
26
|
Requires-Dist: numpy>=2
|
|
27
|
-
Requires-Dist: packaging==26.
|
|
27
|
+
Requires-Dist: packaging==26.3
|
|
28
28
|
Requires-Dist: pillow>=12
|
|
29
29
|
Requires-Dist: propcache>=0
|
|
30
30
|
Requires-Dist: pyparsing>=3
|
|
@@ -35,7 +35,7 @@ Requires-Dist: vtk==9.5.2
|
|
|
35
35
|
Requires-Dist: websocket-client>=1
|
|
36
36
|
Requires-Dist: wslink==1.12.4
|
|
37
37
|
Requires-Dist: yarl>=1
|
|
38
|
-
Requires-Dist: opengeodeweb-microservice==1.*,>=1.
|
|
38
|
+
Requires-Dist: opengeodeweb-microservice==1.*,>=1.2.0rc2
|
|
39
39
|
Dynamic: license-file
|
|
40
40
|
|
|
41
41
|
# OpenGeodeWeb-Viewer
|
|
@@ -13,6 +13,7 @@ src/opengeodeweb_viewer/app.py
|
|
|
13
13
|
src/opengeodeweb_viewer/config.py
|
|
14
14
|
src/opengeodeweb_viewer/py.typed
|
|
15
15
|
src/opengeodeweb_viewer/utils_functions.py
|
|
16
|
+
src/opengeodeweb_viewer/vtk_pipeline.py
|
|
16
17
|
src/opengeodeweb_viewer/vtk_protocol.py
|
|
17
18
|
src/opengeodeweb_viewer/object/object_methods.py
|
|
18
19
|
src/opengeodeweb_viewer/rpc/utils_protocols.py
|
|
@@ -197,6 +198,8 @@ src/opengeodeweb_viewer/rpc/viewer/viewer_protocols.py
|
|
|
197
198
|
src/opengeodeweb_viewer/rpc/viewer/schemas/__init__.py
|
|
198
199
|
src/opengeodeweb_viewer/rpc/viewer/schemas/axes.json
|
|
199
200
|
src/opengeodeweb_viewer/rpc/viewer/schemas/axes.py
|
|
201
|
+
src/opengeodeweb_viewer/rpc/viewer/schemas/clipping_planes.json
|
|
202
|
+
src/opengeodeweb_viewer/rpc/viewer/schemas/clipping_planes.py
|
|
200
203
|
src/opengeodeweb_viewer/rpc/viewer/schemas/get_point_position.json
|
|
201
204
|
src/opengeodeweb_viewer/rpc/viewer/schemas/get_point_position.py
|
|
202
205
|
src/opengeodeweb_viewer/rpc/viewer/schemas/grid_scale.json
|
|
@@ -11,7 +11,7 @@ kiwisolver>=1
|
|
|
11
11
|
matplotlib>=3
|
|
12
12
|
multidict>=6
|
|
13
13
|
numpy>=2
|
|
14
|
-
packaging==26.
|
|
14
|
+
packaging==26.3
|
|
15
15
|
pillow>=12
|
|
16
16
|
propcache>=0
|
|
17
17
|
pyparsing>=3
|
|
@@ -22,4 +22,4 @@ vtk==9.5.2
|
|
|
22
22
|
websocket-client>=1
|
|
23
23
|
wslink==1.12.4
|
|
24
24
|
yarl>=1
|
|
25
|
-
opengeodeweb-microservice==1.*,>=1.
|
|
25
|
+
opengeodeweb-microservice==1.*,>=1.2.0rc2
|
|
@@ -1,25 +1,17 @@
|
|
|
1
|
-
# Standard library imports
|
|
2
|
-
import os
|
|
3
|
-
|
|
4
1
|
# Third party imports
|
|
5
|
-
from vtkmodules.
|
|
6
|
-
|
|
2
|
+
from vtkmodules.vtkCommonDataModel import (
|
|
3
|
+
vtkDataSet,
|
|
4
|
+
vtkMultiBlockDataSet,
|
|
5
|
+
)
|
|
7
6
|
from vtkmodules.vtkRenderingCore import (
|
|
8
|
-
vtkMapper,
|
|
9
7
|
vtkActor,
|
|
10
|
-
vtkTexture,
|
|
11
8
|
vtkCompositePolyDataMapper,
|
|
12
|
-
vtkCompositeDataDisplayAttributes,
|
|
13
9
|
vtkDataSetMapper,
|
|
14
10
|
)
|
|
15
|
-
from vtkmodules.vtkCommonDataModel import (
|
|
16
|
-
vtkDataSet,
|
|
17
|
-
vtkMultiBlockDataSet,
|
|
18
|
-
)
|
|
19
|
-
from vtkmodules.vtkFiltersExtraction import vtkExtractSelection
|
|
20
11
|
|
|
21
12
|
# Local application imports
|
|
22
|
-
from opengeodeweb_viewer.
|
|
13
|
+
from opengeodeweb_viewer.vtk_pipeline import VtkPipeline
|
|
14
|
+
from opengeodeweb_viewer.vtk_protocol import VtkView
|
|
23
15
|
|
|
24
16
|
|
|
25
17
|
class VtkObjectView(VtkView):
|
|
@@ -133,28 +125,6 @@ class VtkObjectView(VtkView):
|
|
|
133
125
|
actor = self.get_vtk_pipeline(data_id).actor
|
|
134
126
|
actor.GetProperty().SetVertexColor([red / 255, green / 255, blue / 255])
|
|
135
127
|
|
|
136
|
-
def _prune_hidden_blocks(
|
|
137
|
-
self,
|
|
138
|
-
dataset: vtkMultiBlockDataSet,
|
|
139
|
-
visibility_attributes: vtkCompositeDataDisplayAttributes,
|
|
140
|
-
) -> vtkMultiBlockDataSet:
|
|
141
|
-
# Recursively construct a new multi-block dataset excluding hidden blocks.
|
|
142
|
-
pruned = vtkMultiBlockDataSet()
|
|
143
|
-
pruned.SetNumberOfBlocks(dataset.GetNumberOfBlocks())
|
|
144
|
-
for index in range(dataset.GetNumberOfBlocks()):
|
|
145
|
-
block = dataset.GetBlock(index)
|
|
146
|
-
if block is None:
|
|
147
|
-
continue
|
|
148
|
-
if not visibility_attributes.GetBlockVisibility(block):
|
|
149
|
-
continue
|
|
150
|
-
if isinstance(block, vtkMultiBlockDataSet):
|
|
151
|
-
pruned.SetBlock(
|
|
152
|
-
index, self._prune_hidden_blocks(block, visibility_attributes)
|
|
153
|
-
)
|
|
154
|
-
else:
|
|
155
|
-
pruned.SetBlock(index, block)
|
|
156
|
-
return pruned
|
|
157
|
-
|
|
158
128
|
def SetBlocksVisibility(
|
|
159
129
|
self, data_id: str, block_ids: list[int], visibility: bool
|
|
160
130
|
) -> None:
|
|
@@ -164,16 +134,17 @@ class VtkObjectView(VtkView):
|
|
|
164
134
|
raise Exception("Mapper is not a vtkCompositePolyDataMapper")
|
|
165
135
|
blocks = pipeline.blockDataSets
|
|
166
136
|
visibility_attributes = mapper.GetCompositeDataDisplayAttributes()
|
|
137
|
+
print(f"{visibility_attributes=}", flush=True)
|
|
167
138
|
for block_id in block_ids:
|
|
168
139
|
visibility_attributes.SetBlockVisibility(blocks[block_id], visibility)
|
|
169
|
-
dataset =
|
|
140
|
+
dataset = mapper.GetInputDataObject(0, 0)
|
|
170
141
|
if not isinstance(dataset, vtkMultiBlockDataSet):
|
|
171
142
|
return
|
|
172
143
|
# Re-build a pruned dataset for the dedicated pick mapper
|
|
173
144
|
if pipeline.pick_mapper is None:
|
|
174
145
|
pipeline.pick_mapper = vtkCompositePolyDataMapper()
|
|
175
146
|
pipeline.pick_mapper.SetInputDataObject(
|
|
176
|
-
|
|
147
|
+
pipeline.prune_hidden_blocks(dataset, visibility_attributes)
|
|
177
148
|
)
|
|
178
149
|
|
|
179
150
|
def SetBlocksColor(
|
|
@@ -228,11 +199,9 @@ class VtkObjectView(VtkView):
|
|
|
228
199
|
def highlight(self, pipeline: VtkPipeline) -> None:
|
|
229
200
|
highlight = pipeline.highlight
|
|
230
201
|
self._apply_highlight_style(highlight.actor, highlight.mapper)
|
|
231
|
-
|
|
232
|
-
pipeline.filter.GetOutputPort()
|
|
233
|
-
|
|
234
|
-
else pipeline.reader.GetOutputPort()
|
|
235
|
-
)
|
|
202
|
+
if pipeline.filter.GetNumberOfInputConnections(0) == 0:
|
|
203
|
+
pipeline.filter.SetInputConnection(pipeline.reader.GetOutputPort())
|
|
204
|
+
input_port = pipeline.filter.GetOutputPort()
|
|
236
205
|
highlight.selection.AddNode(highlight.selectionNode)
|
|
237
206
|
highlight.extractSelection.SetInputConnection(0, input_port)
|
|
238
207
|
highlight.extractSelection.SetInputData(1, highlight.selection)
|
|
@@ -2,27 +2,23 @@
|
|
|
2
2
|
import os
|
|
3
3
|
|
|
4
4
|
# Third party imports
|
|
5
|
-
from
|
|
5
|
+
from opengeodeweb_microservice.database.data import Data
|
|
6
|
+
from opengeodeweb_microservice.schemas import get_schemas_dict
|
|
6
7
|
from vtkmodules.vtkIOXML import vtkXMLGenericDataObjectReader, vtkXMLImageDataReader
|
|
7
8
|
from vtkmodules.vtkRenderingCore import (
|
|
9
|
+
vtkColorTransferFunction,
|
|
8
10
|
vtkDataSetMapper,
|
|
9
|
-
vtkActor,
|
|
10
11
|
vtkTexture,
|
|
11
|
-
vtkColorTransferFunction,
|
|
12
12
|
)
|
|
13
|
-
from
|
|
14
|
-
from vtkmodules.vtkCommonExecutionModel import vtkAlgorithm
|
|
15
|
-
from vtkmodules.vtkCommonDataModel import vtkPolyData
|
|
16
|
-
from opengeodeweb_microservice.database.data import Data
|
|
17
|
-
from opengeodeweb_microservice.schemas import get_schemas_dict
|
|
13
|
+
from wslink import register as exportRpc # type: ignore
|
|
18
14
|
|
|
19
15
|
# Local application imports
|
|
16
|
+
from opengeodeweb_viewer.object.object_methods import VtkObjectView
|
|
20
17
|
from opengeodeweb_viewer.utils_functions import (
|
|
21
|
-
validate_schema,
|
|
22
18
|
RpcParams,
|
|
19
|
+
validate_schema,
|
|
23
20
|
)
|
|
24
|
-
from opengeodeweb_viewer.
|
|
25
|
-
from opengeodeweb_viewer.vtk_protocol import VtkPipeline
|
|
21
|
+
from opengeodeweb_viewer.vtk_pipeline import VtkPipeline
|
|
26
22
|
from . import schemas
|
|
27
23
|
|
|
28
24
|
|
|
@@ -50,12 +46,9 @@ class VtkMeshView(VtkObjectView):
|
|
|
50
46
|
reader = vtkXMLGenericDataObjectReader()
|
|
51
47
|
reader.SetFileName(os.path.join(self.DATA_FOLDER_PATH, data_id, file_name))
|
|
52
48
|
reader.Update()
|
|
53
|
-
dataset = reader.GetOutputDataObject(0)
|
|
54
|
-
if dataset:
|
|
55
|
-
dataset.SetObjectName(params.name)
|
|
56
49
|
mapper = vtkDataSetMapper()
|
|
57
|
-
mapper.SetInputConnection(reader.GetOutputPort())
|
|
58
50
|
data = VtkPipeline(reader, mapper)
|
|
51
|
+
self.setup_pipeline(data, params.name)
|
|
59
52
|
self.highlight(data)
|
|
60
53
|
self.registerObject(data_id, file_name, data)
|
|
61
54
|
except Exception as e:
|
|
@@ -107,16 +100,14 @@ class VtkMeshView(VtkObjectView):
|
|
|
107
100
|
texture = vtkTexture()
|
|
108
101
|
texture.SetInputConnection(texture_reader.GetOutputPort())
|
|
109
102
|
texture.InterpolateOn()
|
|
110
|
-
|
|
111
|
-
output = reader.GetOutputAsDataSet()
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
actor = self.get_vtk_pipeline(mesh_id).actor
|
|
119
|
-
actor.SetTexture(texture)
|
|
103
|
+
pipeline = self.get_vtk_pipeline(mesh_id)
|
|
104
|
+
output = pipeline.reader.GetOutputAsDataSet()
|
|
105
|
+
array = output.GetPointData().GetArray(tex_info.texture_name)
|
|
106
|
+
if array:
|
|
107
|
+
output.GetPointData().SetTCoords(array)
|
|
108
|
+
pipeline.filter.Modified()
|
|
109
|
+
pipeline.filter.Update()
|
|
110
|
+
pipeline.actor.SetTexture(texture)
|
|
120
111
|
|
|
121
112
|
def displayAttributeOnVertices(
|
|
122
113
|
self,
|
|
@@ -127,14 +118,15 @@ class VtkMeshView(VtkObjectView):
|
|
|
127
118
|
minimum: float,
|
|
128
119
|
maximum: float,
|
|
129
120
|
) -> None:
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
mapper.
|
|
136
|
-
mapper.
|
|
137
|
-
|
|
121
|
+
pipeline = self.get_vtk_pipeline(data_id)
|
|
122
|
+
pipeline.reader.GetOutputAsDataSet().GetPointData().SetActiveScalars(name)
|
|
123
|
+
pipeline.filter.Update()
|
|
124
|
+
if active_ds := pipeline.mapper.GetInputDataObject(0, 0):
|
|
125
|
+
active_ds.GetPointData().SetActiveScalars(name)
|
|
126
|
+
pipeline.mapper.ScalarVisibilityOn()
|
|
127
|
+
pipeline.mapper.SetScalarModeToUsePointData()
|
|
128
|
+
pipeline.mapper.ColorByArrayComponent(name, item)
|
|
129
|
+
self.setupColorMap(data_id, color_map, minimum, maximum, item)
|
|
138
130
|
|
|
139
131
|
def displayAttributeOnCells(
|
|
140
132
|
self,
|
|
@@ -145,14 +137,15 @@ class VtkMeshView(VtkObjectView):
|
|
|
145
137
|
minimum: float,
|
|
146
138
|
maximum: float,
|
|
147
139
|
) -> None:
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
mapper.
|
|
154
|
-
mapper.
|
|
155
|
-
|
|
140
|
+
pipeline = self.get_vtk_pipeline(data_id)
|
|
141
|
+
pipeline.reader.GetOutputAsDataSet().GetCellData().SetActiveScalars(name)
|
|
142
|
+
pipeline.filter.Update()
|
|
143
|
+
if active_ds := pipeline.mapper.GetInputDataObject(0, 0):
|
|
144
|
+
active_ds.GetCellData().SetActiveScalars(name)
|
|
145
|
+
pipeline.mapper.ScalarVisibilityOn()
|
|
146
|
+
pipeline.mapper.SetScalarModeToUseCellData()
|
|
147
|
+
pipeline.mapper.ColorByArrayComponent(name, item)
|
|
148
|
+
self.setupColorMap(data_id, color_map, minimum, maximum, item)
|
|
156
149
|
|
|
157
150
|
def displayScalarRange(self, data_id: str, minimum: float, maximum: float) -> None:
|
|
158
151
|
print(
|
|
@@ -164,10 +157,17 @@ class VtkMeshView(VtkObjectView):
|
|
|
164
157
|
data.mapper.SetUseLookupTableScalarRange(False)
|
|
165
158
|
|
|
166
159
|
def setupColorMap(
|
|
167
|
-
self,
|
|
160
|
+
self,
|
|
161
|
+
data_id: str,
|
|
162
|
+
points: list[float],
|
|
163
|
+
minimum: float,
|
|
164
|
+
maximum: float,
|
|
165
|
+
item: int = 0,
|
|
168
166
|
) -> None:
|
|
169
167
|
data = self.get_vtk_pipeline(data_id)
|
|
170
168
|
lut = vtkColorTransferFunction()
|
|
169
|
+
lut.SetVectorModeToComponent()
|
|
170
|
+
lut.SetVectorComponent(item)
|
|
171
171
|
data.mapper.SetLookupTable(lut)
|
|
172
172
|
|
|
173
173
|
if not points:
|
|
@@ -1,33 +1,31 @@
|
|
|
1
1
|
# Standard library imports
|
|
2
2
|
import os
|
|
3
|
+
from typing import Optional, Protocol, TypedDict, cast
|
|
3
4
|
|
|
4
5
|
# Third party imports
|
|
6
|
+
from opengeodeweb_microservice.schemas import get_schemas_dict
|
|
5
7
|
from vtkmodules.vtkCommonDataModel import (
|
|
6
|
-
vtkCompositeDataSet,
|
|
7
8
|
vtkBoundingBox,
|
|
9
|
+
vtkCompositeDataSet,
|
|
8
10
|
vtkDataSet,
|
|
9
|
-
vtkSelectionNode,
|
|
10
11
|
)
|
|
12
|
+
from vtkmodules.vtkCommonDataModel import vtkMultiBlockDataSet
|
|
13
|
+
from vtkmodules.vtkFiltersCore import vtkAppendDataSets
|
|
14
|
+
from vtkmodules.vtkIOXML import vtkXMLMultiBlockDataReader
|
|
11
15
|
from vtkmodules.vtkRenderingCore import (
|
|
12
|
-
vtkCompositePolyDataMapper,
|
|
13
16
|
vtkCompositeDataDisplayAttributes,
|
|
14
|
-
|
|
17
|
+
vtkCompositePolyDataMapper,
|
|
15
18
|
)
|
|
16
|
-
from vtkmodules.vtkFiltersCore import vtkAppendDataSets
|
|
17
|
-
from vtkmodules.vtkIOXML import vtkXMLMultiBlockDataReader
|
|
18
|
-
from vtkmodules.vtkFiltersGeometry import vtkGeometryFilter
|
|
19
19
|
from wslink import register as exportRpc # type: ignore
|
|
20
|
-
from opengeodeweb_microservice.schemas import get_schemas_dict
|
|
21
20
|
|
|
22
21
|
# Local application imports
|
|
22
|
+
from opengeodeweb_viewer.object.object_methods import VtkObjectView
|
|
23
23
|
from opengeodeweb_viewer.utils_functions import (
|
|
24
|
-
validate_schema,
|
|
25
|
-
RpcParams,
|
|
26
24
|
deterministic_color,
|
|
25
|
+
RpcParams,
|
|
26
|
+
validate_schema,
|
|
27
27
|
)
|
|
28
|
-
from opengeodeweb_viewer.
|
|
29
|
-
from opengeodeweb_viewer.vtk_protocol import VtkPipeline, BlockStyle
|
|
30
|
-
from typing import Optional, List, TypedDict, Protocol
|
|
28
|
+
from opengeodeweb_viewer.vtk_pipeline import VtkPipeline
|
|
31
29
|
from . import schemas
|
|
32
30
|
|
|
33
31
|
|
|
@@ -60,78 +58,6 @@ class VtkModelView(VtkObjectView):
|
|
|
60
58
|
def __init__(self) -> None:
|
|
61
59
|
super().__init__()
|
|
62
60
|
|
|
63
|
-
def _get_block_style(self, pipeline: VtkPipeline, block_id: int) -> BlockStyle:
|
|
64
|
-
if block_id not in pipeline.block_styles:
|
|
65
|
-
style = BlockStyle(
|
|
66
|
-
name="",
|
|
67
|
-
attribute_location="point",
|
|
68
|
-
points=[],
|
|
69
|
-
minimum=0.0,
|
|
70
|
-
maximum=1.0,
|
|
71
|
-
item=0,
|
|
72
|
-
)
|
|
73
|
-
pipeline.block_styles[block_id] = style
|
|
74
|
-
return pipeline.block_styles[block_id]
|
|
75
|
-
|
|
76
|
-
def updateBlockColors(self, pipeline: VtkPipeline, block_id: int) -> None:
|
|
77
|
-
block = pipeline.blockDataSets[block_id]
|
|
78
|
-
if not isinstance(block, vtkDataSet):
|
|
79
|
-
return
|
|
80
|
-
|
|
81
|
-
style = self._get_block_style(pipeline, block_id)
|
|
82
|
-
if not style["name"]:
|
|
83
|
-
block.GetPointData().SetActiveScalars("")
|
|
84
|
-
block.GetCellData().SetActiveScalars("")
|
|
85
|
-
return
|
|
86
|
-
|
|
87
|
-
field_data = (
|
|
88
|
-
block.GetPointData()
|
|
89
|
-
if style["attribute_location"] == "point"
|
|
90
|
-
else block.GetCellData()
|
|
91
|
-
)
|
|
92
|
-
scalar_array = field_data.GetArray(style["name"])
|
|
93
|
-
if not scalar_array:
|
|
94
|
-
return
|
|
95
|
-
|
|
96
|
-
lut = vtkColorTransferFunction()
|
|
97
|
-
points = style["points"]
|
|
98
|
-
minimum = style["minimum"]
|
|
99
|
-
maximum = style["maximum"]
|
|
100
|
-
if points:
|
|
101
|
-
x_min, x_max = points[0], points[-4]
|
|
102
|
-
span = x_max - x_min
|
|
103
|
-
for i in range(0, len(points), 4):
|
|
104
|
-
x, r, g, b = points[i : i + 4]
|
|
105
|
-
new_x = (
|
|
106
|
-
minimum + (x - x_min) / span * (maximum - minimum)
|
|
107
|
-
if span
|
|
108
|
-
else minimum
|
|
109
|
-
)
|
|
110
|
-
lut.AddRGBPoint(new_x, r, g, b)
|
|
111
|
-
else:
|
|
112
|
-
lut.AddRGBPoint(minimum, 0, 0, 0)
|
|
113
|
-
lut.AddRGBPoint(maximum, 1, 1, 1)
|
|
114
|
-
|
|
115
|
-
lut.SetRange(minimum, maximum)
|
|
116
|
-
rgba_colors = lut.MapScalars(scalar_array, 0, style.get("item", 0))
|
|
117
|
-
rgba_colors.SetName(f"__colors_{style['name']}")
|
|
118
|
-
|
|
119
|
-
field_data.AddArray(rgba_colors)
|
|
120
|
-
field_data.SetActiveScalars(rgba_colors.GetName())
|
|
121
|
-
|
|
122
|
-
other_field_data = (
|
|
123
|
-
block.GetCellData()
|
|
124
|
-
if style["attribute_location"] == "point"
|
|
125
|
-
else block.GetPointData()
|
|
126
|
-
)
|
|
127
|
-
other_field_data.SetActiveScalars("")
|
|
128
|
-
|
|
129
|
-
mapper = pipeline.mapper
|
|
130
|
-
mapper.ScalarVisibilityOn()
|
|
131
|
-
mapper.SetColorModeToDirectScalars()
|
|
132
|
-
mapper.SetScalarModeToDefault()
|
|
133
|
-
mapper.Modified()
|
|
134
|
-
|
|
135
61
|
def apply_color(
|
|
136
62
|
self,
|
|
137
63
|
pipeline: VtkPipeline,
|
|
@@ -143,13 +69,14 @@ class VtkModelView(VtkObjectView):
|
|
|
143
69
|
if not isinstance(mapper, vtkCompositePolyDataMapper):
|
|
144
70
|
return []
|
|
145
71
|
attr = mapper.GetCompositeDataDisplayAttributes()
|
|
72
|
+
print(f"{attr=}", flush=True)
|
|
146
73
|
colors: list[ColorResult] = []
|
|
147
74
|
for block_id in block_ids:
|
|
148
75
|
block_dataset = pipeline.blockDataSets[block_id]
|
|
149
76
|
if isinstance(block_dataset, vtkDataSet):
|
|
150
77
|
block_dataset.GetPointData().SetActiveScalars("")
|
|
151
78
|
block_dataset.GetCellData().SetActiveScalars("")
|
|
152
|
-
|
|
79
|
+
pipeline.get_block_style(block_id)["name"] = ""
|
|
153
80
|
if color_mode == "random":
|
|
154
81
|
geode_id = pipeline.blockGeodeIds[block_id]
|
|
155
82
|
red, green, blue = deterministic_color(str(geode_id))
|
|
@@ -191,14 +118,14 @@ class VtkModelView(VtkObjectView):
|
|
|
191
118
|
) -> None:
|
|
192
119
|
pipeline = self.get_vtk_pipeline(data_id)
|
|
193
120
|
for block_id in block_ids:
|
|
194
|
-
style =
|
|
121
|
+
style = pipeline.get_block_style(block_id)
|
|
195
122
|
style["name"] = name
|
|
196
123
|
style["item"] = item
|
|
197
124
|
style["attribute_location"] = "point"
|
|
198
125
|
style["points"] = color_map
|
|
199
126
|
style["minimum"] = minimum
|
|
200
127
|
style["maximum"] = maximum
|
|
201
|
-
|
|
128
|
+
pipeline.update_block_colors(block_id)
|
|
202
129
|
|
|
203
130
|
def displayAttributeOnCells(
|
|
204
131
|
self,
|
|
@@ -212,14 +139,14 @@ class VtkModelView(VtkObjectView):
|
|
|
212
139
|
) -> None:
|
|
213
140
|
pipeline = self.get_vtk_pipeline(data_id)
|
|
214
141
|
for block_id in block_ids:
|
|
215
|
-
style =
|
|
142
|
+
style = pipeline.get_block_style(block_id)
|
|
216
143
|
style["name"] = name
|
|
217
144
|
style["item"] = item
|
|
218
145
|
style["attribute_location"] = "cell"
|
|
219
146
|
style["points"] = color_map
|
|
220
147
|
style["minimum"] = minimum
|
|
221
148
|
style["maximum"] = maximum
|
|
222
|
-
|
|
149
|
+
pipeline.update_block_colors(block_id)
|
|
223
150
|
|
|
224
151
|
def setupColorMap(
|
|
225
152
|
self,
|
|
@@ -230,11 +157,11 @@ class VtkModelView(VtkObjectView):
|
|
|
230
157
|
maximum: float,
|
|
231
158
|
) -> None:
|
|
232
159
|
for block_id in block_ids:
|
|
233
|
-
style =
|
|
160
|
+
style = pipeline.get_block_style(block_id)
|
|
234
161
|
style["points"] = points
|
|
235
162
|
style["minimum"] = minimum
|
|
236
163
|
style["maximum"] = maximum
|
|
237
|
-
|
|
164
|
+
pipeline.update_block_colors(block_id)
|
|
238
165
|
|
|
239
166
|
@exportRpc(model_prefix + model_schemas_dict["register"]["rpc"])
|
|
240
167
|
def registerModel(self, rpc_params: RpcParams) -> None:
|
|
@@ -250,17 +177,13 @@ class VtkModelView(VtkObjectView):
|
|
|
250
177
|
reader = vtkXMLMultiBlockDataReader()
|
|
251
178
|
reader.SetFileName(os.path.join(self.DATA_FOLDER_PATH, data_id, file_name))
|
|
252
179
|
reader.Update()
|
|
253
|
-
filter = vtkGeometryFilter()
|
|
254
|
-
filter.SetInputConnection(reader.GetOutputPort())
|
|
255
|
-
filter.Update()
|
|
256
|
-
geometry_output = filter.GetOutputDataObject(0)
|
|
257
|
-
if geometry_output:
|
|
258
|
-
geometry_output.SetObjectName(params.name)
|
|
259
180
|
mapper = vtkCompositePolyDataMapper()
|
|
260
|
-
mapper.SetInputDataObject(geometry_output)
|
|
261
181
|
attributes = vtkCompositeDataDisplayAttributes()
|
|
262
182
|
mapper.SetCompositeDataDisplayAttributes(attributes)
|
|
263
|
-
data = VtkPipeline(reader, mapper
|
|
183
|
+
data = VtkPipeline(reader, mapper)
|
|
184
|
+
geometry_output = cast(
|
|
185
|
+
vtkMultiBlockDataSet, self.setup_pipeline(data, params.name)
|
|
186
|
+
)
|
|
264
187
|
self.highlight(data)
|
|
265
188
|
iterator = geometry_output.NewTreeIterator()
|
|
266
189
|
iterator.InitTraversal()
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"rpc": "clipping_planes",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"ids": {
|
|
6
|
+
"type": "array",
|
|
7
|
+
"items": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"minLength": 32,
|
|
10
|
+
"maxLength": 32
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"planes": {
|
|
14
|
+
"type": "array",
|
|
15
|
+
"items": {
|
|
16
|
+
"type": "object",
|
|
17
|
+
"properties": {
|
|
18
|
+
"origin": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "number"
|
|
22
|
+
},
|
|
23
|
+
"minItems": 3,
|
|
24
|
+
"maxItems": 3
|
|
25
|
+
},
|
|
26
|
+
"normal": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"items": {
|
|
29
|
+
"type": "number"
|
|
30
|
+
},
|
|
31
|
+
"minItems": 3,
|
|
32
|
+
"maxItems": 3
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"required": [
|
|
36
|
+
"origin",
|
|
37
|
+
"normal"
|
|
38
|
+
],
|
|
39
|
+
"additionalProperties": false
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"required": [
|
|
44
|
+
"ids",
|
|
45
|
+
"planes"
|
|
46
|
+
],
|
|
47
|
+
"additionalProperties": false
|
|
48
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from dataclasses_json import DataClassJsonMixin
|
|
2
|
+
from dataclasses import dataclass
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@dataclass
|
|
7
|
+
class Plane(DataClassJsonMixin):
|
|
8
|
+
def __post_init__(self) -> None:
|
|
9
|
+
print(self, flush=True)
|
|
10
|
+
|
|
11
|
+
normal: List[float]
|
|
12
|
+
origin: List[float]
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@dataclass
|
|
16
|
+
class ClippingPlanes(DataClassJsonMixin):
|
|
17
|
+
def __post_init__(self) -> None:
|
|
18
|
+
print(self, flush=True)
|
|
19
|
+
|
|
20
|
+
ids: List[str]
|
|
21
|
+
planes: List[Plane]
|
|
@@ -31,7 +31,7 @@ from opengeodeweb_viewer.utils_functions import (
|
|
|
31
31
|
RpcParams,
|
|
32
32
|
)
|
|
33
33
|
from opengeodeweb_viewer.vtk_protocol import VtkView
|
|
34
|
-
from . import schemas
|
|
34
|
+
from opengeodeweb_viewer.rpc.viewer import schemas
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
class VtkViewerView(VtkView):
|
|
@@ -362,6 +362,14 @@ class VtkViewerView(VtkView):
|
|
|
362
362
|
"attributes": data_attributes,
|
|
363
363
|
}
|
|
364
364
|
|
|
365
|
+
@exportRpc(viewer_prefix + viewer_schemas_dict["clipping_planes"]["rpc"])
|
|
366
|
+
def setClippingPlanes(self, rpc_params: RpcParams) -> None:
|
|
367
|
+
validate_schema(
|
|
368
|
+
rpc_params, self.viewer_schemas_dict["clipping_planes"], self.viewer_prefix
|
|
369
|
+
)
|
|
370
|
+
params = schemas.ClippingPlanes.from_dict(rpc_params)
|
|
371
|
+
self.set_clipping_planes(params.ids, params.planes)
|
|
372
|
+
|
|
365
373
|
@exportRpc(viewer_prefix + viewer_schemas_dict["set_z_scaling"]["rpc"])
|
|
366
374
|
def setZScaling(self, rpc_params: RpcParams) -> None:
|
|
367
375
|
validate_schema(
|