EllipticalArcKey
-
class EllipticalArcKey : public HPS::GeometryKey
The EllipticalArcKey class is a smart pointer to a database object. It is a handle to an elliptical arc inserted via SegmentKey::InsertEllipticalArc.
Public Functions
-
void Consume(EllipticalArcKit &in_kit)
Completely replaces all settings on this EllipticalArcKey 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 EllipticalArcKey.
-
EllipticalArcKey()
The default constructor creates an uninitialized EllipticalArcKey object. The Type() function will return Type::None.
-
EllipticalArcKey(EllipticalArcKey &&in_that)
The move constructor creates an EllipticalArcKey by transferring the underlying impl of the rvalue reference to this EllipticalArcKey thereby avoiding a copy and allocation.
- Parameters:
in_that – An rvalue reference to an EllipticalArcKey to take the impl from.
-
EllipticalArcKey(EllipticalArcKey const &in_that)
The copy constructor creates an EllipticalArcKey object that shares the underlying smart-pointer of the source EllipticalArcKey.
- Parameters:
in_that – The source EllipticalArcKey to copy.
-
explicit EllipticalArcKey(Key const &in_that)
This constructor creates an EllipticalArcKey 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 EllipticalArc key. Otherwise the copy will fail and the resulting EllipticalArcKey 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.
-
EllipticalArcKey &operator=(EllipticalArcKey &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this EllipticalArcKey thereby avoiding a copy.
- Parameters:
in_that – An rvalue reference to an EllipticalArcKey to take the impl from.
- Returns:
A reference to this EllipticalArcKey.
-
EllipticalArcKey &operator=(EllipticalArcKey const &other)
Associate this EllipticalArcKey with the same underlying impl as the source EllipticalArcKey.
- Parameters:
in_that – The source EllipticalArcKey for the assignment.
- Returns:
A reference to this EllipticalArcKey.
-
void Set(EllipticalArcKit const &in_kit)
Replace those settings on this EllipticalArcKey with those set on the specified kit.
- Parameters:
in_kit – The kit from which to get the settings to replace on this EllipticalArcKey.
-
EllipticalArcKey &SetCenter(Point const &in_center)
Sets the center point for the ellipse used to define the elliptical arc.
- Parameters:
in_center – The center point for the ellipse used to define the elliptical arc.
- Returns:
A reference to this EllipticalArcKey.
-
EllipticalArcKey &SetEnd(float in_end)
Sets the normalized parametric value on the ellipse at which the elliptical arc ends. The value should be in the range [0.0f,1.0f] and be larger than the start value. It is defined such that 0.0f is the point where the major axis intersects the ellipse, and as the value increases it passes through the point at which the minor axis intersects the ellipse (0.25f), and that 1.0f maps to the same point as 0.0f.
- Parameters:
in_end – The normalized parametric value on the ellipse at which the elliptical arc ends. This value should be in the range [0.0f,1.0f] and be larger than the start value.
- Returns:
A reference to this EllipticalArcKey.
-
EllipticalArcKey &SetMajor(Point const &in_major)
Sets the intersection point of the major axis and the ellipse used to define the elliptical arc.
- Parameters:
in_major – The intersection point of the major axis and the ellipse used to define the elliptical arc.
- Returns:
A reference to this EllipticalArcKey.
-
EllipticalArcKey &SetMinor(Point const &in_minor)
Sets the intersection point of the minor axis and the ellipse used to define the elliptical arc.
- Parameters:
in_minor – The intersection point of the minor axis and the ellipse used to define the elliptical arc.
- Returns:
A reference to this EllipticalArcKey.
-
EllipticalArcKey &SetStart(float in_start)
Sets the normalized parametric value on the ellipse at which the elliptical arc starts. The value should be in the range [0.0f,1.0f] and be smaller than the end value. It is defined such that 0.0f is the point where the major axis intersects the ellipse, and as the value increases it passes through the point at which the minor axis intersects the ellipse (0.25f), and that 1.0f maps to the same point as 0.0f.
- Parameters:
in_start – The normalized parametric value on the ellipse at which the elliptical arc starts. This value should be in the range [0.0f,1.0f] and be smaller than the end value.
- Returns:
A reference to this EllipticalArcKey.
-
void Show(EllipticalArcKit &out_kit) const
Copy the contents of this EllipticalArcKey into the specified kit.
- Parameters:
out_kit – The kit to populate with the contents of this EllipticalArcKey.
-
bool ShowCenter(Point &out_center) const
Shows the center point for the ellipse used to define the elliptical arc.
- Parameters:
out_center – The center point for the ellipse used to define the elliptical arc.
- Returns:
true if a center was set, false otherwise.
-
bool ShowEnd(float &out_end) const
Shows the normalized parametric value on the ellipse at which the elliptical arc ends.
- Parameters:
out_end – The normalized parametric value on the ellipse at which the elliptical arc ends.
- Returns:
true if a normalized parametric end value was set, false otherwise.
-
bool ShowMajor(Point &out_major) const
Shows the intersection point of the major axis and the ellipse used to define the elliptical arc.
- Parameters:
out_major – The intersection point of the major axis and the ellipse used to define the elliptical arc.
- 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 used to define the elliptical arc.
- Parameters:
out_minor – The intersection point of the minor axis and the ellipse used to define the elliptical arc.
- Returns:
true if an intersection point with the minor axis was set, false otherwise.
-
bool ShowStart(float &out_start) const
Shows the normalized parametric value on the ellipse at which the elliptical arc starts.
- Parameters:
out_start – The normalized parametric value on the ellipse at which the elliptical arc starts.
- Returns:
true if a normalized parametric start value was set, false otherwise.
-
~EllipticalArcKey()
-
void Consume(EllipticalArcKit &in_kit)