SplitFace

Trait SplitFace 

Source
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§

Source

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.

Implementors§