| Crates.io | threecrate-algorithms |
| lib.rs | threecrate-algorithms |
| version | 0.5.0 |
| created_at | 2025-07-09 10:54:23.346016+00 |
| updated_at | 2025-09-27 10:22:08.297107+00 |
| description | Algorithms for 3D point cloud and mesh processing |
| homepage | https://github.com/rajgandhi1/threecrate.git |
| repository | https://github.com/rajgandhi1/threecrate.git |
| max_upload_size | |
| id | 1744745 |
| size | 159,746 |
High-performance algorithms for 3D point cloud and mesh processing.
Add this to your Cargo.toml:
[dependencies]
threecrate-algorithms = "0.1.0"
threecrate-core = "0.1.0"
use threecrate_core::{PointCloud, Point3f};
use threecrate_algorithms::{icp_registration, estimate_normals, plane_segmentation_ransac};
// Load or create point clouds
let source = PointCloud::from_points(vec![/* points */]);
let target = PointCloud::from_points(vec![/* points */]);
// ICP registration
let result = icp_registration(&source, &target, 50, 0.001, 1.0)?;
println!("Registration converged: {}", result.converged);
// Estimate normals
let normals = estimate_normals(&source, 10)?;
// RANSAC plane segmentation
let plane_result = plane_segmentation_ransac(&source, 1000, 0.01)?;
println!("Found {} inliers", plane_result.inliers.len());
This project is licensed under either of
at your option.