|
ACF $AcfVersion:0$
|
Common interface for describing the 2D-objects. More...
#include <IObject2d.h>
Public Types | |
| enum | ChangeFlags { CF_OBJECT_POSITION = 0x6ba340 } |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Member Functions | |
| virtual CVector2d | GetCenter () const =0 |
| Returns center of this 2D-object. | |
| virtual void | MoveCenterTo (const CVector2d &position)=0 |
Move object to position position. | |
| virtual CRectangle | GetBoundingBox () const =0 |
| Get bounding box of this shape. | |
| virtual void | SetCalibration (const ICalibration2d *calibrationPtr, bool releaseFlag=false)=0 |
| Set calibration of this object. | |
| virtual bool | Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)=0 |
| Transform this object using some transformation. | |
| virtual bool | InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)=0 |
| Do inverse transformation of this object. | |
| virtual bool | GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const =0 |
| Calulate transformation of the object into second one. | |
| virtual bool | GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const =0 |
| Calulate inverse transformation of the object into second one. | |
Public Member Functions inherited from iser::IObject | |
| virtual QByteArray | GetFactoryId () const |
Public Member Functions inherited from iser::ISerializable | |
| virtual bool | Serialize (IArchive &archive)=0 |
| Load or store state of this object as a archive stream. | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Public Member Functions inherited from i2d::ICalibrationProvider | |
| virtual const ICalibration2d * | GetCalibration () const =0 |
| Get access to transformation object, which transforms a local logical coordinate system to global one. | |
Additional Inherited Members | |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Common interface for describing the 2D-objects.
Definition at line 23 of file IObject2d.h.
| Enumerator | |
|---|---|
| CF_OBJECT_POSITION | |
Definition at line 28 of file IObject2d.h.
|
pure virtual |
Get bounding box of this shape.
Please note, this bounding box is in logical units, the calibration will not be considered.
Implemented in i2d::CAnnulus, i2d::CAnnulusSegment, i2d::CArc, i2d::CCircle, i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dProxyComp, i2d::CParallelogram, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, i2d::CRectangle, iimg::CBitmapBase, and iimg::CScanlineMask.
Referenced by iimg::CScanlineMask::CalculateMaskFromBitmap().
|
pure virtual |
Returns center of this 2D-object.
Implemented in i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dProxyComp, i2d::CParallelogram, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, i2d::CRectangle, iimg::CBitmapBase, and iimg::CScanlineMask.
|
pure virtual |
Calulate inverse transformation of the object into second one.
Please note, that this operation transforms logical coordinates, it means that the calibration will be ignored.
| mode | controls needed transformation exactness. |
| errorFactorPtr | optional output where approximated length of transformation error vector will be stored. Value 0 means that transformation is exactly done. |
| result | result object. |
Implemented in i2d::CParallelogram, i2d::CAnnulus, i2d::CArc, i2d::CCircle, i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dBase, i2d::CObject2dProxyComp, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, and i2d::CRectangle.
|
pure virtual |
Calulate transformation of the object into second one.
Please note, that this operation transforms logical coordinates, it means that the calibration will be ignored.
| mode | controls needed transformation exactness. |
| errorFactorPtr | optional output where approximated length of transformation error vector will be stored. Value 0 means that transformation is exactly done. |
| result | result object. |
Implemented in i2d::CParallelogram, i2d::CAnnulus, i2d::CArc, i2d::CCircle, i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dBase, i2d::CObject2dProxyComp, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, and i2d::CRectangle.
|
pure virtual |
Do inverse transformation of this object.
Please note, that this operation transforms logical coordinates, it means that the calibration will be ignored.
| mode | controls needed transformation exactness. |
| errorFactorPtr | optional output where approximated length of transformation error vector will be stored. Value 0 means that transformation is exactly done. |
Implemented in i2d::CParallelogram, i2d::CAnnulus, i2d::CAnnulusSegment, i2d::CArc, i2d::CCircle, i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dBase, i2d::CObject2dProxyComp, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, and i2d::CRectangle.
|
pure virtual |
Move object to position position.
Implemented in i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dProxyComp, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, i2d::CRectangle, i2d::CParallelogram, iimg::CBitmapBase, and iimg::CScanlineMask.
|
pure virtual |
Set calibration of this object.
| releaseFlag | if true, pointed object will be automatically released. |
Implemented in i2d::CObject2dBase, and i2d::CObject2dProxyComp.
|
pure virtual |
Transform this object using some transformation.
Please note, that this operation transforms logical coordinates, it means that the calibration will be ignored.
| mode | controls needed transformation exactness. |
| errorFactorPtr | optional output where approximated length of transformation error vector will be stored. Value 0 means that transformation is exactly done. |
Implemented in i2d::CParallelogram, i2d::CAnnulus, i2d::CAnnulusSegment, i2d::CArc, i2d::CCircle, i2d::CGraphData2d, i2d::CLine2d, i2d::CObject2dBase, i2d::CObject2dProxyComp, i2d::CPolypoint, i2d::CPosition2d, i2d::CQuadrangle, i2d::CRectangle, and i2d::CTubePolyline.