Add AbsoluteCurveGeometry::translate

This commit is contained in:
Hanno Braun 2025-04-24 11:12:50 +02:00
parent c71b159712
commit 0451a07b06
3 changed files with 10 additions and 7 deletions

View File

@ -5,6 +5,14 @@ pub struct AbsoluteCurveGeometry {
pub geometry: Box<dyn CurveGeometry>,
}
impl AbsoluteCurveGeometry {
pub fn translate(&self, offset: impl Into<Vector<3>>) -> Self {
Self {
geometry: self.geometry.translate(offset.into()),
}
}
}
impl Clone for AbsoluteCurveGeometry {
fn clone(&self) -> Self {
Self {

View File

@ -61,9 +61,7 @@ impl SweptCurve {
pub fn translate(&self, offset: impl Into<Vector<3>>) -> Self {
Self {
curve: AbsoluteCurveGeometry {
geometry: self.curve.geometry.translate(offset.into()),
},
curve: self.curve.translate(offset.into()),
path: self.path,
}
}

View File

@ -1,7 +1,6 @@
use fj_math::Vector;
use crate::{
geometry::AbsoluteCurveGeometry,
handle::Handle,
topology::{
curve::Curve, face::Face, half_edge::HalfEdge, surface::Surface,
@ -16,9 +15,7 @@ pub trait TranslateExt {
impl TranslateExt for Curve {
fn translate(&self, offset: impl Into<Vector<3>>) -> Self {
let offset = offset.into();
let geometry = AbsoluteCurveGeometry {
geometry: self.geometry.geometry.translate(offset),
};
let geometry = self.geometry.translate(offset);
Curve { geometry }
}
}