pub trait SplitFace: Sized {
// Required method
fn split_face(
&self,
face: &Handle<Face>,
line: [(&Handle<HalfEdge>, impl Into<Point<1>>); 2],
core: &mut Core,
) -> (Self, [Handle<Face>; 2]);
}Expand description
Split a face into two
Required Methods§
Sourcefn split_face(
&self,
face: &Handle<Face>,
line: [(&Handle<HalfEdge>, impl Into<Point<1>>); 2],
core: &mut Core,
) -> (Self, [Handle<Face>; 2])
fn split_face( &self, face: &Handle<Face>, line: [(&Handle<HalfEdge>, impl Into<Point<1>>); 2], core: &mut Core, ) -> (Self, [Handle<Face>; 2])
Split the face into two
The line that splits the face is defined by two points, each specified in local coordinates of an edge.
§Panics
Panics, if the half-edges are not part of the boundary of the provided face.
§Implementation Note
The way the split line is specified is rather inconvenient, and not very flexible. This is an artifact of the current implementation, and more flexible and convenient ways to split the face (like an arbitrary curve) can be provided later.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.