#[non_exhaustive]pub struct ScanOutline {
pub rings: Vec<Vec<[f64; 2]>>,
pub shape_offsets: Vec<usize>,
pub parents: Vec<Option<usize>>,
pub diagnostics: ScanOutlineDiagnostics,
}Expand description
Traced outline in plane coordinates.
Rings carry no duplicated closing vertex. Outer boundaries wind
counter-clockwise, holes clockwise, so NonZero and EvenOdd fill agree.
Rings are grouped like ContourSet: shape_offsets[s] is shape s’s outer
ring and the rings up to the next offset are its holes.
#[non_exhaustive]: a result type only this crate builds.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.rings: Vec<Vec<[f64; 2]>>§shape_offsets: Vec<usize>§parents: Vec<Option<usize>>The ring directly containing each ring: a hole’s outer boundary, or for
an outer boundary the hole it sits in (an island). None at top level.
diagnostics: ScanOutlineDiagnosticsImplementations§
Source§impl ScanOutline
impl ScanOutline
Sourcepub fn world_rings(&self, frame: &PlaneFrame) -> Vec<Vec<[f64; 3]>>
pub fn world_rings(&self, frame: &PlaneFrame) -> Vec<Vec<[f64; 3]>>
Every ring mapped into 3D through frame.
Trait Implementations§
Source§impl Clone for ScanOutline
impl Clone for ScanOutline
Source§fn clone(&self) -> ScanOutline
fn clone(&self) -> ScanOutline
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 ScanOutline
impl Debug for ScanOutline
Source§impl Default for ScanOutline
impl Default for ScanOutline
Source§fn default() -> ScanOutline
fn default() -> ScanOutline
Returns the “default value” for a type. Read more
Source§impl PartialEq for ScanOutline
impl PartialEq for ScanOutline
impl StructuralPartialEq for ScanOutline
Auto Trait Implementations§
impl Freeze for ScanOutline
impl RefUnwindSafe for ScanOutline
impl Send for ScanOutline
impl Sync for ScanOutline
impl Unpin for ScanOutline
impl UnwindSafe for ScanOutline
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§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).§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.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.