EllipseKey
-
class HPS::EllipseKey : public HPS::GeometryKey
The EllipseKey class is a smart pointer to a database object. It is a handle to an ellipse inserted via SegmentKey::InsertEllipse.
Public Functions
-
void Consume(EllipseKit &in_kit)
Completely replaces all settings on this EllipseKit with those set on the specified kit and resets the kit.
- Parameters
in_kit – The kit from which to get the settings to replace on this EllipseKit.
-
EllipseKey()
The default constructor creates an uninitialized EllipseKey object. The Type() function will return Type::None.
-
EllipseKey(EllipseKey &&in_that)
The move constructor creates an EllipseKey by transferring the underlying impl of the rvalue reference to this EllipseKey thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to an EllipseKey to take the impl from.
-
EllipseKey(EllipseKey const &in_that)
The copy constructor creates an EllipseKey object that shares the underlying smart-pointer of the source EllipseKey.
- Parameters
in_that – The source EllipseKey to copy.
-
explicit EllipseKey(Key const &in_that)
This constructor creates an EllipseKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really an upcast of an Ellipse key. Otherwise the copy will fail and the resulting EllipseKey will be invalid.
- Parameters
in_key – The source Key to copy.
-
inline virtual HPS::Type ObjectType() const
This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).
- Returns
The declared type of the object in question, which may differ from the true, underlying type.
-
EllipseKey &operator=(EllipseKey &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this EllipseKey thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to an EllipseKey to take the impl from.
- Returns
A reference to this EllipseKey.
-
EllipseKey &operator=(EllipseKey const &other)
Associate this EllipseKey with the same underlying impl as the source EllipseKey.
- Parameters
in_that – The source EllipseKey for the assignment.
- Returns
A reference to this EllipseKey.
-
void Set(EllipseKit const &in_kit)
Replace those settings on this EllipseKey with those set on the specified kit.
- Parameters
in_kit – The kit from which to get the settings to replace on this EllipseKey.
-
EllipseKey &SetCenter(Point const &in_center)
Sets the center point for the ellipse.
- Parameters
in_center – The center point for the ellipse.
- Returns
A reference to this EllipseKey.
-
EllipseKey &SetMajor(Point const &in_major)
Sets the intersection point of the major axis and the ellipse.
- Parameters
in_major – The intersection point of the major axis and the ellipse.
- Returns
A reference to this EllipseKey.
-
EllipseKey &SetMinor(Point const &in_minor)
Sets the intersection point of the minor axis and the ellipse.
- Parameters
in_minor – The intersection point of the minor axis and the ellipse.
- Returns
A reference to this EllipseKey.
-
void Show(EllipseKit &out_kit) const
Copy the contents of this EllipseKey into the specified kit.
- Parameters
out_kit – The kit to populate with the contents of this EllipseKey.
-
bool ShowCenter(Point &out_center) const
Shows the center point for the ellipse.
- Parameters
out_center – The center point for the ellipse.
- Returns
true if a center was set, false otherwise.
-
bool ShowMajor(Point &out_major) const
Shows the intersection point of the major axis and the ellipse.
- Parameters
out_major – The intersection point of the major axis and the ellipse.
- Returns
true if an intersection point with the major axis was set, false otherwise.
-
bool ShowMinor(Point &out_minor) const
Shows the intersection point of the minor axis and the ellipse.
- Parameters
out_minor – The intersection point of the minor axis and the ellipse.
- Returns
true if an intersection point with the minor axis was set, false otherwise.
-
~EllipseKey()
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::EllipseKey
-
void Consume(EllipseKit &in_kit)