mirror of
https://github.com/hannobraun/Fornjot
synced 2025-05-04 01:48:28 +00:00
Move derive_from
to lower-level operation
This commit is contained in:
parent
69bc394a03
commit
2162af6238
@ -3,7 +3,7 @@ use fj_math::Point;
|
||||
use crate::{
|
||||
objects::{HalfEdge, Shell},
|
||||
operations::{
|
||||
derive::DeriveFrom, geometry::UpdateHalfEdgeGeometry, insert::Insert,
|
||||
geometry::UpdateHalfEdgeGeometry, insert::Insert,
|
||||
replace::ReplaceHalfEdge, split::SplitHalfEdge, update::UpdateHalfEdge,
|
||||
},
|
||||
queries::SiblingOfHalfEdge,
|
||||
@ -42,7 +42,7 @@ impl SplitEdge for Shell {
|
||||
|
||||
let [half_edge_a, half_edge_b] = half_edge
|
||||
.split_half_edge(point, core)
|
||||
.map(|half_edge_part| half_edge_part.derive_from(half_edge, core));
|
||||
.map(|half_edge_part| half_edge_part);
|
||||
|
||||
let siblings = {
|
||||
let [sibling_a, sibling_b] = sibling.split_half_edge(point, core);
|
||||
@ -53,7 +53,7 @@ impl SplitEdge for Shell {
|
||||
)
|
||||
.insert(core);
|
||||
[sibling_a, sibling_b].map(|half_edge| {
|
||||
half_edge.derive_from(&sibling, core).set_path(
|
||||
half_edge.set_path(
|
||||
core.layers.geometry.of_half_edge(&sibling).path,
|
||||
&mut core.layers.geometry,
|
||||
)
|
||||
|
@ -3,7 +3,7 @@ use fj_math::Point;
|
||||
use crate::{
|
||||
geometry::HalfEdgeGeometry,
|
||||
objects::{HalfEdge, Vertex},
|
||||
operations::insert::Insert,
|
||||
operations::{derive::DeriveFrom, insert::Insert},
|
||||
storage::Handle,
|
||||
Core,
|
||||
};
|
||||
@ -48,13 +48,15 @@ impl SplitHalfEdge for Handle<HalfEdge> {
|
||||
self.curve().clone(),
|
||||
self.start_vertex().clone(),
|
||||
)
|
||||
.insert(core);
|
||||
.insert(core)
|
||||
.derive_from(self, core);
|
||||
let b = HalfEdge::new(
|
||||
[point, end],
|
||||
self.curve().clone(),
|
||||
Vertex::new().insert(core),
|
||||
)
|
||||
.insert(core);
|
||||
.insert(core)
|
||||
.derive_from(self, core);
|
||||
|
||||
core.layers.geometry.define_half_edge(
|
||||
a.clone(),
|
||||
|
Loading…
Reference in New Issue
Block a user