MeshLib Python Docs
Loading...
Searching...
No Matches
mrmeshpy.PointToPointAligningTransform Class Reference

Public Member Functions

None __init__ (self)
 
None __init__ (self, PointToPointAligningTransform arg0)
 
None add (self, Vector3d p1, Vector3d p2, float w=1)
 
None add (self, Vector3f p1, Vector3f p2, float w=1)
 
None add (self, PointToPointAligningTransform other)
 
Vector3d centroid1 (self)
 
Vector3d centroid2 (self)
 
None clear (self)
 
AffineXf3d findBestRigidScaleXf (self)
 
AffineXf3d findBestRigidXf (self)
 
AffineXf3d findBestRigidXfFixedRotationAxis (self, Vector3d axis)
 
AffineXf3d findBestRigidXfOrthogonalRotationAxis (self, Vector3d ort)
 
Vector3d findBestTranslation (self)
 
float totalWeight (self)
 

Static Protected Member Functions

 _pybind11_conduit_v1_ (*args, **kwargs)
 

Detailed Description

Generated from:  MR::PointToPointAligningTransform

This class and its main method can be used to solve the problem well-known as the absolute orientation problem.
It means computing the transformation that aligns two sets of points for which correspondence is known.

Constructor & Destructor Documentation

◆ __init__() [1/2]

None mrmeshpy.PointToPointAligningTransform.__init__ ( self)
Implicit default constructor.

◆ __init__() [2/2]

None mrmeshpy.PointToPointAligningTransform.__init__ ( self,
PointToPointAligningTransform arg0 )
Implicit copy constructor.

Member Function Documentation

◆ _pybind11_conduit_v1_()

mrmeshpy.PointToPointAligningTransform._pybind11_conduit_v1_ ( * args,
** kwargs )
staticprotected

◆ add() [1/3]

None mrmeshpy.PointToPointAligningTransform.add ( self,
PointToPointAligningTransform other )
Add another two sets of points.

◆ add() [2/3]

None mrmeshpy.PointToPointAligningTransform.add ( self,
Vector3d p1,
Vector3d p2,
float w = 1 )
Add one pair of points in the set

◆ add() [3/3]

None mrmeshpy.PointToPointAligningTransform.add ( self,
Vector3f p1,
Vector3f p2,
float w = 1 )
Add one pair of points in the set

◆ centroid1()

Vector3d mrmeshpy.PointToPointAligningTransform.centroid1 ( self)
returns weighted centroid of points p1 accumulated so far

◆ centroid2()

Vector3d mrmeshpy.PointToPointAligningTransform.centroid2 ( self)
returns weighted centroid of points p2 accumulated so far

◆ clear()

None mrmeshpy.PointToPointAligningTransform.clear ( self)
Clear sets.

◆ findBestRigidScaleXf()

AffineXf3d mrmeshpy.PointToPointAligningTransform.findBestRigidScaleXf ( self)
this version searches for best rigid body transformation with uniform scaling

◆ findBestRigidXf()

AffineXf3d mrmeshpy.PointToPointAligningTransform.findBestRigidXf ( self)
Compute transformation as the solution to a least squares formulation of the problem:
xf( p1_i ) = p2_i
this version searches for best rigid body transformation

◆ findBestRigidXfFixedRotationAxis()

AffineXf3d mrmeshpy.PointToPointAligningTransform.findBestRigidXfFixedRotationAxis ( self,
Vector3d axis )
this version searches for best transformation where rotation is allowed only around given axis and with arbitrary translation

◆ findBestRigidXfOrthogonalRotationAxis()

AffineXf3d mrmeshpy.PointToPointAligningTransform.findBestRigidXfOrthogonalRotationAxis ( self,
Vector3d ort )
this version searches for best transformation where rotation is allowed only around axes orthogonal to given one

◆ findBestTranslation()

Vector3d mrmeshpy.PointToPointAligningTransform.findBestTranslation ( self)
Simplified solution for translational part only

◆ totalWeight()

float mrmeshpy.PointToPointAligningTransform.totalWeight ( self)
returns summed weight of points accumulated so far

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