Expand description
This crate contains a Mesh struct which represents a triangle mesh. It is implemented using a half-edge data structure which is efficient for creating, editing, traversing and computing on that mesh. Also, the mesh can easily be created from and exported into a format that is efficient for visualization. Finally, operations on the mesh is implemented as methods on the Mesh struct, so take a look at that rather long list of methods for a complete overview.
Re-exports§
pub use crate::math::*;
Modules§
Structs§
- Axis
Aligned Bounding Box - A bounding box that aligns with the x, y and z axes.
- Edge
Iter - An iterator over the edges created by Mesh::edge_iter.
- Face
Halfedge Iter - An iterator over the three half-edges in a face created by Mesh::face_halfedge_iter.
- FaceID
- A unique ID for a face.
- Half
EdgeID - A unique ID for a halfedge.
- Mesh
- A representation of a triangle mesh which is efficient for calculating on and making changes to a mesh.
- Vertex
Halfedge Iter - An iterator over the half-edges starting in a given vertex created by Mesh::vertex_halfedge_iter.
- VertexID
- A unique ID for a vertex.
- Walker
- Used for easy and efficient traversal of the mesh. Also see Connectivity for common connectivity utility functionality.
Enums§
- Error
- Error when performing a mesh operation
- Intersection
- An enum describing the types of intersections.
- Primitive
- An enum describing the types of primitives.
Traits§
- ID
- A unique ID.
Type Aliases§
- Face
Iter - An iterator over the faces created by Mesh::face_iter.
- Half
Edge Iter - An iterator over the half-edges created by Mesh::halfedge_iter.
- Vertex
Iter - An iterator over the vertices created by Mesh::vertex_iter.