pub struct ParamTriMesh {
pub positions: Vec<[f64; 3]>,
pub uvs: Vec<[f64; 2]>,
pub normals: Vec<[f64; 3]>,
pub triangles: Vec<[usize; 3]>,
}Expand description
A triangle mesh with UV coordinates and normals, used for parameterization.
Note: This is distinct from mesh_ops::TriMesh which uses nalgebra Vec3.
Fields§
§positions: Vec<[f64; 3]>3D positions of vertices.
uvs: Vec<[f64; 2]>UV texture coordinates per vertex.
normals: Vec<[f64; 3]>Per-vertex normals.
triangles: Vec<[usize; 3]>Triangle indices.
Implementations§
Source§impl ParamTriMesh
impl ParamTriMesh
Sourcepub fn vertex_count(&self) -> usize
pub fn vertex_count(&self) -> usize
Number of vertices.
Sourcepub fn triangle_count(&self) -> usize
pub fn triangle_count(&self) -> usize
Number of triangles.
Sourcepub fn add_vertex(&mut self, pos: [f64; 3], uv: [f64; 2]) -> usize
pub fn add_vertex(&mut self, pos: [f64; 3], uv: [f64; 2]) -> usize
Add a vertex with position and UV; returns the vertex index.
Sourcepub fn add_triangle(&mut self, a: usize, b: usize, c: usize)
pub fn add_triangle(&mut self, a: usize, b: usize, c: usize)
Add a triangle by vertex indices.
Sourcepub fn compute_normals(&mut self)
pub fn compute_normals(&mut self)
Compute per-vertex area-weighted average normals.
Trait Implementations§
Source§impl Clone for ParamTriMesh
impl Clone for ParamTriMesh
Source§fn clone(&self) -> ParamTriMesh
fn clone(&self) -> ParamTriMesh
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ParamTriMesh
impl Debug for ParamTriMesh
Auto Trait Implementations§
impl Freeze for ParamTriMesh
impl RefUnwindSafe for ParamTriMesh
impl Send for ParamTriMesh
impl Sync for ParamTriMesh
impl Unpin for ParamTriMesh
impl UnsafeUnpin for ParamTriMesh
impl UnwindSafe for ParamTriMesh
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.