-
Notifications
You must be signed in to change notification settings - Fork 0
Update README with feature table and usage examples #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,48 +1,136 @@ | ||||||
|  | ||||||
|  | ||||||
|
|
||||||
| #### Examples to see in the CLI: | ||||||
| # meshing | ||||||
|
|
||||||
| A Rust library for 2D/3D mesh generation with multiple algorithms, export formats, and WebAssembly support. | ||||||
|
|
||||||
| ## Features | ||||||
|
|
||||||
| ### Mesh Generation Algorithms | ||||||
|
|
||||||
| | Algorithm | Module | Input | Output | Description | | ||||||
| |---|---|---|---|---| | ||||||
| | Bowyer-Watson 2D | `bowyer_watson` | `Vec<Point2D>` | `Vec<Triangle>` | Delaunay triangulation of 2D point sets | | ||||||
| | Bowyer-Watson 3D | `bowyer_watson_3d` | `Vec<Point3D>` | `Vec<Tetrahedron>` | Delaunay tetrahedralization of 3D point sets | | ||||||
| | Advancing Front | `advancing_front` | `Vec<Face>`, `Vec<Point3D>` | `Vec<Tetrahedron>` | Boundary-to-volume tetrahedral meshing | | ||||||
| | Octree | `octree` | Bounding box, depth, predicate | `Vec<Tetrahedron>` | Recursive spatial subdivision meshing | | ||||||
| | Marching Cubes | `marching_cubes` | Grid resolution, scalar field, iso-value | `Vec<Face>` | Isosurface extraction from scalar fields | | ||||||
| | Voxel Mesh | `voxel_mesh` | Bounding box, resolution, predicate | `Vec<Tetrahedron>` | Uniform grid volume meshing | | ||||||
| | Delaunay Refinement | `delaunay_refinement` | `Vec<Point3D>`, quality threshold | `Vec<Tetrahedron>` | Ruppert's algorithm for mesh quality improvement | | ||||||
|
|
||||||
| ### Pipeline Compositions | ||||||
|
|
||||||
| | Function | Description | | ||||||
| |---|---| | ||||||
| | `surface_to_volume` | Marching Cubes + Advancing Front: implicit surface to volume mesh | | ||||||
| | `octree_refined` | Octree + Delaunay Refinement: spatial subdivision with quality improvement | | ||||||
| | `voxel_refined` | Voxel Mesh + Delaunay Refinement: uniform grid with quality improvement | | ||||||
| | `refine_tetrahedra` | Apply Delaunay Refinement to any existing tetrahedral mesh | | ||||||
|
|
||||||
| ### Export Formats | ||||||
|
|
||||||
| | Format | Functions | Description | | ||||||
| |---|---|---| | ||||||
| | STL | `triangles_to_stl`, `faces_to_stl`, `tetrahedra_to_stl` | Binary STL with automatic surface extraction | | ||||||
|
||||||
| | STL | `triangles_to_stl`, `faces_to_stl`, `tetrahedra_to_stl` | Binary STL with automatic surface extraction | | |
| | STL | `triangles_to_stl`, `faces_to_stl`, `tetrahedra_to_stl` | ASCII STL text format with automatic surface extraction | |
Copilot
AI
Feb 7, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The WASM bindings live under meshing::wasm and are conditionally compiled for wasm32 only (#[cfg(target_arch = "wasm32")]). It would help to mention this (and any build steps like wasm-pack) so native users don’t look for these APIs in non-wasm builds.
Copilot
AI
Feb 7, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The statement that “Benchmarks cover all algorithms” doesn’t match the current Criterion suite (e.g., there’s no benchmark for the 2D bowyer_watson API). Either adjust this wording to reflect what’s actually covered or add the missing benchmarks.
| Benchmarks cover all algorithms at various input sizes using Criterion. | |
| Benchmarks cover several core algorithms at various input sizes using Criterion. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The mesh generation table column label
Moduleis misleading forbowyer_watson/bowyer_watson_3d, which are crate-root functions (not modules). Consider renaming the column to something likeAPI/Path, or using fully-qualified paths (e.g.,meshing::bowyer_watson).