#![forbid(unsafe_code)]
pub mod assemble;
pub mod boolean;
pub mod clash;
pub mod convex_hull;
pub mod coplanar;
pub mod intersection;
pub mod polygon;
pub mod primitive;
pub mod retriangulate;
pub mod section;
pub mod segment_triangle;
pub mod tessellate;
pub mod triangle_triangle;
pub use axiolid_evaluate::{curve, surface};
pub use axiolid_predicates::{
arithmetic, expansion, orient3, orientation, scene, sphere, static_filter,
};
pub use assemble::exact_boolean;
pub use axiolid_evaluate::{
derivative2, derivative3, evaluate2, evaluate3, flatten2, partials, Patch, ScalarCurve,
ScalarSurface,
};
pub use axiolid_evaluate::{
elevated_point, elevated_tangent, frenet_frame, frenet_point, frenet_tangent, intrinsic_point,
intrinsic_tangent, join_intrinsic3, offset_intrinsic3, trim_intrinsic3,
};
pub use axiolid_predicates::{
incircle, incircle_filter, insphere, insphere_filter, orient2d, orient2d_filter, orient3d,
orient3d_filter, two_diff, two_product, two_sum, StaticFilter,
};
pub use boolean::ScalarBoolean;
pub use convex_hull::{minimum_area_rectangle, strict_convex_hull, OrientedRectangle2};
pub use intersection::{
assemble_polylines, intersection_segments, EdgeKey, IntersectionCurve, IntersectionSegment,
NodeKey, Operand, Polyline,
};
pub use polygon::{ring_orientation, signed_area2, triangulate_simple};
pub use retriangulate::{retriangulate_face, FacePatch};
pub use section::ScalarSection;
pub use segment_triangle::{segment_triangle_relation, SegmentTriangleRelation};
pub use triangle_triangle::{triangle_triangle_relation, TriangleTriangleRelation};