pub struct PanelizationResult {
pub quad_panels: Vec<[usize; 4]>,
pub tri_panels: Vec<[usize; 3]>,
pub vertices: Vec<V3>,
pub planarity_errors: Vec<f64>,
pub planarity_tolerance: f64,
pub gap_stats: (f64, f64),
}Expand description
Result of panelizing a free-form surface.
Contains lists of planar quad and triangular panels with planarity deviation statistics.
Fields§
§quad_panels: Vec<[usize; 4]>Planar quad panels — each entry is four corner-point indices.
tri_panels: Vec<[usize; 3]>Triangular panels — each entry is three corner-point indices.
vertices: Vec<V3>Vertex positions referenced by panel indices.
planarity_errors: Vec<f64>Planarity error for each quad panel (m) — distance of the worst off-plane vertex from the best-fit plane.
planarity_tolerance: f64Maximum permitted planarity deviation (m).
gap_stats: (f64, f64)Panel gap / overlap statistics: (mean_gap, max_gap) in metres.
Implementations§
Source§impl PanelizationResult
impl PanelizationResult
Sourcepub fn quad_planarity_error(pts: &[V3; 4]) -> f64
pub fn quad_planarity_error(pts: &[V3; 4]) -> f64
Compute the planarity error of a single quad (4 points).
Fits a plane to the first three vertices and returns the distance of the fourth vertex from that plane.
Sourcepub fn out_of_tolerance_count(&self) -> usize
pub fn out_of_tolerance_count(&self) -> usize
Count panels that exceed the planarity tolerance.
Sourcepub fn mean_planarity_error(&self) -> f64
pub fn mean_planarity_error(&self) -> f64
Mean planarity error across all quad panels (m).
Sourcepub fn max_planarity_error(&self) -> f64
pub fn max_planarity_error(&self) -> f64
Maximum planarity error across all quad panels (m).
Trait Implementations§
Source§impl Clone for PanelizationResult
impl Clone for PanelizationResult
Source§fn clone(&self) -> PanelizationResult
fn clone(&self) -> PanelizationResult
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for PanelizationResult
impl RefUnwindSafe for PanelizationResult
impl Send for PanelizationResult
impl Sync for PanelizationResult
impl Unpin for PanelizationResult
impl UnsafeUnpin for PanelizationResult
impl UnwindSafe for PanelizationResult
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
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>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
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
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.