forge3d: Rust/WebGPU 3D maps with P1 asset layers, diagnostics, labels, 3D Tiles review, and reproducible scene bundles
Project description
Python-first terrain and scene rendering on top of Rust + WebGPU.
Interactive viewer, offscreen rendering, overlays, point clouds, notebooks, and production outputs.
Install
pip install forge3d
Optional extras:
pip install "forge3d[jupyter]" # notebook widget support
pip install "forge3d[datasets]" # on-demand sample datasets
pip install "forge3d[all]" # everything
Quick Start
import forge3d as f3d
dem_path = f3d.fetch_dem("rainier")
with f3d.open_viewer_async(terrain_path=dem_path, width=1440, height=900) as viewer:
viewer.set_z_scale(0.1)
viewer.set_orbit_camera(phi_deg=28, theta_deg=49, radius=5400, fov_deg=42)
viewer.set_sun(azimuth_deg=302, elevation_deg=24)
viewer.snapshot("rainier.png", width=1920, height=1080)
What forge3d Covers
Open-source workflow:
- Interactive terrain viewing through
open_viewer_async()andViewerHandle - Terrain snapshots from GeoTIFF or
numpyDEM inputs - Raster overlays, vector overlays, labels, and camera automation
- LAZ/COPC/EPT point-cloud loading
- COG access, CRS helpers, datasets, presets, and notebook widgets
- Native/offscreen rendering with
Scene,Session,TerrainRenderer, andTerrainRenderParams - Geometry, mesh, vector, SDF, path-tracing, lighting, and terrain scatter helpers
Pro workflow:
MapPlate,Legend,ScaleBar, andNorthArrowfor cartographic composition- SVG/PDF vector export
- Building import pipelines for GeoJSON, CityJSON, and 3D Tiles workflows
- Mapbox-style import and scene bundles
Documentation Map
- Quickstart: install, first viewer session, first overlay, first notebook widget
- Feature Map: repo-wide overview of the supported workflows
- Examples Catalog: every script and notebook in
examples/ - Tutorials: guided GIS and Python tracks
- Gallery: finished recipes and visuals
- API Reference: the full public Python surface
Examples
The repo ships a broad set of runnable examples in examples/, including:
- interactive terrain scenes and raster overlays
- Mapbox-style, labels, and picking demos
- point-cloud and building viewers
- camera animation and terrain camera rigs
- COG streaming and offscreen terrain rendering
- pure-Python composition examples and notebooks
Run any script with python examples/<name>.py --help when it exposes CLI options.
License
The open-source core is released under Apache-2.0 OR MIT. Pro-gated features require a commercial license key set with forge3d.set_license_key(...).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file forge3d-1.25.0.tar.gz.
File metadata
- Download URL: forge3d-1.25.0.tar.gz
- Upload date:
- Size: 2.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0fb8f64f75dc56062a4e228de10a5cd1ae7f2da77ec2a80c32f953acc1ee4cf
|
|
| MD5 |
20ab3af934820cbb7b73e2a0073120b9
|
|
| BLAKE2b-256 |
a6e275e344ff24409d142efb280f313e0662f969b20477aa88b002eb7060f6fa
|
File details
Details for the file forge3d-1.25.0-cp310-abi3-win_amd64.whl.
File metadata
- Download URL: forge3d-1.25.0-cp310-abi3-win_amd64.whl
- Upload date:
- Size: 7.1 MB
- Tags: CPython 3.10+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f3733d721c88f2d868248b43147120431f63ffbf1af88fbfe6ec1d6adf703f95
|
|
| MD5 |
5981b37f4b8151ad44b90552f6bea281
|
|
| BLAKE2b-256 |
a74c33351bd7ffde1054e23de02cc3f26e92b8bf40edc8a4f8ea0f1af980e64c
|
File details
Details for the file forge3d-1.25.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: forge3d-1.25.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 7.9 MB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbbf89bce054a920346c06c2d184c11bd800b7414b01bed316e0e01759b8eab0
|
|
| MD5 |
9816f168500243d97755896e30bdeb40
|
|
| BLAKE2b-256 |
07db5437a96f3e36ee35fb11a96f32093a73f605c27be681494e313786d2a352
|
File details
Details for the file forge3d-1.25.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: forge3d-1.25.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 7.7 MB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8137552717105c6ed7dc179a4253a6e13a14c8a5b9c93faca0b8aa34728fb278
|
|
| MD5 |
5c8dbc6f2ff7d38ce5e2220c3cf42bff
|
|
| BLAKE2b-256 |
756ac1866cc86836bdf725a86f3355474cc12884221cc02ba8f6f57777093cbe
|
File details
Details for the file forge3d-1.25.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: forge3d-1.25.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 11.4 MB
- Tags: CPython 3.10+, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99d365cec8c72b0d856fc755e656bea844de319880eda3d0dda272dfd6c8fe51
|
|
| MD5 |
26462392c841eb35d35305728a6a5b61
|
|
| BLAKE2b-256 |
47645b4e47a4f09c2b155ffec3548ee87cc5df88f3389a89a3f29959211d8a3f
|