1#![forbid(unsafe_code)]
2
3#[cfg(feature = "exact")]
9pub mod exact;
10#[cfg(feature = "exact")]
11pub mod exact_distance;
12#[cfg(feature = "exact")]
13mod exact_domain;
14#[cfg(feature = "exact")]
15mod exact_face;
16pub mod frechet;
17pub mod measure;
18pub mod mesh;
19pub mod mesh_measure;
20pub mod mesh_proximity;
21pub mod properties;
22pub mod proximity;
23pub mod winding;
24
25#[cfg(feature = "exact")]
26pub use exact::{exact_properties, ExactMeasureError};
27#[cfg(feature = "exact")]
28pub use exact_distance::{boundary_clearance, boundary_distance, Clearance, DistanceBounds};
29#[cfg(feature = "exact")]
30pub use exact_domain::FaceDomain;
31pub use frechet::{
32 discrete_frechet_distance, discrete_frechet_distance_2d, frechet_at_most, frechet_at_most_2d,
33 frechet_distance, frechet_distance_2d, FrechetError,
34};
35pub use measure::Measure;
36pub use mesh::{
37 second_moments, surface_properties, volume_properties, MeshMeasureError, SurfaceProperties,
38 VolumeProperties,
39};
40pub use mesh_measure::MeshMeasure;
41pub use mesh_proximity::{
42 mesh_distance, proximity_components, MeshDistance, MeshProximityError, ProximityComponent,
43};
44pub use properties::MassProperties;
45pub use proximity::{
46 closest_point_on_triangle, closest_points_on_segments, closest_points_on_triangles,
47 ClosestPoints3, ProximityError,
48};
49pub use winding::{WindingError, WindingMesh, WindingNumber};