pub trait IsSearchableMesh<V, TU>: IsMesh<V, Face3> {
Show 14 methods
// Required methods
fn edges_of_face(&self, faceid: FId) -> Result<(EId, EId, EId)>;
fn edges_originating_from_vertex(
&self,
vertexid: VId,
result: &mut Vec<EId>,
) -> Result<()>;
fn edges_ending_at_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<EId>,
) -> Result<()>;
fn edges_of_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<EId>,
) -> Result<()>;
fn edge_tail(&self, edgeid: EId) -> Result<VId>;
fn edge_head(&self, edgeid: EId) -> Result<VId>;
fn edge_next(&self, edgeid: EId) -> Result<EId>;
fn edge_prev(&self, edgeid: EId) -> Result<EId>;
fn edge_twin(&self, edgeid: EId) -> Result<Option<EId>>;
fn edge_face(&self, edgeid: EId) -> Result<FId>;
// Provided methods
fn num_edges(&self) -> usize { ... }
fn faces_of_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<FId>,
) -> Result<()> { ... }
fn face_edge_neighbours(
&self,
faceid: FId,
result: &mut Vec<FId>,
) -> Result<()> { ... }
fn face_vertex_neighbours(
&self,
faceid: FId,
cache: &mut Vec<EId>,
result: &mut Vec<FId>,
) -> Result<()> { ... }
}
Expand description
IsSearchableMesh trait used for meshes which have extended search methods
Required Methods§
Sourcefn edges_of_face(&self, faceid: FId) -> Result<(EId, EId, EId)>
fn edges_of_face(&self, faceid: FId) -> Result<(EId, EId, EId)>
Should return the edge ids of the given face. Error if id invalid
Sourcefn edges_originating_from_vertex(
&self,
vertexid: VId,
result: &mut Vec<EId>,
) -> Result<()>
fn edges_originating_from_vertex( &self, vertexid: VId, result: &mut Vec<EId>, ) -> Result<()>
Should append the edges originating at the given vertex (pointing away / having the vertex as tail). Error if id invalid
Sourcefn edges_ending_at_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<EId>,
) -> Result<()>
fn edges_ending_at_vertex( &self, vertexid: VId, cache: &mut Vec<EId>, result: &mut Vec<EId>, ) -> Result<()>
Should append the edges ending at the given vertex (pointing to / having the vertex as head). Error if id invalid cache can be any Vec and can be used to store intermediate results avoiding allocations
Sourcefn edges_of_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<EId>,
) -> Result<()>
fn edges_of_vertex( &self, vertexid: VId, cache: &mut Vec<EId>, result: &mut Vec<EId>, ) -> Result<()>
Should append the edges connecting with the vertex. Error if id invalid cache can be any Vec and can be used to store intermediate results avoiding allocations
Sourcefn edge_tail(&self, edgeid: EId) -> Result<VId>
fn edge_tail(&self, edgeid: EId) -> Result<VId>
Should return the vertex id of the edge’s tail. Error if id invalid
Sourcefn edge_head(&self, edgeid: EId) -> Result<VId>
fn edge_head(&self, edgeid: EId) -> Result<VId>
Should return the vertex id of the edge’s head. Error if id invalid
Sourcefn edge_next(&self, edgeid: EId) -> Result<EId>
fn edge_next(&self, edgeid: EId) -> Result<EId>
Should return the edge id of the next edge. Error if id invalid
Sourcefn edge_prev(&self, edgeid: EId) -> Result<EId>
fn edge_prev(&self, edgeid: EId) -> Result<EId>
Should return the edge id of the previous edge. Error if id invalid
Provided Methods§
Sourcefn faces_of_vertex(
&self,
vertexid: VId,
cache: &mut Vec<EId>,
result: &mut Vec<FId>,
) -> Result<()>
fn faces_of_vertex( &self, vertexid: VId, cache: &mut Vec<EId>, result: &mut Vec<FId>, ) -> Result<()>
Appends faces a vertex is part of. Error if id invalid cache can be any Vec