pub struct Icp {
pub point_to_plane: bool,
pub cutoff: Cutoff,
pub max_distance: Option<f64>,
pub facing_limit: Option<f64>,
pub starts: Starts,
pub max_iter: u32,
pub sample: usize,
pub seed: u64,
pub tol: Tolerances,
}Expand description
How icp and symmetry_plane register.
Fields§
§point_to_plane: boolWhether a step minimises the distances to the planes through the nearest points rather than to the points themselves.
cutoff: CutoffWhich pairs a round keeps, by their distances.
max_distance: Option<f64>The farthest a sample’s nearest point may be for the two to pair;
None pairs at any distance.
facing_limit: Option<f64>The greatest angle, in radians, between a sample’s own normal and
the triangles it may pair on, in [0, π]; None pairs on all of
them.
starts: StartsWhere to start from.
max_iter: u32The most rounds per start.
sample: usizeHow many of the points to register by, chosen by a generator seeded
with Icp::seed; zero, or at least the points’ count, takes every
point.
seed: u64The seed the sample is chosen with.
tol: TolerancesThe tolerances: an increment moving no sample further than their confusion distance has converged.
Implementations§
Source§impl Icp
impl Icp
Sourcepub fn check(&self) -> OgeomResult<()>
pub fn check(&self) -> OgeomResult<()>
The options checked: the cutoff’s own number, a positive farthest
distance, a facing limit in [0, π], and given starts that are
there and rigid.
§Errors
As Cutoff::check;
OgeomError::Domain for any of the
others.
Trait Implementations§
impl StructuralPartialEq for Icp
Auto Trait Implementations§
impl Freeze for Icp
impl RefUnwindSafe for Icp
impl Send for Icp
impl Sync for Icp
impl Unpin for Icp
impl UnsafeUnpin for Icp
impl UnwindSafe for Icp
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.