Struct flexmesh::Mesh [] [src]

pub struct Mesh<VData, EData, FData> {
    // some fields omitted
}

Editable mesh with persistent adjacency data. Modeled loosely after Blender's BMesh:

http://wiki.blender.org/index.php/Dev:2.6/Source/Modeling/BMesh/Design

Methods

impl<VData: Clone, EData: Clone, FData: Clone> Mesh<VData, EData, FData>
[src]

fn new() -> Mesh<VData, EData, FData>

fn get_vert(&self, vk: VKey) -> Option<&Vert<VData>>

fn get_edge(&self, ek: EKey) -> Option<&Edge<EData>>

fn get_face(&self, fk: FKey) -> Option<&Face<FData>>

fn get_vert_data(&mut self, vk: VKey) -> Option<&mut Vert<VData>>

fn get_edge_data(&mut self, ek: EKey) -> Option<&mut Edge<EData>>

fn get_face_data(&mut self, fk: FKey) -> Option<&mut Face<FData>>

fn find_edge(&self, vk0: VKey, vk1: VKey) -> Option<EKey>

Return the edge between two verts, or None if no such edge exists.

fn vert_adjacent_faces(&self, vk: VKey) -> Vec<FKey>

Get all faces adjacent to the specified vertex. The order is arbitrary.

fn add_vert(&mut self, vdata: VData) -> Option<VKey>

Add a new isolated vertex and return its key. Fail and return None if there are no more vertex keys available.

fn add_edge(&mut self, vk0: VKey, vk1: VKey, edata: EData) -> Option<EKey>

fn add_face(&mut self, vk: &[VKey], edata: EData, fdata: FData) -> Option<FKey>

fn delete_face(&mut self, fk: FKey)