|
ACF $AcfVersion:0$
|
Definition of graphical annulus object. More...
#include <CAnnulus.h>
Public Types | |
| typedef i2d::CPosition2d | BaseClass |
Public Types inherited from i2d::IObject2d | |
| 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 | |
| CAnnulus () | |
| Construct an empty annulus object. | |
| CAnnulus (const i2d::CVector2d ¢er, double innerRadius, double outerRadius) | |
| Construct an annulus object by the given position, inner and outer radius. | |
| bool | IsAnnulusValid () const |
| Check, if the annulus is valid. | |
| double | GetInnerRadius () const |
| Get the inner radius of the annulus. | |
| void | SetInnerRadius (double innerRadius) |
| Set the inner radius of the annulus. | |
| double | GetOuterRadius () const |
| Get the outer radius of the annulus. | |
| void | SetOuterRadius (double outerRadius) |
| Set the outer radius of the annulus. | |
| void | SetInnerOuterRadius (double radius1, double radius2) |
| Set the inner and outer radius of the annulus. | |
| CCircle | GetInnerCircle () const |
| Set the inner circle of the annulus object. | |
| CCircle | GetOuterCircle () const |
| Set the outer circle of the annulus object. | |
| bool | operator== (const CAnnulus &annulus) const |
| Compare with another annulus. | |
| bool | operator!= (const CAnnulus &annulus) const |
| Compare with another annulus. | |
| bool | ConvertToPolygon (i2d::CPolygon &result, int segmentsCount=0) const |
| Performs conversion of the annulus splitting it to segmentsCount segments to the polygon result. | |
| virtual CRectangle | GetBoundingBox () const override |
| Get bounding box of this shape. | |
| virtual bool | Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override |
| Transform this object using some transformation. | |
| virtual bool | InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override |
| Do inverse transformation of this object. | |
| virtual bool | GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const override |
| 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 override |
| Calulate inverse transformation of the object into second one. | |
| virtual int | GetSupportedOperations () const override |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
| virtual bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
Public Member Functions inherited from i2d::CPosition2d | |
| CPosition2d () | |
| CPosition2d (const CVector2d ¢er) | |
| const CVector2d & | GetPosition () const |
| void | SetPosition (const CVector2d &position) |
| void | Translate (const i2d::CVector2d &vector) |
| CPosition2d | GetTranslated (const i2d::CVector2d &vector) const |
| virtual CVector2d | GetCenter () const override |
| Returns center of this 2D-object. | |
| virtual void | MoveCenterTo (const CVector2d &position) override |
Move object to position position. | |
| virtual QByteArray | GetFactoryId () const override |
| virtual bool | IsEqual (const istd::IChangeable &object) const override |
| Compare this object with another object. | |
Public Member Functions inherited from i2d::CObject2dBase | |
| CObject2dBase () | |
| CObject2dBase (const CObject2dBase &object2d) | |
| CObject2dBase (CObject2dBase &&object2d) | |
| CObject2dBase & | operator= (const CObject2dBase &object2d) |
| CObject2dBase & | operator= (CObject2dBase &&object2d) |
| virtual const ICalibration2d * | GetCalibration () const override |
| Get access to transformation object, which transforms a local logical coordinate system to global one. | |
| virtual void | SetCalibration (const ICalibration2d *calibrationPtr, bool releaseFlag=false) override |
| Set calibration of this object. | |
| virtual bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Copy this object from another one. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Reset data to its default state. | |
Public Member Functions inherited from iser::ISerializable | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| 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 () |
Protected Attributes | |
| istd::CRange | m_radiusRange |
Protected Attributes inherited from i2d::CPosition2d | |
| CVector2d | m_position |
Additional Inherited Members | |
Static Public Member Functions inherited from i2d::CPosition2d | |
| static QByteArray | GetTypeName () |
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. | |
Static Protected Attributes inherited from i2d::CObject2dBase | |
| static const ChangeSet | s_objectMovedChange |
| static const ChangeSet | s_objectModifiedChange |
Definition of graphical annulus object.
Annulus is area between two concentrical circles. This object is stored using center position and two radii.
Definition at line 19 of file CAnnulus.h.
Definition at line 22 of file CAnnulus.h.
| i2d::CAnnulus::CAnnulus | ( | ) |
Construct an empty annulus object.
| i2d::CAnnulus::CAnnulus | ( | const i2d::CVector2d & | center, |
| double | innerRadius, | ||
| double | outerRadius | ||
| ) |
Construct an annulus object by the given position, inner and outer radius.
|
overridevirtual |
Make a copy of this object.
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
| bool i2d::CAnnulus::ConvertToPolygon | ( | i2d::CPolygon & | result, |
| int | segmentsCount = 0 |
||
| ) | const |
Performs conversion of the annulus splitting it to segmentsCount segments to the polygon result.
If segmentsCount <= 0 then number of segments will be calculated automatically, otherwise segmentsCount must be equal or greater then 3.
|
overridevirtual |
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
|
overridevirtual |
Get bounding box of this shape.
Please note, this bounding box is in logical units, the calibration will not be considered.
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
| CCircle i2d::CAnnulus::GetInnerCircle | ( | ) | const |
Set the inner circle of the annulus object.
| double i2d::CAnnulus::GetInnerRadius | ( | ) | const |
Get the inner radius of the annulus.
|
overridevirtual |
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. |
Reimplemented from i2d::CPosition2d.
| CCircle i2d::CAnnulus::GetOuterCircle | ( | ) | const |
Set the outer circle of the annulus object.
| double i2d::CAnnulus::GetOuterRadius | ( | ) | const |
Get the outer radius of the annulus.
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
|
overridevirtual |
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. |
Reimplemented from i2d::CPosition2d.
|
overridevirtual |
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. |
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
| bool i2d::CAnnulus::IsAnnulusValid | ( | ) | const |
Check, if the annulus is valid.
An annulus is valid, if its radius range is valid.
| bool i2d::CAnnulus::operator!= | ( | const CAnnulus & | annulus | ) | const |
Compare with another annulus.
| bool i2d::CAnnulus::operator== | ( | const CAnnulus & | annulus | ) | const |
Compare with another annulus.
|
overridevirtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
| void i2d::CAnnulus::SetInnerOuterRadius | ( | double | radius1, |
| double | radius2 | ||
| ) |
Set the inner and outer radius of the annulus.
| void i2d::CAnnulus::SetInnerRadius | ( | double | innerRadius | ) |
Set the inner radius of the annulus.
| void i2d::CAnnulus::SetOuterRadius | ( | double | outerRadius | ) |
Set the outer radius of the annulus.
|
overridevirtual |
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. |
Reimplemented from i2d::CPosition2d.
Reimplemented in i2d::CAnnulusSegment.
|
protected |
Definition at line 122 of file CAnnulus.h.