use fj_math::Transform;
use crate::{
objects::{GlobalEdge, HalfEdge, Objects},
services::Service,
};
use super::{TransformCache, TransformObject};
impl TransformObject for HalfEdge {
fn transform_with_cache(
self,
transform: &Transform,
objects: &mut Service<Objects>,
cache: &mut TransformCache,
) -> Self {
let curve = self.curve();
let boundary = self.boundary();
let start_vertex = self
.start_vertex()
.clone()
.transform_with_cache(transform, objects, cache);
let global_form = self
.global_form()
.clone()
.transform_with_cache(transform, objects, cache);
Self::new(curve, boundary, start_vertex, global_form)
}
}
impl TransformObject for GlobalEdge {
fn transform_with_cache(
self,
_: &Transform,
_: &mut Service<Objects>,
_: &mut TransformCache,
) -> Self {
Self::new()
}
}