InfiniteLineGlyphElement
-
class HPS::InfiniteLineGlyphElement : public HPS::GlyphElement
The InfiniteLineGlyphElement class is a user space object. It is used to add infinite line and ray elements to a glyph.
Public Functions
-
InfiniteLineGlyphElement()
The default constructor creates an empty InfiniteLineGlyphElement object.
-
InfiniteLineGlyphElement(GlyphElement const &in_that)
This constructor creates a InfiniteLineGlyphElement object that contains the same settings as the source GlyphElement. The copy will only be successful if the source glyph element is really an upcast of an infinite line glyph element. Otherwise the copy will fail and the resulting InfiniteLineGlyphElement will be invalid.
- Parameters
in_that – The source GlyphElement to copy.
-
InfiniteLineGlyphElement(GlyphPoint const &in_first, GlyphPoint const &in_second, InfiniteLine::Type in_type = InfiniteLine::Type::Line)
This constructor creates a InfiniteLineGlyphElement with the specified vector and type.
- Parameters
in_first – The first point along the InfiniteLineGlyphElement
in_second – The second point along the InfiniteLineGlyphElement
in_type – The type of infinite line - either Ray or Line
-
InfiniteLineGlyphElement(InfiniteLineGlyphElement &&in_that)
The move constructor creates an InfiniteLineGlyphElement by transferring the underlying impl of the rvalue reference to this InfiniteLineGlyphElement thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to an InfiniteLineGlyphElement to take the impl from.
-
InfiniteLineGlyphElement(InfiniteLineGlyphElement const &in_that)
The copy constructor creates a new InfiniteLineGlyphElement object that contains the same settings as the source InfiniteLineGlyphElement.
- Parameters
in_that – The source InfiniteLineGlyphElement 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.
-
InfiniteLineGlyphElement &operator=(InfiniteLineGlyphElement &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this InfiniteLineGlyphElement thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to an InfiniteLineGlyphElement to take the impl from.
- Returns
A reference to this InfiniteLineGlyphElement.
-
void SetFirstPoint(GlyphPoint const &in_point)
Sets the first point for the vector defining the infinite line or ray for this InfiniteLineGlyphElement.
- Parameters
in_point – The first point for the vector defining the infinite line or ray.
-
void SetInfiniteType(InfiniteLine::Type in_type)
Sets the type of this InfiniteLineGlyphElement, i.e., whether it represents an infinite line or ray.
- Parameters
in_type – The type of this InfiniteLineGlyphElement.
-
void SetPoints(GlyphPoint const &in_first, GlyphPoint const &in_second)
Sets the points for the vector defining the infinite line or ray for this InfiniteLineGlyphElement.
- Parameters
in_first – The first point for the vector defining the infinite line or ray.
in_second – The second point for the vector defining the infinite line or ray.
-
void SetSecondPoint(GlyphPoint const &in_point)
Sets the second point for the vector defining the infinite line or ray for this InfiniteLineGlyphElement.
- Parameters
in_point – The second point for the vector defining the infinite line or ray.
-
bool ShowFirstPoint(GlyphPoint &out_point) const
Shows the first point for the vector defining the infinite line or ray for this InfiniteLineGlyphElement.
- Parameters
out_point – The first point for the vector defining the infinite line or ray.
- Returns
true if a first point was set, false otherwise.
-
bool ShowInfiniteType(InfiniteLine::Type &out_type) const
Shows the type of this InfiniteLineGlyphElement.
- Parameters
out_type – The type of this InfiniteLineGlyphElement.
- Returns
true if a type was set, false otherwise.
-
bool ShowSecondPoint(GlyphPoint &out_point) const
Shows the second point for the vector defining the infinite line or ray for this InfiniteLineGlyphElement.
- Parameters
out_point – The second point for the vector defining the infinite line or ray.
- Returns
true if a second point was set, false otherwise.
-
~InfiniteLineGlyphElement()
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::InfiniteLineGlyphElement
-
InfiniteLineGlyphElement()