pub struct ProgressiveMesh {
pub base_vertices: Vec<[f64; 3]>,
pub base_triangles: Vec<[usize; 3]>,
pub collapses: Vec<CollapseRecord>,
}Expand description
Progressive mesh: stores a sequence of collapses for LOD.
Fields§
§base_vertices: Vec<[f64; 3]>Base (most simplified) vertices.
base_triangles: Vec<[usize; 3]>Base (most simplified) triangles.
collapses: Vec<CollapseRecord>Collapse records in order of execution (last = first to undo).
Implementations§
Source§impl ProgressiveMesh
impl ProgressiveMesh
Sourcepub fn build(
vertices: &[[f64; 3]],
triangles: &[[usize; 3]],
target_triangles: usize,
) -> Self
pub fn build( vertices: &[[f64; 3]], triangles: &[[usize; 3]], target_triangles: usize, ) -> Self
Create a progressive mesh by simplifying with QEM and recording collapses.
Sourcepub fn base_mesh(&self) -> (&[[f64; 3]], &[[usize; 3]])
pub fn base_mesh(&self) -> (&[[f64; 3]], &[[usize; 3]])
Get the mesh at the base (lowest) level of detail.
Sourcepub fn num_collapses(&self) -> usize
pub fn num_collapses(&self) -> usize
Number of collapse records stored.
Trait Implementations§
Source§impl Clone for ProgressiveMesh
impl Clone for ProgressiveMesh
Source§fn clone(&self) -> ProgressiveMesh
fn clone(&self) -> ProgressiveMesh
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 moreAuto Trait Implementations§
impl Freeze for ProgressiveMesh
impl RefUnwindSafe for ProgressiveMesh
impl Send for ProgressiveMesh
impl Sync for ProgressiveMesh
impl Unpin for ProgressiveMesh
impl UnsafeUnpin for ProgressiveMesh
impl UnwindSafe for ProgressiveMesh
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.