96 double m_distortionFactor;
This class defines an affine 2D-transformation.
Definition of rectangle area orthogonal to axis of coordination system.
Definition of position or mathematical vector on 2D plane.
static const CVector2d & GetZero()
Represents simple correction of image distortion by lenses.
void Reset(const i2d::CVector2d &opticalCenter=i2d::CVector2d::GetZero(), double distortionFactor=0, double scaleFactor=1)
Reset this calibration, set to be identity transform.
const i2d::CRectangle * GetResultArea() const override
Get optional area where results are defined properly.
bool GetPositionAt(const i2d::CVector2d &origPosition, i2d::CVector2d &result, ExactnessMode mode=EM_NONE) const override
Get position after transformation.
CSimpleLensCorrection(const i2d::CVector2d &opticalCenter, double distortionFactor=0, double scaleFactor=1)
virtual void SetScaleFactor(double factor)
double GetScaleFactor() const
bool ResetData(CompatibilityMode mode=CM_WITHOUT_REFS) override
Reset data to its default state.
bool GetDistance(const i2d::CVector2d &origPos1, const i2d::CVector2d &origPos2, double &result, ExactnessMode mode=EM_NONE) const override
Compute a shortness distance in transformed coordinations.
bool CopyFrom(const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
Copy this object from another one.
int GetTransformationFlags() const override
Get flags of describing type of this transformation.
i2d::CVector2d GetValueAt(const i2d::CVector2d &argument) const override
const i2d::CVector2d & GetOpticalCenter() const
bool GetInvPositionAt(const i2d::CVector2d &transfPosition, i2d::CVector2d &result, ExactnessMode mode=EM_NONE) const override
Get position after transformation.
bool operator==(const CSimpleLensCorrection &calib) const
i2d::CVector2d GetInvValueAt(const i2d::CVector2d &argument) const override
const i2d::CRectangle * GetArgumentArea() const override
Get optional area where arguments are defined properly.
bool operator!=(const CSimpleLensCorrection &calib) const
int GetSupportedOperations() const override
Get set of flags for supported operations.
std::unique_ptr< i2d::ICalibration2d > CreateCombinedCalibration(const ITransformation2d &transformation) const override
double GetDistortionFactor() const
bool GetLocalTransform(const i2d::CVector2d &origPosition, i2d::CAffine2d &result, ExactnessMode mode=EM_NONE) const override
Get local transformation (from original to transformed coordinate system) at some original position.
const imath::IUnitInfo * GetArgumentUnitInfo() const override
Get unit description of calibration input (transformation function argument).
std::unique_ptr< istd::IChangeable > CloneMe(CompatibilityMode mode=CM_WITHOUT_REFS) const override
Make a copy of this object.
virtual void SetOpticalCenter(const i2d::CVector2d ¢er)
const imath::IUnitInfo * GetResultUnitInfo() const override
Get unit description of calibration output (transformation function result).
virtual void SetDistortionFactor(double factor)
bool GetLocalInvTransform(const i2d::CVector2d &transfPosition, i2d::CAffine2d &result, ExactnessMode mode=EM_NONE) const override
Get local transformation (from transformed to original coordinate system) at some transformed positio...
bool Serialize(iser::IArchive &archive) override
Load or store state of this object as a archive stream.
bool IsEqual(const istd::IChangeable &object) const override
Compare this object with another object.
bool GetInvValueAt(const i2d::CVector2d &argument, i2d::CVector2d &result) const override
bool GetValueAt(const i2d::CVector2d &argument, i2d::CVector2d &result) const override
Common interface to get information about a measurement unit.
Represent input/output persistence archive.
Common interface for data model objects, which can be changed.
CompatibilityMode
Control how relationship betweeen objects are interpreted.
@ CM_WITHOUT_REFS
External references are simple ignored.
Contains interfaces, implementations and components related to 2D calibration and transformations.