|
ACF $AcfVersion:0$
|
Represents a single cubic polynomial segment of a spline curve. More...
#include <CSplineSegment.h>
Public Member Functions | |
| virtual i2d::CVector2d | GetPointInSegment (double position) const |
| Get point. | |
| virtual i2d::CVector2d | GetDerivationInSegment (double position) const |
| Get derivation. | |
| virtual i2d::CVector2d | GetDerivationBegin () const |
| Get derivation in begin point. | |
| virtual i2d::CVector2d | GetDerivationEnd () const |
| Get derivation in end point. | |
| virtual i2d::CVector2d | GetPointBegin () const |
| Get begin point. | |
| virtual i2d::CVector2d | GetPointEnd () const |
| Get end point. | |
| virtual i2d::CVector2d | GetBezierPointBegin () const |
| Get first Bezier's control point. | |
| virtual i2d::CVector2d | GetBezierPointEnd () const |
| Get second Bezier's control point. | |
| virtual bool | IsCloserThan (const i2d::CVector2d position, double distance) const |
| Check, if segment is closer than specifier distance. | |
| virtual void | GetHalfSegmentFirst (CSplineSegment &result) const |
| Get a first half segment. | |
| virtual void | GetHalfSegmentSecond (CSplineSegment &result) const |
| Get a second half segment. | |
| const i2d::CVector2d & | A () const |
| Get cubic coefficient A (coefficient of t^3 term). | |
| void | A (const i2d::CVector2d &value) |
| Set cubic coefficient A (coefficient of t^3 term). | |
| const i2d::CVector2d & | B () const |
| Get quadratic coefficient B (coefficient of t^2 term). | |
| void | B (const i2d::CVector2d &value) |
| Set quadratic coefficient B (coefficient of t^2 term). | |
| const i2d::CVector2d & | C () const |
| Get linear coefficient C (coefficient of t term). | |
| void | C (const i2d::CVector2d &value) |
| Set linear coefficient C (coefficient of t term). | |
| const i2d::CVector2d & | D () const |
| Get constant coefficient D (constant term). | |
| void | D (const i2d::CVector2d &value) |
| Set constant coefficient D (constant term). | |
| 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. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| 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 () |
Additional Inherited Members | |
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 |
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. | |
Represents a single cubic polynomial segment of a spline curve.
A spline segment is defined by four coefficient vectors (A, B, C, D) that form a cubic Bezier curve: P(t) = At^3 + Bt^2 + Ct + D, where t is in [0, 1].
Definition at line 20 of file CSplineSegment.h.
|
inline |
Get cubic coefficient A (coefficient of t^3 term).
Definition at line 202 of file CSplineSegment.h.
|
inline |
Set cubic coefficient A (coefficient of t^3 term).
| value | New coefficient vector A. |
Definition at line 208 of file CSplineSegment.h.
|
inline |
Get quadratic coefficient B (coefficient of t^2 term).
Definition at line 214 of file CSplineSegment.h.
|
inline |
Set quadratic coefficient B (coefficient of t^2 term).
| value | New coefficient vector B. |
Definition at line 220 of file CSplineSegment.h.
|
inline |
Get linear coefficient C (coefficient of t term).
Definition at line 226 of file CSplineSegment.h.
|
inline |
Set linear coefficient C (coefficient of t term).
| value | New coefficient vector C. |
Definition at line 232 of file CSplineSegment.h.
|
overridevirtual |
Make a copy of this object.
Reimplemented from istd::IChangeable.
|
overridevirtual |
|
inline |
Get constant coefficient D (constant term).
Definition at line 238 of file CSplineSegment.h.
|
inline |
Set constant coefficient D (constant term).
| value | New coefficient vector D. |
Definition at line 244 of file CSplineSegment.h.
|
inlinevirtual |
Get first Bezier's control point.
Definition at line 170 of file CSplineSegment.h.
|
inlinevirtual |
Get second Bezier's control point.
Definition at line 176 of file CSplineSegment.h.
|
inlinevirtual |
Get derivation in begin point.
Definition at line 146 of file CSplineSegment.h.
|
inlinevirtual |
Get derivation in end point.
Definition at line 152 of file CSplineSegment.h.
|
inlinevirtual |
Get derivation.
| position | Position in segment. Must be in range [0, 1], where 0 is begin, and 1 is end of segment. |
Definition at line 140 of file CSplineSegment.h.
|
inlinevirtual |
Get a first half segment.
Definition at line 182 of file CSplineSegment.h.
|
inlinevirtual |
Get a second half segment.
Definition at line 191 of file CSplineSegment.h.
|
inlinevirtual |
Get begin point.
Definition at line 158 of file CSplineSegment.h.
|
inlinevirtual |
Get end point.
Definition at line 164 of file CSplineSegment.h.
|
inlinevirtual |
Get point.
| position | Position in segment. Must be in range [0, 1], where 0 is begin, and 1 is end of segment. |
Definition at line 134 of file CSplineSegment.h.
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from istd::IChangeable.
|
virtual |
Check, if segment is closer than specifier distance.