Struct rust_3d::HalfEdge
[−]
[src]
pub struct HalfEdge { /* fields omitted */ }HalfEdge, the half edge data structure
Methods
impl HalfEdge[src]
pub fn new<T, M>(mesh: &M) -> Self where
M: IsMesh<T, Face3>, [src]
M: IsMesh<T, Face3>,
Creates a new HalfEdge3D for the given IsMesh3D This only stays valid if IMesh3D is not changed after creation The mesh must be manifold (@todo ensure via types?)
pub fn tail(&self, id: EId) -> Result<VId>[src]
Returns the ID of the vertex the edge originates from (error if id out of bounds)
pub fn face(&self, id: EId) -> Result<FId>[src]
Returns the ID of the face the edge belongs to (error if id out of bounds)
pub fn twin(&self, id: EId) -> Result<Option<EId>>[src]
Returns the ID of the twin edge (None if there isn't any) (error if id out of bounds)
pub fn next(&self, id: EId) -> Result<EId>[src]
Returns the ID of the edge after this edge (error if id out of bounds)
pub fn prev(&self, id: EId) -> Result<EId>[src]
Returns the ID of the edge before this edge (error if id out of bounds)
pub fn edges_originating(&self, id: VId) -> Result<Vec<EId>>[src]
Returns all edges originating (pointing away) from the given vertex (error if id out of bounds)
pub fn edges_ending(&self, id: VId) -> Result<Vec<EId>>[src]
Returns all edges ending (pointing at) the given vertex (error if id out of bounds)
pub fn edges_all(&self, id: VId) -> Result<Vec<EId>>[src]
Returns all edges connected to the vertex (both originating and ending) (error if id out of bounds)
pub fn faces(&self, id: VId) -> Result<Vec<FId>>[src]
Returns all faces a vertex is part of (error if id out of bounds)
pub fn ensure_edge_id(&self, id: EId) -> Result<()>[src]
Fails if the edge ID is out of bounds
pub fn ensure_vertex_id(&self, id: VId) -> Result<()>[src]
Fails if the vertex ID is out of bounds
Trait Implementations
impl Debug for HalfEdge[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result[src]
Formats the value using the given formatter. Read more
impl Clone for HalfEdge[src]
fn clone(&self) -> HalfEdge[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl PartialEq for HalfEdge[src]
fn eq(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests for !=.
impl Eq for HalfEdge[src]
impl PartialOrd for HalfEdge[src]
fn partial_cmp(&self, __arg_0: &HalfEdge) -> Option<Ordering>[src]
This method returns an ordering between self and other values if one exists. Read more
fn lt(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests less than (for self and other) and is used by the < operator. Read more
fn le(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
fn gt(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests greater than (for self and other) and is used by the > operator. Read more
fn ge(&self, __arg_0: &HalfEdge) -> bool[src]
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
impl Ord for HalfEdge[src]
fn cmp(&self, __arg_0: &HalfEdge) -> Ordering[src]
This method returns an Ordering between self and other. Read more
fn max(self, other: Self) -> Self1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self1.21.0[src]
Compares and returns the minimum of two values. Read more