A collection of algorithms for iso-surface extraction on GPU. Supports pytorch.
Project description
isoext
GPU-accelerated iso-surface extraction for PyTorch
isoext is a high-performance library for extracting surfaces from scalar fields using CUDA.
Features
- Marching Cubes — Fast triangular mesh extraction (about 5 ms for a 512³ grid on an RTX 5090)
- Dual Contouring — Triangle meshes with sharp feature preservation
- Flexible Grids — Dense uniform grids and memory-efficient sparse grids
- Interactive Viewer — View meshes in the browser, built on viser
- SDF Utilities — SDF primitives and CSG operations
Installation
Requires PyTorch with CUDA support; building from source needs CUDA 12.4+.
pip install isoext
Quick Start
import isoext
from isoext import viewer
grid = isoext.UniformGrid([256, 256, 256])
grid.set_values(grid.get_points().norm(dim=-1) - 0.8) # Sphere
vertices, faces = isoext.marching_cubes(grid)
server = viewer.show(vertices, faces) # opens the mesh in the browser
isoext.write_obj("sphere.obj", vertices, faces)
Documentation
See the full documentation for guides on grids, extraction methods, and the API reference.
License
MIT License. See LICENSE for details.
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
isoext-0.7.0.tar.gz
(23.3 MB
view details)
File details
Details for the file isoext-0.7.0.tar.gz.
File metadata
- Download URL: isoext-0.7.0.tar.gz
- Upload date:
- Size: 23.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35aad265bb760484fbe4b32caf98693a594c792be2e6e66c0a9fd17f6516835d
|
|
| MD5 |
2cc5d7a51c7f3a8f4f9fb582054e69ab
|
|
| BLAKE2b-256 |
095f4e1170059290081a3c291c68ab89e5678579a7b8baf778692df283cc7791
|