| Crates.io | avila-tesselation |
| lib.rs | avila-tesselation |
| version | 0.1.0 |
| created_at | 2025-12-04 22:43:53.82266+00 |
| updated_at | 2025-12-04 22:43:53.82266+00 |
| description | IFC geometry tesselation - converts parametric solids to triangle meshes - 100% Rust |
| homepage | |
| repository | https://github.com/avilaops/arxis |
| max_upload_size | |
| id | 1967254 |
| size | 19,285 |
IFC Geometry Tesselation - 100% Rust
Converts IFC parametric solids to triangle meshes.
use avila_tesselation::{Tesselator, IfcGeometry, Profile, ProfileType};
use avila_vec3d::Vec3;
// Create tesselator
let tesselator = Tesselator::new(0.01); // 1cm tolerance
// Define rectangular profile
let profile = Profile {
profile_type: ProfileType::Rectangle { width: 2.0, height: 1.0 },
position: Vec3::ZERO,
};
// Extrude to 3D solid
let geometry = IfcGeometry::ExtrudedAreaSolid {
profile,
extrusion_direction: Vec3::Z,
extrusion_depth: 3.0,
};
// Tesselate to mesh
let mesh = tesselator.tesselate(&geometry)?;
println!("Triangles: {}", mesh.indices.len() / 3);
IfcExtrudedAreaSolidIfcBoundingBoxIfcCylinderIfcSphereIfcFacetedBrepIfcTriangulatedFaceSetMIT OR Apache-2.0