| Crates.io | f3l_features |
| lib.rs | f3l_features |
| version | 0.2.3 |
| created_at | 2024-05-17 00:15:01.973423+00 |
| updated_at | 2025-04-01 00:39:32.608325+00 |
| description | 3D Point Cloud Library |
| homepage | |
| repository | https://github.com/Donvlouss/f3l |
| max_upload_size | |
| id | 1242667 |
| size | 79,537 |
Data Features.
let obb = OBB::compute(&vertices);
// Get OBB 8 corners
let p0 = obb.center
- obb.primary * obb.length[0]
- obb.secondary * obb.length[1]
- obb.tertiary * obb.length[2];
let p1 = p0 + obb.primary * obb.length[0] * 2.;
let p2 = p0 + obb.secondary * obb.length[1] * 2.;
let p3 = p0 + obb.tertiary * obb.length[2] * 2.;
let p4 = p2 + obb.primary * obb.length[0] * 2.;
let p5 = p1 + obb.tertiary * obb.length[2] * 2.;
let p6 = p2 + obb.tertiary * obb.length[2] * 2.;
let p7 = p4 + obb.tertiary * obb.length[2] * 2.;
Normal Search Method [KDTree]
// Radius
let mut estimator = NormalEstimation::new(SearchBy::Radius(0.08f32));
// KNN
let mut estimator = NormalEstimation::new(SearchBy::Count(10));
// Compute!
if !estimator.compute(&vertices) {
println!("Compute Normal Failed. Exit...");
return;
}
let normals = estimator.normals();