Skip to main content

Crate manifold_csg

Crate manifold_csg 

Source
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 operations
  • MeshGL64 / 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 + Sync safe: 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.