pub struct MeshSolidOptions {
pub merge_coplanar: bool,
pub coplanar_angle: f64,
pub coplanar_distance: Option<f64>,
pub weld: Option<f64>,
pub recognize: bool,
pub crease: f64,
}Expand description
How solid_from_mesh builds.
Fields§
§merge_coplanar: boolMerge adjacent coplanar triangles into one planar face, and collinear boundary segments into one edge. Without it every triangle is a face and every mesh edge an edge.
coplanar_angle: f64The angle, in radians, below which two triangles’ normals count as parallel for merging.
coplanar_distance: Option<f64>How far a triangle’s corner may sit off a face’s plane, or a
merged edge’s intermediate vertex off its line, and still be merged.
None takes the resolution a mesh stored in single precision has:
a millionth of its bounding box’s diagonal, never below the weld
distance. The vertices and edges of a merged face widen their
tolerances to cover what they stand off it.
weld: Option<f64>Vertices closer than this are welded into one before building; an
STL repeats every vertex once per triangle that uses it. None is
the confusion tolerance.
recognize: boolRecognize curved regions as cylinders, cones, spheres and tori, at
the coplanar distance. Needs merge_coplanar.
crease: f64The angle, in radians, from which a turn between two triangles is a crease (an edge of the model) rather than the surface curving on: thirty degrees by default. A mesh drawn coarser than this round a curve reads as facets.
Trait Implementations§
Source§impl Clone for MeshSolidOptions
impl Clone for MeshSolidOptions
Source§fn clone(&self) -> MeshSolidOptions
fn clone(&self) -> MeshSolidOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for MeshSolidOptions
Source§impl Debug for MeshSolidOptions
impl Debug for MeshSolidOptions
Source§impl Default for MeshSolidOptions
impl Default for MeshSolidOptions
Source§impl PartialEq for MeshSolidOptions
impl PartialEq for MeshSolidOptions
Source§fn eq(&self, other: &MeshSolidOptions) -> bool
fn eq(&self, other: &MeshSolidOptions) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for MeshSolidOptions
Auto Trait Implementations§
impl Freeze for MeshSolidOptions
impl RefUnwindSafe for MeshSolidOptions
impl Send for MeshSolidOptions
impl Sync for MeshSolidOptions
impl Unpin for MeshSolidOptions
impl UnsafeUnpin for MeshSolidOptions
impl UnwindSafe for MeshSolidOptions
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<T> Scalar 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>
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.