use crate::topology::{
BrepSolid, CoedgeRecord, EdgeRecord, FaceRecord, LoopRecord, ShellRecord, VertexRecord,
};
use crate::{
boolean_operation, build_pcurve_on_surface, interpolate_curve, loft_profile_brep, make_arc,
make_extrusion, make_line, make_plane, project_point_to_curve, BooleanOperation,
BooleanOptions, NurbsCurve, NurbsSurface, Vec3, Vec4,
};
#[path = "sweep_topology/extrude.rs"]
mod extrude;
#[path = "sweep_topology/sweep.rs"]
mod sweep;
#[path = "sweep_topology/draft.rs"]
mod draft;
#[path = "sweep_topology/rib.rs"]
mod rib;
#[cfg(test)]
#[path = "sweep_topology/tests.rs"]
mod tests;
pub use extrude::extrude_profile_brep;
pub(crate) use extrude::{curve_to_plane_parameters, parameter_line, profile_area};
pub use sweep::{
profile_anchor, sweep_profile_along_path, sweep_profile_along_path_anchored,
sweep_profile_helix, sweep_profile_twisted, sweep_profile_twisted_anchored, ProfileAnchor,
};
pub use draft::extrude_profile_brep_draft;
pub use rib::rib_from_profile;
use rib::{
arc_window_subrange, classify_profile_segments, junction_edge_curve, offset_junction,
ruled_between, SegGeom,
};