diff --git a/crates/fj-core/src/geometry/geometry.rs b/crates/fj-core/src/geometry/geometry.rs index 9b5a199bf..c10f124d2 100644 --- a/crates/fj-core/src/geometry/geometry.rs +++ b/crates/fj-core/src/geometry/geometry.rs @@ -1,4 +1,4 @@ -use std::{collections::BTreeMap, rc::Rc}; +use std::collections::BTreeMap; use fj_math::Vector; @@ -71,7 +71,7 @@ impl Geometry { self_.define_surface_inner_2( self_.xy_plane.clone(), SurfaceGeom { - geometry: Rc::new(SweptCurve { + geometry: Box::new(SweptCurve { u: Path::x_axis(), v: Vector::unit_y(), }), @@ -80,7 +80,7 @@ impl Geometry { self_.define_surface_inner_2( self_.xz_plane.clone(), SurfaceGeom { - geometry: Rc::new(SweptCurve { + geometry: Box::new(SweptCurve { u: Path::x_axis(), v: Vector::unit_z(), }), @@ -89,7 +89,7 @@ impl Geometry { self_.define_surface_inner_2( self_.yz_plane.clone(), SurfaceGeom { - geometry: Rc::new(SweptCurve { + geometry: Box::new(SweptCurve { u: Path::y_axis(), v: Vector::unit_z(), }), @@ -310,5 +310,5 @@ pub enum CurveGeom2 { /// representation. pub struct SurfaceGeom { /// # The geometric representation of the surface - pub geometry: Rc, + pub geometry: Box, } diff --git a/crates/fj-core/src/operations/build/surface.rs b/crates/fj-core/src/operations/build/surface.rs index 9c88c5792..36e41e6bb 100644 --- a/crates/fj-core/src/operations/build/surface.rs +++ b/crates/fj-core/src/operations/build/surface.rs @@ -1,5 +1,3 @@ -use std::rc::Rc; - use fj_math::{Point, Scalar, Vector}; use crate::{ @@ -29,7 +27,7 @@ pub trait BuildSurface { core.layers.geometry.define_surface_2( surface.clone(), SurfaceGeom { - geometry: Rc::new(surface_geom), + geometry: Box::new(surface_geom), }, ); diff --git a/crates/fj-core/src/operations/transform/surface.rs b/crates/fj-core/src/operations/transform/surface.rs index eec5e15d2..c7bbe663a 100644 --- a/crates/fj-core/src/operations/transform/surface.rs +++ b/crates/fj-core/src/operations/transform/surface.rs @@ -1,5 +1,3 @@ -use std::rc::Rc; - use fj_math::Transform; use crate::{ @@ -45,7 +43,7 @@ impl TransformObject for &Handle { core.layers.geometry.define_surface_2( surface.clone(), SurfaceGeom { - geometry: Rc::new(TransformedSurface { + geometry: Box::new(TransformedSurface { surface: self.clone(), transform: *transform, }),