#![warn(missing_docs)]
pub(crate) mod tol {
pub const ANGULAR: f64 = crate::Tolerance::DEFAULT.angular;
pub const CONFUSION: f64 = crate::Tolerance::DEFAULT.confusion;
pub const P_CONFUSION: f64 = crate::Tolerance::DEFAULT.parametric;
}
pub(crate) mod curve_math;
pub mod curves;
pub mod frame;
pub mod intersect;
pub(crate) mod math;
pub mod point;
pub mod projection;
pub(crate) mod surface_math;
pub mod surfaces;
pub mod tolerance;
pub mod transform;
pub mod vector;
pub use curves::{
BSplineConstructionError, BSplineCurve3D, Circle2D, Circle3D, CircleConstructionError, Curve2D,
Curve3D, ElementaryCurve, Ellipse3D, EllipseConstructionError, Hyperbola3D,
HyperbolaConstructionError, InterpParametrization, Line2D, Line3D, LineConstructionError,
Parabola3D, ParabolaConstructionError, ParametricCurve2D, ParametricCurve3D, ParametrizeError,
PointExtrema2D, PointExtrema3D, TrimmedCurve2D, TrimmedCurve3D, TrimmedCurveConstructionError,
parametrize_numeric,
};
pub use frame::{Axis2D, Axis3D, Frame2D, Frame3D, FrameConstructionError};
pub use intersect::intersect_curve_surface;
pub use intersect::marching_intersection;
pub use intersect::{
CircleCircle2DIntersection, CircleCircle3DIntersection, CircleConic3DIntersection,
CircleConicHit, CircleSurfaceIntersection, ConeConeIntersection, ConeCylinderIntersection,
ConicSurfaceHit, ConicSurfaceIntersection, CurveCurveExtremum, CurveCurveHit, CurveSurfaceHit,
CylinderCylinderIntersection, EllipseEllipse3DIntersection, EllipseEllipseHit, LatitudeRing,
LineCircle2DIntersection, LineCircle3DIntersection, LineConic3DIntersection, LineConicHit,
LineLine2DIntersection, LineLine3DIntersection, LinePlaneIntersection, LineQuadricIntersection,
LineTorusHit, LineTorusIntersection, PlaneConeIntersection, PlaneCylinderIntersection,
PlanePlaneIntersection, PlaneSphereIntersection, SphereConeIntersection,
SphereCylinderIntersection, SphereSphereIntersection, TorusConeIntersection,
TorusCylinderIntersection, TorusPlaneIntersection, TorusSphereIntersection,
TorusTorusIntersection,
};
pub use intersect::{
CurveCurveIntersection, CurveSurfaceIntersection, InlineList, Intersect, SurfaceIntersection,
};
pub use intersect::{curve_curve_extrema, intersect_curve_curve};
pub use point::{Point2D, Point3D};
pub use projection::{CurveProjection, SurfaceProjection};
pub use surfaces::{
BSplineSurface, Cone, ConeConstructionError, Cylinder, CylinderConstructionError,
ElementarySurface, ParametricSurface, Plane, PlaneConstructionError, Sphere,
SphereConstructionError, Surface, Torus, TorusConstructionError,
};
pub use tolerance::Tolerance;
pub use transform::Transform;
pub use vector::{Vector2D, Vector3D};