![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Implementation of a rectangle as a component. More...
#include <CRectangleComp.h>
Public Types | |
typedef TObject2dCompWrap< CRectangle > | BaseClass |
![]() | |
typedef icomp::CComponentBase | BaseClass |
typedef CRectangle | BaseClass2 |
![]() | |
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... | |
Protected Member Functions | |
void | OnComponentCreated () override |
![]() | |
void | OnComponentCreated () override |
![]() | |
bool | IsComponentActive () const |
Check if component is active. | |
virtual void | OnComponentDestroyed () |
virtual const IRealComponentStaticInfo & | GetComponentStaticInfo () const =0 |
Get access to static info of this component. | |
![]() | |
virtual void | OnBeginChanges () |
Callback function for begin change event. | |
virtual void | OnEndChanges (const ChangeSet &changeSet) |
Callback function for end change event. | |
Additional Inherited Members | |
![]() | |
CComponentBase () | |
Create component and assign it to specific context. | |
CComponentBase (const CComponentBase &)=delete | |
CComponentBase & | operator= (const CComponentBase &)=delete |
virtual const ICompositeComponent * | GetParentComponent (bool ownerOnly=false) const |
Get parent of this component. | |
virtual void * | GetInterface (const istd::CClassInfo &interfaceType, const QByteArray &subId="") |
Get access to specified component interface. | |
virtual const IComponentContext * | GetComponentContext () const |
Get access to component context describing all application-specified component information loaded from components registry. | |
virtual void | SetComponentContext (const IComponentContext *contextPtr, const ICompositeComponent *parentPtr, bool isParentOwner) |
Set component context of this component. | |
![]() | |
![]() | |
CRectangle () | |
CRectangle (double left, double top, double width, double height) | |
CRectangle (const CVector2d &topLeft, const CVector2d &bottomRight) | |
CRectangle (const istd::CRange &horizontalRange, const istd::CRange &verticalRange) | |
CRectangle (const i2d::CRect &rect) | |
CRectangle (const istd::CIndex2d &size) | |
bool | IsValid () const |
Return true if the rectangle is valid. | |
bool | IsEmpty () const |
Return true if the rectangle is empty. | |
bool | IsValidNonEmpty () const |
Return true if the rectangle is valid and it is not empty. | |
void | Reset () |
Make rectangle empty. | |
double | GetLeft () const |
Get value of left boundary. | |
void | SetLeft (double left) |
Set value of left boundary. | |
double | GetTop () const |
Get value of top boundary. | |
void | SetTop (double top) |
Set value of top boundary. | |
double | GetRight () const |
Get value of right boundary. | |
void | SetRight (double right) |
Set value of right boundary. | |
double | GetBottom () const |
Get value of bottom boundary. | |
void | SetBottom (double bottom) |
Set value of bottom boundary. | |
const istd::CRange & | GetHorizontalRange () const |
Get values of horizontal boundaries. | |
istd::CRange & | GetHorizontalRangeRef () |
Get values of horizontal boundaries as reference. | |
void | SetHorizontalRange (const istd::CRange &range) |
Set values of horizontal boundaries. | |
const istd::CRange & | GetVerticalRange () const |
Get values of vertical boundaries. | |
istd::CRange & | GetVerticalRangeRef () |
Get values of vertical boundaries as reference. | |
void | SetVerticalRange (const istd::CRange &range) |
Set values of vertical boundaries. | |
CVector2d | GetLeftTop () const |
Get left-top point of this rectangle. | |
void | SetTopLeft (const CVector2d &topLeft) |
Set left-top point of this rectangle. | |
CVector2d | GetRightTop () const |
Get right-top point of this rectangle. | |
void | SetTopRight (const CVector2d &topRight) |
Set right-top point of this rectangle. | |
CVector2d | GetLeftBottom () const |
Get left-bottom point of this rectangle. | |
void | SetBottomLeft (const CVector2d &bottomLeft) |
Set left-bottom point of this rectangle. | |
CVector2d | GetRightBottom () const |
Get right-bottom point of this rectangle. | |
void | SetBottomRight (const CVector2d &bottomRight) |
Set right-bottom point of this rectangle. | |
CVector2d | GetLeftCenter () const |
Get point in center of left edge. | |
CVector2d | GetRightCenter () const |
Get point in center of right edge. | |
CVector2d | GetTopCenter () const |
Get point in center of top edge. | |
CVector2d | GetBottomCenter () const |
Get point in center of bottom edge. | |
bool | Contains (const CVector2d &point) const |
Check if some point is contained in this rectangle. | |
bool | Contains (const istd::CIndex2d &point) const |
Check if some point is contained in this rectangle. | |
bool | Contains (const CRectangle &rect) const |
Check if some rectangle is fully contained in this rectangle. | |
double | GetWidth () const |
Get width of this rectangle. | |
double | GetHeight () const |
Get height of this rectangle. | |
CVector2d | GetSize () const |
Get size of this rectangle. | |
bool | IsIntersectedBy (const CRectangle &rect) const |
Returns true , if this rectangle is intersected by the other rectangle rect . | |
bool | IsIntersectedBy (const CLine2d &line) const |
Returns true , if this rectangle is intersected by the line rect . | |
CRectangle | GetIntersection (const CRectangle &rect) const |
Get resulting rectangle of the intersection of this rectangle with rect . | |
CLine2d | GetIntersection (const CLine2d &line) const |
Get resulting line of the intersection of this rectangle with the line line . | |
void | Intersect (const CRectangle &rectangle) |
Set new rectangle as intersection of the current rectangle with a given one. | |
CRectangle | GetUnion (const CRectangle &rect) const |
Get union of two rectangles. | |
void | Unite (const CRectangle &rect) |
Set this rectangle to union of two rectangles. | |
CRectangle | GetUnion (const i2d::CVector2d &position) const |
Get union of this rectangle and point. | |
void | Unite (const i2d::CVector2d &position) |
Set this rectangle to union of rectangle and point. | |
CRectangle | GetExpanded (const CRectangle &rect) const |
Get expanded rectangle (simple sum of boundary values). | |
void | Expand (const CRectangle &rect) |
Expand rectangle. | |
double | GetDistance (const CVector2d &position) const |
Get distance from nearest point of this rectangle to specified position. | |
double | GetMaxDistance (const CVector2d &position) const |
Get maximal distance from points of this rectangle to specified position. | |
CVector2d | GetNearestPointTo (const CVector2d &point) const |
Get the nearest point in the rectangle for the some given point. | |
void | Translate (const i2d::CVector2d &delta) |
CRectangle | GetTranslated (const i2d::CVector2d &delta) const |
bool | operator== (const CRectangle &rect) const |
bool | operator!= (const CRectangle &rect) const |
operator QRectF () 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 |
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 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. | |
![]() | |
![]() | |
static QByteArray | GetTypeName () |
static const i2d::CRectangle & | GetEmpty () |
Get empty rectangle with all values set to 0. | |
static const i2d::CRectangle & | GetInvalid () |
Get invalid rectangle. | |
![]() | |
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. | |
![]() | |
static const IRealComponentStaticInfo & | InitStaticInfo (IComponent *componentPtr) |
static QByteArray | GetComponentId (const IComponentContext *componentContextPtr, const QByteArray &contextId=QByteArray()) |
![]() | |
static const ChangeSet | s_objectMovedChange |
static const ChangeSet | s_objectModifiedChange |
Implementation of a rectangle as a component.
It gives the possibility to define a rectangle model via component attributes.
Definition at line 22 of file CRectangleComp.h.
Definition at line 25 of file CRectangleComp.h.
|
overrideprotectedvirtual |
Reimplemented from icomp::CComponentBase.
© Witold Gantzke and Kirill Lepskiy