···1111pub mod curve2;
1212pub mod curve3;
1313pub mod cylinder_surface;
1414+pub mod extrude;
1415pub mod intersect;
1516pub mod intersect3;
1617pub mod line2;
···3435pub use curve2::{Curve2, Curve2Kind};
3536pub use curve3::{Curve3, Curve3Kind};
3637pub use cylinder_surface::CylinderSurface;
3838+pub use extrude::{
3939+ DraftAngle, DraftDirection, DraftMagnitude, ExtrudeDirection, ExtrudeEndCondition,
4040+ ExtrudeFeature, ExtrudeSense, MergeResult, PlaneRef, ThinWall, ThinWallDirection,
4141+};
3742pub use intersect::{IntersectionSet, IntersectionSet2, intersect_curves};
3843pub use intersect3::{IntersectionSet3, intersect_curves_3};
3944pub use line2::Line2;
···5762 DegeneratePlane,
5863 #[error("cylinder surface radius, height, or sweep is degenerate")]
5964 DegenerateCylinder,
6565+ #[error("draft angle must be within [0, 90) degrees: {0} deg")]
6666+ DraftAngleOutOfRange(f64),
6067}
61686269pub type Result<T, E = KernelError> = core::result::Result<T, E>;