97 double* errorFactorPtr =
NULL)
override;
101 double* errorFactorPtr =
NULL)
override;
106 double* errorFactorPtr =
NULL)
const override;
111 double* errorFactorPtr =
NULL)
const override;
Definition of graphical annulus object.
virtual bool CopyFrom(const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
CAnnulus()
Construct an empty annulus object.
virtual int GetSupportedOperations() const override
Get set of flags for supported operations.
istd::CRange m_radiusRange
virtual istd::TUniqueInterfacePtr< istd::IChangeable > CloneMe(CompatibilityMode mode=CM_WITHOUT_REFS) const override
Make a copy of this object.
CAnnulus(const i2d::CVector2d ¢er, double innerRadius, double outerRadius)
Construct an annulus object by the given position, inner and outer radius.
void SetInnerRadius(double innerRadius)
Set the inner radius of the annulus.
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.
i2d::CPosition2d BaseClass
bool ConvertToPolygon(i2d::CPolygon &result, int segmentsCount=0) const
Performs conversion of the annulus splitting it to segmentsCount segments to the polygon result.
virtual bool InvTransform(const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override
Do inverse transformation of this object.
CCircle GetInnerCircle() const
Set the inner circle of the annulus object.
virtual bool Transform(const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) override
Transform this object using some transformation.
bool IsAnnulusValid() const
Check, if the annulus is valid.
bool operator==(const CAnnulus &annulus) const
Compare with another annulus.
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.
CCircle GetOuterCircle() const
Set the outer circle of the annulus object.
void SetOuterRadius(double outerRadius)
Set the outer radius of the annulus.
bool operator!=(const CAnnulus &annulus) const
Compare with another annulus.
virtual CRectangle GetBoundingBox() const override
Get bounding box of this shape.
double GetInnerRadius() const
Get the inner radius of the annulus.
double GetOuterRadius() const
Get the outer radius of the annulus.
void SetInnerOuterRadius(double radius1, double radius2)
Set the inner and outer radius of the annulus.
virtual bool Serialize(iser::IArchive &archive) override
Load or store state of this object as a archive stream.
Definition of graphical circle object.
Definition of the data model for a polygon.
Definition of graphical point object.
Definition of rectangle area orthogonal to axis of coordination system.
Definition of position or mathematical vector on 2D plane.
Common interface for describing the 2D-objects.
Represents an input/output persistence archive for object serialization.
CompatibilityMode
Control how relationship betweeen objects are interpreted.
@ CM_WITHOUT_REFS
External references are simple ignored.
Unique ownership smart pointer for interface types.