Skip to main content

ogeom_mesh/
lib.rs

1//! Tessellation. Discretize edges to a deflection tolerance, then build a
2//! constrained Delaunay triangulation in each face's (u,v) parametric domain,
3//! refine it, and attach the result to the face.
4//!
5//! *Elsewhere:* `BRepMesh` and the `Poly` triangulation types.
6//!
7//! Uses `spade` for CDT and refinement rather than ear-clipping: ear-clipping offers
8//! no quality guarantees and cannot insert Steiner points, which curved surfaces
9//! need.
10
11pub mod attach;
12pub mod discretize;
13pub mod hatch;
14pub mod simplify;
15pub mod triangulate;
16
17pub use attach::{Tessellated, polyline_of, tessellate, triangulation_of};
18pub use discretize::{
19    Deflection, Polyline, discretize, discretize_on_surface, discretize_planar, is_straight,
20    is_straight_planar,
21};
22pub use hatch::hatch_face;
23pub use simplify::{Simplified, Target, simplify};
24pub use triangulate::{
25    EdgeChords, edge_chords_for, face_boundary, inside_boundary, inside_boundary_with,
26    polyline_of_edge, triangulate, triangulate_face, triangulate_face_with,
27};