diff --git a/crates/fj-kernel/src/operations/build/mod.rs b/crates/fj-kernel/src/operations/build/mod.rs index 65c3dfe69..48761b8f6 100644 --- a/crates/fj-kernel/src/operations/build/mod.rs +++ b/crates/fj-kernel/src/operations/build/mod.rs @@ -2,6 +2,7 @@ mod cycle; mod edge; mod face; mod shell; +mod solid; mod surface; pub use self::{ @@ -9,5 +10,6 @@ pub use self::{ edge::BuildHalfEdge, face::{BuildFace, Polygon}, shell::{BuildShell, TetrahedronShell}, + solid::BuildSolid, surface::BuildSurface, }; diff --git a/crates/fj-kernel/src/operations/build/solid.rs b/crates/fj-kernel/src/operations/build/solid.rs new file mode 100644 index 000000000..ac0eb7ca1 --- /dev/null +++ b/crates/fj-kernel/src/operations/build/solid.rs @@ -0,0 +1,11 @@ +use crate::objects::Solid; + +/// Build a [`Solid`] +pub trait BuildSolid { + /// Build an empty solid + fn empty() -> Solid { + Solid::new([]) + } +} + +impl BuildSolid for Solid {} diff --git a/crates/fj-kernel/src/operations/mod.rs b/crates/fj-kernel/src/operations/mod.rs index 9573ac2d8..5c65569c4 100644 --- a/crates/fj-kernel/src/operations/mod.rs +++ b/crates/fj-kernel/src/operations/mod.rs @@ -7,8 +7,8 @@ mod update; pub use self::{ build::{ - BuildCycle, BuildFace, BuildHalfEdge, BuildShell, BuildSurface, - Polygon, TetrahedronShell, + BuildCycle, BuildFace, BuildHalfEdge, BuildShell, BuildSolid, + BuildSurface, Polygon, TetrahedronShell, }, insert::{Insert, IsInserted, IsInsertedNo, IsInsertedYes}, join::JoinCycle,