![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Radial segment of the annulus object. More...
#include <CAnnulusSegment.h>
Public Types | |
typedef CAnnulus | BaseClass |
![]() | |
typedef i2d::CPosition2d | BaseClass |
![]() | |
enum | ChangeFlags { CF_OBJECT_POSITION = 0x6ba340 } |
![]() | |
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 | |
CAnnulusSegment () | |
CAnnulusSegment (const i2d::CVector2d ¢er, double innerRadius, double outerRadius, double beginAngle, double endAngle) | |
double | GetBeginAngle () const |
void | SetBeginAngle (double angle) |
double | GetEndAngle () const |
void | SetEndAngle (double angle) |
bool | Contains (const i2d::CVector2d &point) const |
Return true if a given point is inside of annulus segment area. | |
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. | |
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 | Serialize (iser::IArchive &archive) override |
Load or store state of this object as a archive stream. | |
![]() | |
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. | |
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. | |
bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
![]() | |
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 |
CVector2d | GetCenter () const override |
Returns center of this 2D-object. | |
void | MoveCenterTo (const CVector2d &position) override |
Move object to position position . | |
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 |
bool | IsEqual (const istd::IChangeable &object) const override |
Compare this object with another object. | |
std::unique_ptr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
Make a copy of this object. | |
![]() | |
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) |
![]() | |
![]() | |
![]() | |
virtual quint32 | GetMinimalVersion (int versionId) const |
Get minimal needed version to correct storing of this data. | |
![]() | |
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. | |
![]() |
Additional Inherited Members | |
![]() | |
static QByteArray | GetTypeName () |
![]() | |
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. | |
![]() | |
virtual void | OnBeginChanges () |
Callback function for begin change event. | |
virtual void | OnEndChanges (const ChangeSet &changeSet) |
Callback function for end change event. | |
![]() | |
istd::CRange | m_radiusRange |
![]() | |
CVector2d | m_position |
![]() | |
static const ChangeSet | s_objectMovedChange |
static const ChangeSet | s_objectModifiedChange |
Radial segment of the annulus object.
Definition at line 20 of file CAnnulusSegment.h.
Definition at line 23 of file CAnnulusSegment.h.
i2d::CAnnulusSegment::CAnnulusSegment | ( | ) |
i2d::CAnnulusSegment::CAnnulusSegment | ( | const i2d::CVector2d & | center, |
double | innerRadius, | ||
double | outerRadius, | ||
double | beginAngle, | ||
double | endAngle ) |
|
overridevirtual |
Make a copy of this object.
You may check, if this functionality is supported over GetSupportedOperations()
.
Reimplemented from i2d::CAnnulus.
bool i2d::CAnnulusSegment::Contains | ( | const i2d::CVector2d & | point | ) | const |
Return true
if a given point is inside of annulus segment area.
|
override |
double i2d::CAnnulusSegment::GetBeginAngle | ( | ) | const |
|
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::CAnnulus.
double i2d::CAnnulusSegment::GetEndAngle | ( | ) | const |
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from i2d::CAnnulus.
|
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::CAnnulus.
|
overridevirtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Reimplemented from i2d::CAnnulus.
void i2d::CAnnulusSegment::SetBeginAngle | ( | double | angle | ) |
void i2d::CAnnulusSegment::SetEndAngle | ( | double | angle | ) |
|
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::CAnnulus.
© Witold Gantzke and Kirill Lepskiy