MeshLib C# Docs
Loading...
Searching...
No Matches
MR.Const_PointToPlaneAligningTransform Class Reference

This class and its main method can be used to solve the problem of 3D shape alignment. This algorithm uses a point-to-plane error metric in which the object of minimization is the sum of the squared distance between a point and the tangent plane at its correspondence point. To use this technique it's need to have small rotation angles. So there is an approximate solution. The result of this algorithm is the transformation of first points (p1) which aligns it to the second ones (p2). Generated from class MR.PointToPlaneAligningTransform. This is the const half of the class. More...

+ Inheritance diagram for MR.Const_PointToPlaneAligningTransform:

Classes

struct  _Underlying
 

Public Member Functions

virtual void Dispose ()
 
unsafe Const_PointToPlaneAligningTransform ()
 Constructs an empty (default-constructed) instance.
 
unsafe Const_PointToPlaneAligningTransform (MR._ByValue_PointToPlaneAligningTransform _other)
 Generated from constructor MR.PointToPlaneAligningTransform.PointToPlaneAligningTransform.
 
unsafe MR.AffineXf3d findBestRigidXf ()
 Compute transformation as the solution to a least squares optimization problem: xf( p1_i ) = p2_i this version searches for best rigid body transformation Generated from method MR.PointToPlaneAligningTransform.findBestRigidXf.
 
unsafe MR.AffineXf3d findBestRigidScaleXf ()
 this version searches for best rigid body transformation with uniform scaling Generated from method MR.PointToPlaneAligningTransform.findBestRigidScaleXf.
 
unsafe MR.AffineXf3d findBestRigidXfFixedRotationAxis (in MR.Vector3d axis)
 this version searches for best transformation where rotation is allowed only around given axis and with arbitrary translation Generated from method MR.PointToPlaneAligningTransform.findBestRigidXfFixedRotationAxis.
 
unsafe MR.AffineXf3d findBestRigidXfOrthogonalRotationAxis (in MR.Vector3d ort)
 this version searches for best transformation where rotation is allowed only around axes orthogonal to given one Generated from method MR.PointToPlaneAligningTransform.findBestRigidXfOrthogonalRotationAxis.
 
unsafe MR.Vector3d findBestTranslation (MR._InOpt_Vector3d rotAngles=default, double? scale=null)
 this version searches for best translational part of affine transformation with given linear part Generated from method MR.PointToPlaneAligningTransform.findBestTranslation. Parameter rotAngles defaults to {}. Parameter scale defaults to 1.
 
unsafe MR.RigidScaleXf3d calculateAmendment ()
 Compute transformation relative to given approximation and return it as angles and shift (scale = 1) Generated from method MR.PointToPlaneAligningTransform.calculateAmendment.
 
unsafe MR.RigidScaleXf3d calculateAmendmentWithScale ()
 Compute transformation relative to given approximation and return it as scale, angles and shift Generated from method MR.PointToPlaneAligningTransform.calculateAmendmentWithScale.
 
unsafe MR.RigidScaleXf3d calculateFixedAxisAmendment (in MR.Vector3d axis)
 this version searches for best transformation where rotation is allowed only around given axis and with arbitrary translation Generated from method MR.PointToPlaneAligningTransform.calculateFixedAxisAmendment.
 
unsafe MR.RigidScaleXf3d calculateOrthogonalAxisAmendment (in MR.Vector3d ort)
 this version searches for best transformation where rotation is allowed only around axes orthogonal to given one Generated from method MR.PointToPlaneAligningTransform.calculateOrthogonalAxisAmendment.
 

Protected Member Functions

virtual unsafe void Dispose (bool disposing)
 

Additional Inherited Members

- Protected Attributes inherited from MR.Misc.Object< Const_PointToPlaneAligningTransform >
bool _IsOwningVal
 
- Properties inherited from MR.Misc.Object< Const_PointToPlaneAligningTransform >
virtual bool _IsOwning [get]
 Returns true if this is an owning instance, and when disposed, will destroy the underlying C++ instance. If false, we assume that the underlying C++ instance will live long enough.
 

Detailed Description

This class and its main method can be used to solve the problem of 3D shape alignment. This algorithm uses a point-to-plane error metric in which the object of minimization is the sum of the squared distance between a point and the tangent plane at its correspondence point. To use this technique it's need to have small rotation angles. So there is an approximate solution. The result of this algorithm is the transformation of first points (p1) which aligns it to the second ones (p2). Generated from class MR.PointToPlaneAligningTransform. This is the const half of the class.


The documentation for this class was generated from the following file: