![]() |
ICF 3.1.1.10
Technical documentation of ICF Libraries
|
Definition of the data model for a polygon. More...
#include <CPolygon.h>
Public Types | |
| typedef CPolypoint | BaseClass |
Public Types inherited from i2d::IObject2d | |
| enum | ChangeFlags { CF_OBJECT_POSITION = 0x6ba340 } |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ICF_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 , SO_CHANGE_LOCK = 1 << 5 } |
| 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... | |
Public Member Functions | |
| CPolygon (const QPolygonF &qpolygon=QPolygonF()) | |
| operator QPolygonF () const | |
| bool | Contains (const i2d::CVector2d &point) const |
| Check if the polygon contains a given point. | |
| virtual double | GetOutlineLength () const |
| Get outline length of this polygon. | |
| virtual void | FlipByX () |
| Flip object by X-axis. | |
| virtual void | FlipByY () |
| Flip object by Y-axis. | |
| virtual void | Rotate (double radians) |
| Rotate object around its center. | |
| virtual void | ReverseNodes () |
| Reverses nodes order. | |
| double | GetArea (bool oriented=false) const |
| Get area of the polygon. | |
| double | GetPerimeter () const |
| Get perimeter of the polygon. | |
| bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| std::unique_ptr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
| QByteArray | GetFactoryId () const override |
Public Member Functions inherited from i2d::CPolypoint | |
| virtual void | Clear () |
| Removes all nodes. | |
| virtual void | SetNodesCount (int nodesCount) |
| Set new nodes count. | |
| virtual int | GetNodesCount () const |
| Return size of node table. | |
| bool | IsEmpty () const |
Return true if there are no points. | |
| virtual const i2d::CVector2d & | GetNodePos (int index) const |
| Return position of node at specified index. | |
| i2d::CVector2d & | GetNodePosRef (int index) |
| Get reference to position object for node. | |
| virtual void | SetNodePos (int index, const i2d::CVector2d &position) |
| Set node at specified index. | |
| virtual bool | InsertNode (const i2d::CVector2d &position) |
| Insert a node at the end of node table. | |
| virtual bool | InsertNode (int index, const i2d::CVector2d &position) |
| Insert a node at specified index. | |
| virtual bool | RemoveNode (int index) |
| Remove a node at specified index. | |
| CVector2d | GetCenter () const override |
| Returns center of this 2D-object. | |
| void | MoveCenterTo (const CVector2d &position) override |
Move object to position position. | |
| i2d::CRectangle | GetBoundingBox () const override |
| Get bounding box of this shape. | |
| bool | Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) override |
| Transform this object using some transformation. | |
| bool | InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) override |
| Do inverse transformation of this object. | |
| bool | GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) const override |
| Calulate transformation of the object into second one. | |
| bool | GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=nullptr) const override |
| Calulate inverse transformation of the object into second one. | |
| QByteArray | GetFactoryId () const override |
| bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
| int | GetSupportedOperations () const override |
| Get set of flags for supported operations. | |
| bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| std::unique_ptr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
| bool | IsEqual (const IChangeable &object) const override |
Public Member Functions inherited from i2d::CObject2dBase | |
| CObject2dBase () | |
| CObject2dBase (const CObject2dBase &object2d) | |
| CObject2dBase (CObject2dBase &&object2d) | |
| const ICalibration2d * | GetCalibration () const override |
| Get access to transformation object, which transforms a local logical coordinate system to global one. | |
| void | SetCalibration (istd::TOptDelPtr< const ICalibration2d > &&calibrationPtr) override |
| Set calibration of this object. | |
| bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Copy this object from another one. | |
| bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Reset data to its default state. | |
| CObject2dBase & | operator= (const CObject2dBase &object2d) |
| CObject2dBase & | operator= (CObject2dBase &&object2d) |
Public Member Functions inherited from i2d::IObject2d | |
Public Member Functions inherited from iser::IObject | |
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 bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual QMutex * | GetChangesLock () const |
| Get mutex beeing locked during changes, if available. | |
| 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 i2d::ICalibration2dProvider | |
Static Public Member Functions | |
| static QByteArray | GetTypeName () |
Static Public Member Functions inherited from i2d::CPolypoint | |
| 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. | |
Additional Inherited Members | |
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::CPolypoint | |
| static const istd::IChangeable::ChangeSet | s_clearAllNodesChange |
| static const istd::IChangeable::ChangeSet | s_createPolygonNodesChange |
| static const istd::IChangeable::ChangeSet | s_insertPolygonNodeChange |
| static const istd::IChangeable::ChangeSet | s_removePolygonNodeChange |
Static Protected Attributes inherited from i2d::CObject2dBase | |
| static const ChangeSet | s_objectMovedChange |
| static const ChangeSet | s_objectModifiedChange |
Definition of the data model for a polygon.
Definition at line 23 of file CPolygon.h.
Definition at line 26 of file CPolygon.h.
| i2d::CPolygon::CPolygon | ( | const QPolygonF & | qpolygon = QPolygonF() | ) |
|
overridevirtual |
Make a copy of this object.
You may check, if this functionality is supported over GetSupportedOperations().
Reimplemented from istd::IChangeable.
Reimplemented in i2d::CPolyline, and i2d::CSpline.
| bool i2d::CPolygon::Contains | ( | const i2d::CVector2d & | point | ) | const |
Check if the polygon contains a given point.
|
override |
|
virtual |
Flip object by X-axis.
|
virtual |
Flip object by Y-axis.
| double i2d::CPolygon::GetArea | ( | bool | oriented = false | ) | const |
Get area of the polygon.
|
overridevirtual |
Reimplemented from iser::IObject.
Reimplemented in i2d::CPolyline.
|
virtual |
Get outline length of this polygon.
| double i2d::CPolygon::GetPerimeter | ( | ) | const |
Get perimeter of the polygon.
|
static |
| i2d::CPolygon::operator QPolygonF | ( | ) | const |
|
virtual |
Reverses nodes order.
|
virtual |
Rotate object around its center.
© Witold Gantzke and Kirill Lepskiy