pub struct FixReport {Show 24 fields
pub before: Diagnosis,
pub after: Diagnosis,
pub wires_reordered: usize,
pub edges_collapsed: usize,
pub gap_vertices_merged: usize,
pub lacking_edges_made: usize,
pub pole_edges_made: usize,
pub edges_trimmed: usize,
pub sewn: Option<(usize, usize)>,
pub free_gaps_stated: usize,
pub tolerances_reduced: usize,
pub tolerances_widened: usize,
pub faces_turned: usize,
pub pcurve_gaps_stated: usize,
pub curve_ends_stated: usize,
pub tails_stripped: usize,
pub notches_cut: usize,
pub small_wires_removed: usize,
pub crossings_trimmed: usize,
pub faces_split_at_crossings: usize,
pub crossings_left: usize,
pub natural_bounds_made: usize,
pub natural_bounds_marked: usize,
pub free_bounds: FreeBounds,
}Expand description
What fix_shape did, and what it found before and after.
Fields§
§before: DiagnosisThe diagnosis the shape came in with.
after: DiagnosisThe diagnosis it leaves with. Not necessarily valid: what has no mend here is still reported.
wires_reordered: usizeWires whose edges were put end to end.
edges_collapsed: usizeEdges collapsed to a vertex.
gap_vertices_merged: usizeVertices merged into the vertex beside them across a gap in a wire.
lacking_edges_made: usizeStraight edges made across gaps in wires too wide for their vertices to merge.
pole_edges_made: usizeDegenerate edges made where a boundary crosses a pole.
edges_trimmed: usizeEdges given a pcurve on a face they bound.
sewn: Option<(usize, usize)>Edge pairs sewn, and edges still free after, when sewing ran.
free_gaps_stated: usizePairs of loose faces’ free edges that are each other’s twin across a gap, widened to state it before sewing.
tolerances_reduced: usizeTolerances tightened.
tolerances_widened: usizeTolerances widened so that every vertex is at least as loose as the edges it bounds and every edge as the faces it bounds.
faces_turned: usizeFaces turned the right way out: each faced into its solid’s material.
pcurve_gaps_stated: usizeEdges widened to how far their pcurves stand off their curves.
curve_ends_stated: usizeVertices widened to how far the curves they bound end from them.
tails_stripped: usizePairs of edges stripped from wires that ran out along one and straight back along the other.
notches_cut: usizeNotches cut off: an edge run back along part of the edge before it, the shorter edge and the stretch of the longer it ran along gone.
small_wires_removed: usizeHoles removed that enclosed no area the face’s tolerance resolves: every point of each within that tolerance of its boundary.
crossings_trimmed: usizePairs of consecutive edges crossing short of the vertex they meet at, cut back to the crossing.
faces_split_at_crossings: usizeFaces whose boundary crossed itself, split into its two loops.
crossings_left: usizeFaces of the shape as mended whose boundary still crosses itself
in its surface’s chart (chart_crossings).
natural_bounds_made: usizeFaces with no wires bounded by the sides of their surface’s domain.
natural_bounds_marked: usizeFaces with no wires marked as covering their whole surface, where the sides of its domain could not bound them.
free_bounds: FreeBoundsThe free edges of the shape as mended, chained into contours.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FixReport
impl RefUnwindSafe for FixReport
impl Send for FixReport
impl Sync for FixReport
impl Unpin for FixReport
impl UnsafeUnpin for FixReport
impl UnwindSafe for FixReport
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,
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§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).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.