Skip to main content

VisibleFaceEvidence

Struct VisibleFaceEvidence 

Source
#[non_exhaustive]
pub struct VisibleFaceEvidence {
Show 18 fields pub source: HiddenLineSource, pub source_meshes: usize, pub source_triangles: usize, pub edge_on_triangles: usize, pub removed_triangles: usize, pub boundary_segments: usize, pub intersection_segments: usize, pub crossings: usize, pub pieces: usize, pub tied_sides: usize, pub candidate_pairs: usize, pub exact_escalations: usize, pub regions: usize, pub cap_regions: usize, pub snap_displacement: DisplacementBound, pub rerouted_edges: usize, pub collapsed_regions: usize, pub collapsed_holes: usize,
}
Expand description

Auditable counts for one visible-face operation.

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.
§source: HiddenLineSource

Approximation source.

§source_meshes: usize

Input meshes.

§source_triangles: usize

Input triangles, summed over all meshes.

§edge_on_triangles: usize

Triangles seen edge-on: they cover no area and make no region.

§removed_triangles: usize

Triangles removed entirely by depth clipping or the crop.

§boundary_segments: usize

Boundary pieces of the arrangement that come from triangle edges and cap outlines.

§intersection_segments: usize

Input segments of the arrangement where a triangle of one surface cuts another, before the arrangement cuts them into pieces.

§crossings: usize

Crossings of segments in the image.

§pieces: usize

Pieces of the arrangement.

§tied_sides: usize

Sides of arrangement pieces that two or more sources share by equal depth, interior pieces included. The count depends on how the arrangement cuts the plane, so only whether it is zero is a property of the scene.

§candidate_pairs: usize

Candidate pairs examined, over all pair work.

§exact_escalations: usize

Decisions the fast filter could not settle and the exact tier did. This count may differ between two otherwise identical requests; it is not part of the result.

§regions: usize

Output regions.

§cap_regions: usize

Output regions whose source is FaceSource::Cap.

§snap_displacement: DisplacementBound

Bound, in the maximum norm of the image, on how far snap rounding moved region boundaries (ADR 0100): an image point farther than this from the exact boundary of a source lies in that source’s regions exactly when it lies in its exact regions. Zero when every ring vertex is a binary64 point and no edge was rerouted.

§rerouted_edges: usize

Exact ring edges routed through the rounded point of another ring vertex whose rounding cell they pass through.

§collapsed_regions: usize

Exact regions whose area collapsed under snap rounding; no region is returned for them.

§collapsed_holes: usize

Holes of returned regions that collapsed under snap rounding.

Implementations§

Source§

impl VisibleFaceEvidence

Source

pub const fn input_mesh(source_meshes: usize, source_triangles: usize) -> Self

Evidence for a result derived from the input meshes; the remaining counts start at zero for the provider to fill in.

Source

pub const fn is_derived_from_input_mesh(self) -> bool

Whether this result came from the discrete input meshes.

Trait Implementations§

Source§

impl Clone for VisibleFaceEvidence

Source§

fn clone(&self) -> VisibleFaceEvidence

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for VisibleFaceEvidence

Source§

impl Debug for VisibleFaceEvidence

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for VisibleFaceEvidence

Source§

impl PartialEq for VisibleFaceEvidence

Source§

fn eq(&self, other: &VisibleFaceEvidence) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for VisibleFaceEvidence

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.