Multiple Point Clouds¶
This notebook demonstrates loading multiple point clouds into a single viewer, toggling visibility, and navigating between them.
In [ ]:
Copied!
# %pip install anymap-ts
# %pip install anymap-ts
In [ ]:
Copied!
from anymap_ts import PotreeViewer
from anymap_ts import PotreeViewer
Create Viewer¶
Create a viewer with a higher point budget to accommodate multiple point clouds.
In [ ]:
Copied!
viewer = PotreeViewer(
height="600px",
point_budget=3_000_000,
background="#0f0f23",
edl_enabled=True,
)
viewer
viewer = PotreeViewer(
height="600px",
point_budget=3_000_000,
background="#0f0f23",
edl_enabled=True,
)
viewer
Load Multiple Point Clouds¶
Load two different point clouds into the same viewer. Each is given a unique name for later reference.
In [ ]:
Copied!
viewer.load_point_cloud(
url="https://potree.github.io/potree/pointclouds/lion_takanawa/cloud.js",
name="lion",
point_size=1.0,
point_size_type="adaptive",
shape="circle",
)
viewer.load_point_cloud(
url="https://potree.github.io/potree/pointclouds/lion_takanawa/cloud.js",
name="lion",
point_size=1.0,
point_size_type="adaptive",
shape="circle",
)
In [ ]:
Copied!
viewer.load_point_cloud(
url="https://potree.github.io/potree/pointclouds/vol_total/cloud.js",
name="sorvilier",
point_size=1.0,
point_size_type="adaptive",
shape="circle",
)
viewer.load_point_cloud(
url="https://potree.github.io/potree/pointclouds/vol_total/cloud.js",
name="sorvilier",
point_size=1.0,
point_size_type="adaptive",
shape="circle",
)
Toggle Visibility¶
Show or hide individual point clouds by name.
In [ ]:
Copied!
# Hide the lion point cloud
viewer.set_point_cloud_visibility("lion", False)
# Hide the lion point cloud
viewer.set_point_cloud_visibility("lion", False)
In [ ]:
Copied!
# Show it again
viewer.set_point_cloud_visibility("lion", True)
# Show it again
viewer.set_point_cloud_visibility("lion", True)
In [ ]:
Copied!
# Hide the terrain dataset
viewer.set_point_cloud_visibility("sorvilier", False)
# Hide the terrain dataset
viewer.set_point_cloud_visibility("sorvilier", False)
In [ ]:
Copied!
# Show both
viewer.set_point_cloud_visibility("sorvilier", True)
# Show both
viewer.set_point_cloud_visibility("sorvilier", True)
Navigate Between Point Clouds¶
Fly to a specific point cloud to frame it in the viewport.
In [ ]:
Copied!
# Fly to the lion
viewer.fly_to_point_cloud("lion")
# Fly to the lion
viewer.fly_to_point_cloud("lion")
In [ ]:
Copied!
# Fly to the terrain
viewer.fly_to_point_cloud("sorvilier")
# Fly to the terrain
viewer.fly_to_point_cloud("sorvilier")
In [ ]:
Copied!
# Fit all point clouds in view
viewer.fly_to_point_cloud()
# Fit all point clouds in view
viewer.fly_to_point_cloud()
Remove a Point Cloud¶
Remove a point cloud from the viewer entirely.
In [ ]:
Copied!
viewer.remove_point_cloud("sorvilier")
viewer.remove_point_cloud("sorvilier")
In [ ]:
Copied!
# Check remaining point clouds
viewer.point_clouds
# Check remaining point clouds
viewer.point_clouds
Adjust Global Settings¶
Settings like point size and point budget apply to all loaded point clouds.
In [ ]:
Copied!
viewer.set_point_size(2.0)
viewer.set_background("#1a1a2e")
viewer.set_point_size(2.0)
viewer.set_background("#1a1a2e")
In [ ]:
Copied!
viewer.reset_camera()
viewer.reset_camera()