Expand description
Safe Rust bindings to manifold3d — a geometry kernel for constructive solid geometry (CSG).
This crate provides safe, ergonomic wrappers around the manifold3d C API. For details on the underlying algorithms and behavior, see the upstream documentation.
Manifold— 3D solid with boolean operations (union, difference, intersection)CrossSection— 2D region with offset, boolean, and hull operationsMeshGL64/MeshGL— mesh data transfer (f64 and f32 precision)triangulate_polygons— constrained Delaunay triangulation of 2D polygons
§Key features
- f64 precision: Uses MeshGL64 to avoid f32 precision loss
Send+Syncsafe: All types can be moved across threads and shared for concurrent reads- Memory safe: All C handles are freed automatically via
Drop
Re-exports§
pub use bounding_box::BoundingBox;pub use cross_section::CrossSection;pub use cross_section::FillRule;pub use cross_section::JoinType;pub use cross_section::Rect2;pub use manifold::Manifold;pub use manifold::get_circular_segments;pub use manifold::reserve_ids;pub use manifold::reset_to_circular_defaults;pub use manifold::set_circular_segments;pub use manifold::set_min_circular_angle;pub use manifold::set_min_circular_edge_length;pub use mesh::MeshGL;pub use mesh::MeshGL64;pub use ray::RayHit;pub use rect::Rect;pub use triangulation::triangulate_polygons;pub use types::CsgError;
Modules§
- bounding_
box - 3D axis-aligned bounding box wrapping
ManifoldBox. - cross_
section - Safe wrapper around a manifold3d CrossSection object (2D region).
- manifold
- Safe wrapper around a manifold3d Manifold object (3D solid).
- mesh
- Safe wrappers for manifold3d mesh data types.
- ray
- Ray casting against manifold solids.
- rect
- 2D axis-aligned bounding rectangle wrapping
ManifoldRect. - triangulation
- Constrained Delaunay triangulation of 2D polygons.
- types
- Common types and error definitions.
Enums§
- OpType
- Boolean operation type for
manifold_batch_boolean.