32 I_REGISTER_INTERFACE(ICalibration2d);
33 I_REGISTER_INTERFACE(ITransformation2d);
35 I_ASSIGN(m_calibrationProviderCompPtr,
"CalibrationProvider",
"Provider of a 2D calibration",
true,
"CalibrationProvider");
36 I_ASSIGN_TO(m_calibrationProviderModelCompPtr, m_calibrationProviderCompPtr,
true);
37 I_ASSIGN(m_defaultCalibrCompPtr,
"DefaultCalibrationProvider",
"Provides default (fallback) calibration if the input calibration provider was failed",
false,
"DefaultCalibrationProvider");
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.
Common interface for an object, which delivers a 2D-calibration.
Implementation of a proxy of ICalibration2d interface realized over ICalibration2dProvider access.
std::unique_ptr< i2d::ICalibration2d > CreateCombinedCalibration(const ITransformation2d &transformation) const override
virtual 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 GetInvValueAt(const i2d::CVector2d &argument, i2d::CVector2d &result) const override
bool Serialize(iser::IArchive &archive) override
Load or store state of this object as a archive stream.
virtual bool GetPositionAt(const i2d::CVector2d &origPosition, i2d::CVector2d &result, ExactnessMode mode=EM_NONE) const override
Get position after transformation.
i2d::CVector2d GetValueAt(const i2d::CVector2d &argument) const override
void OnComponentCreated() override
std::unique_ptr< istd::IChangeable > CloneMe(CompatibilityMode mode=CM_WITHOUT_REFS) const override
Make a copy of this object.
const i2d::CRectangle * GetArgumentArea() const override
Get optional area where arguments are defined properly.
i2d::CVector2d GetInvValueAt(const i2d::CVector2d &argument) const override
bool GetValueAt(const i2d::CVector2d &argument, i2d::CVector2d &result) const override
icomp::CComponentBase BaseClass
virtual 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.
void OnComponentDestroyed() override
virtual 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...
const imath::IUnitInfo * GetArgumentUnitInfo() const override
Get unit description of calibration input (transformation function argument).
const imath::IUnitInfo * GetResultUnitInfo() const override
Get unit description of calibration output (transformation function result).
virtual bool GetInvPositionAt(const i2d::CVector2d &transfPosition, i2d::CVector2d &result, ExactnessMode mode=EM_NONE) const override
Get position after transformation.
CCalibration2dProxyComp()
const i2d::CRectangle * GetResultArea() const override
Get optional area where results are defined properly.
int GetTransformationFlags() const override
Get flags of describing type of this transformation.
Base class for component implementation.
Common interface to get information about a measurement unit.
Reflects the changes of observed objects as changes of some other object (over istd::IChangeable),...
Common interface for model objects, that supports Model/Observer design pattern.
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.