ThreeCrate Reconstruction
Surface reconstruction algorithms for generating meshes from point clouds.
Algorithms
- Poisson Surface Reconstruction: Watertight meshes from oriented point clouds; configurable octree depth
- Ball Pivoting Algorithm (BPA): Fast reconstruction for uniformly sampled clouds; multi-scale and adaptive radius
- Alpha Shapes: Non-convex surface extraction via alpha complex; multiple levels of detail
- Delaunay Triangulation: Complete 3D triangulation with multiple projection methods
- Marching Cubes: Volumetric/implicit surface to mesh conversion
- Moving Least Squares (MLS): Smooth surface fitting with multiple weight functions
- Unified Pipeline:
auto_reconstruct()— automatic algorithm selection based on point cloud characteristics, with quality metrics and validation
Usage
Add this to your Cargo.toml:
[]
= "0.6.0"
= "0.6.0"
Example
use ;
use PointCloud;
// Automatic algorithm selection
let mesh = auto_reconstruct?;
println!;
// Poisson reconstruction
let mesh = poisson_reconstruction_default?;
// Ball pivoting with custom config
let config = BallPivotingConfig ;
let mesh = ball_pivoting_reconstruction?;
Algorithm Details
Poisson Parameters
- Octree Depth: Controls mesh resolution (6-10 recommended)
- Sample Density: Point density factor (0.5-2.0)
- Confidence Threshold: Quality filtering (0.0-1.0)
Ball Pivoting Parameters
- Ball Radius: Reconstruction radius (depends on point density)
- Multi-scale: Adaptive radius selection for varying densities
Requirements
- Point clouds with estimated normals produce the best results with Poisson and MLS
- Sufficient point density relative to the ball radius for BPA
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.