Skip to main content

GrowOptions

Struct GrowOptions 

Source
pub struct GrowOptions {
    pub cutoff: Cutoff,
    pub normal_limit: f64,
    pub peel: bool,
    pub max_triangles: Option<usize>,
    pub fixed: FitFixed,
    pub side: Option<Side>,
    pub crease_limit: f64,
}
Expand description

How to grow a region.

Fields§

§cutoff: Cutoff

Which points each fit keeps, and how far from the model a vertex may lie and its triangle still join: for Cutoff::Sigma and Cutoff::Median the gate grow describes, k σ over many points; for Cutoff::Distance the distance, widened only by the fit’s own uncertainty. Cutoff::All puts no limit on the distance, and growth is held by the normals alone.

§normal_limit: f64

The largest angle, in radians, between a triangle’s normal and the model’s for it to join; above zero and at most π/2. A scan’s noise turns a triangle’s normal by about the noise over the triangle’s size, which the limit must clear.

§peel: bool

Take the region’s rim off, ring by ring, while it turns away from the model by clearly more than the noise; needs a cutoff with a threshold.

§max_triangles: Option<usize>

The most triangles growth reaches; a seed’s first rings are kept whole even past it.

§fixed: FitFixed

What every fit holds fixed.

§side: Option<Side>

Which side the material is on; where not given, the mesh’s normals decide.

§crease_limit: f64

The angle, in radians, the surface must turn through across an edge, between its two triangles’ normals, for a curve to be traced along it; above zero and below π. As with the normal limit, the noise turns an edge by about the noise over the triangles’ size, which the limit must clear.

Trait Implementations§

Source§

impl Clone for GrowOptions

Source§

fn clone(&self) -> Self

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 GrowOptions

Source§

impl Debug for GrowOptions

Source§

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

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

impl Default for GrowOptions

Source§

fn default() -> Self

A 3σ cutoff, which keeps 99.7 % of Gaussian noise, and a normal limit and a crease limit of π/6, which the noise of a mesh whose triangles are ten times the noise across turns past rarely.

Source§

impl PartialEq for GrowOptions

Source§

fn eq(&self, other: &Self) -> 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 GrowOptions

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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,

§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

§

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

Checks if self is actually part of its subset T (and can be converted to it).
§

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

The inclusion map: converts self to the equivalent element of its superset.
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 = !

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

fn try_from(value: U) -> Result<T, !>

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.