From cb460297c306e07adba25dc52eddbff3c85875f0 Mon Sep 17 00:00:00 2001 From: Hanno Braun Date: Wed, 30 Nov 2022 15:32:26 +0100 Subject: [PATCH 1/2] Pass surface directly into method that needs it --- crates/fj-kernel/src/algorithms/sweep/face.rs | 14 ++++++++++---- crates/fj-kernel/src/builder/sketch.rs | 7 ++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/crates/fj-kernel/src/algorithms/sweep/face.rs b/crates/fj-kernel/src/algorithms/sweep/face.rs index 1b03318a7..6eb0dda39 100644 --- a/crates/fj-kernel/src/algorithms/sweep/face.rs +++ b/crates/fj-kernel/src/algorithms/sweep/face.rs @@ -104,8 +104,11 @@ mod tests { let surface = services.objects.surfaces.xy_plane(); let solid = Sketch::builder() - .with_surface(surface.clone()) - .with_polygon_from_points(TRIANGLE, &mut services.objects) + .with_polygon_from_points( + surface.clone(), + TRIANGLE, + &mut services.objects, + ) .build(&mut services.objects) .sweep(UP, &mut services.objects); @@ -148,8 +151,11 @@ mod tests { let surface = services.objects.surfaces.xy_plane(); let solid = Sketch::builder() - .with_surface(surface.clone()) - .with_polygon_from_points(TRIANGLE, &mut services.objects) + .with_polygon_from_points( + surface.clone(), + TRIANGLE, + &mut services.objects, + ) .build(&mut services.objects) .sweep(DOWN, &mut services.objects); diff --git a/crates/fj-kernel/src/builder/sketch.rs b/crates/fj-kernel/src/builder/sketch.rs index afb649241..38aecce95 100644 --- a/crates/fj-kernel/src/builder/sketch.rs +++ b/crates/fj-kernel/src/builder/sketch.rs @@ -40,15 +40,12 @@ impl SketchBuilder { /// Construct a polygon from a list of points pub fn with_polygon_from_points( mut self, + surface: Handle, points: impl IntoIterator>>, objects: &mut Service, ) -> Self { - let surface = self - .surface - .as_ref() - .expect("Can't build `Sketch` without `Surface`"); self.faces.extend([Face::partial() - .with_exterior_polygon_from_points(surface.clone(), points) + .with_exterior_polygon_from_points(surface, points) .build(objects) .insert(objects)]); self From eca37a7c4b5cb901ac76b6eccc9786714d8e9e83 Mon Sep 17 00:00:00 2001 From: Hanno Braun Date: Wed, 30 Nov 2022 15:33:09 +0100 Subject: [PATCH 2/2] Remove unused code --- crates/fj-kernel/src/builder/sketch.rs | 9 --------- crates/fj-kernel/src/objects/full/sketch.rs | 1 - 2 files changed, 10 deletions(-) diff --git a/crates/fj-kernel/src/builder/sketch.rs b/crates/fj-kernel/src/builder/sketch.rs index 38aecce95..f80593ddf 100644 --- a/crates/fj-kernel/src/builder/sketch.rs +++ b/crates/fj-kernel/src/builder/sketch.rs @@ -14,20 +14,11 @@ use super::FaceBuilder; /// /// Also see [`Sketch::builder`]. pub struct SketchBuilder { - /// The surface that the [`Sketch`] is defined in - pub surface: Option>, - /// The faces that make up the [`Sketch`] pub faces: FaceSet, } impl SketchBuilder { - /// Build the [`Sketch`] with the provided [`Surface`] - pub fn with_surface(mut self, surface: Handle) -> Self { - self.surface = Some(surface); - self - } - /// Build the [`Sketch`] with the provided faces pub fn with_faces( mut self, diff --git a/crates/fj-kernel/src/objects/full/sketch.rs b/crates/fj-kernel/src/objects/full/sketch.rs index ca58de263..243365168 100644 --- a/crates/fj-kernel/src/objects/full/sketch.rs +++ b/crates/fj-kernel/src/objects/full/sketch.rs @@ -19,7 +19,6 @@ impl Sketch { /// Build a `Sketch` using [`SketchBuilder`] pub fn builder() -> SketchBuilder { SketchBuilder { - surface: None, faces: FaceSet::new(), } }