GeometryKey
-
class
GeometryKey
: public HPS::Key Subclassed by HPS::CircleKey, HPS::CircularArcKey, HPS::CircularWedgeKey, HPS::CuttingSectionKey, HPS::CylinderKey, HPS::DistantLightKey, HPS::EllipseKey, HPS::EllipticalArcKey, HPS::GridKey, HPS::InfiniteLineKey, HPS::LineKey, HPS::MarkerKey, HPS::MeshKey, HPS::NURBSCurveKey, HPS::NURBSSurfaceKey, HPS::PolygonKey, HPS::ReferenceKey, HPS::ShellKey, HPS::SphereKey, HPS::SpotlightKey, HPS::TextKey
Public Functions
-
GeometryKey
() The default constructor creates an uninitialized GeometryKey object. The Type() function will return Type::None.
-
GeometryKey
(GeometryKey &&in_that) The move constructor creates a GeometryKey by transferring the underlying impl of the rvalue reference to this GeometryKey thereby avoiding a copy and allocation.
Parameters: in_that – An rvalue reference to a GeometryKey to take the impl from.
-
GeometryKey
(GeometryKey const &in_that) The copy constructor creates a GeometryKey object that shares the underlying smart-pointer of the source GeometryKey.
Parameters: in_that – The source GeometryKey to copy.
-
explicit
GeometryKey
(Key const &in_that) This constructor creates a GeometryKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really a type of geometry key. Otherwise the copy will fail and the resulting GeometryKey will be invalid.
Parameters: in_that – 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.
-
GeometryKey &
operator=
(GeometryKey &&in_that) The move assignment operator transfers the underlying impl of the rvalue reference to this GeometryKey thereby avoiding a copy.
Parameters: in_that – An rvalue reference to a GeometryKey to take the impl from. Returns: A reference to this GeometryKey.
-
GeometryKey &
operator=
(GeometryKey const &in_that) Associate this GeometryKey with the same underlying impl as the source GeometryKey.
Parameters: in_that – The source GeometryKey for the assignment. Returns: A reference to this GeometryKey.
-
GeometryKey &
SetPriority
(int in_priority) Assigns a drawing priority value to the geometry. It affects the order in which the geometry is rendered when the rendering algorithm is set to Priority. All geometry has a default drawing priority assigned based on the order of insertion into the segment.
Parameters: in_priority – The drawing priority; higher priority items are drawn on top of lower priority items. Returns: A reference to this object.
-
GeometryKey &
SetUserData
(intptr_t in_index, ByteArray const &in_data) Sets user data on this key.
Parameters: - in_index – The index of the user data to set.
- in_data – The bytes of user data to set.
Returns: A reference to this key.
-
GeometryKey &
SetUserData
(intptr_t in_index, size_t in_bytes, byte const in_data[]) Sets user data on this key.
Parameters: - in_index – The index of the user data to set.
- in_bytes – The number of bytes of user data to set.
- in_data – The bytes of user data to set.
Returns: A reference to this key.
-
GeometryKey &
SetUserData
(IntPtrTArray const &in_indices, ByteArrayArray const &in_data) Sets user data on this key.
Parameters: - in_indices – An array of user data indices to set.
- in_data – An array of bytes of user data to set.
Returns: A reference to this key.
-
bool
ShowBounding
(BoundingKit &out_kit) const Shows the bounding of this geometry.
Parameters: out_kit – The BoundingKit that is set on this GeometryKey Returns: False if no bounding exists.
-
bool
ShowPriority
(int &out_priority) const Shows the drawing priority.
Parameters: out_priority – The drawing priority; higher priority items are drawn on top of lower priority items. Returns: true if a priority was specified, false otherwise.
-
size_t
ShowReferrers
(ReferenceKeyArray &out_references) const Shows the all the references to this key.
Parameters: out_references – The list of all references to this key. Returns: The number of references to this key.
-
size_t
ShowReferrers
(SegmentKeyArray &out_segments) const Shows the all the segments which contain references to this key. Note that while a segment may only appear once in the returned array, that segment could have multiple references to this key.
Parameters: out_segments – The list of segments which contains references to this key. Returns: The number of segments which contain references to this key.
-
bool
ShowUserData
(intptr_t in_index, ByteArray &out_data) const Shows the user data at a given index for this key.
Parameters: - in_index – The index of the user data to show.
- out_data – The user data at the given index.
Returns: true if there is user data at the given index, false otherwise.
-
bool
ShowUserData
(IntPtrTArray &out_indices, ByteArrayArray &out_data) const Shows all user data for this key.
Parameters: - out_indices – An array of all user data indices set on this key.
- out_data – An array of all user data set on this key.
Returns: true if there is user data on this key, false otherwise.
-
size_t
ShowUserDataCount
() const Get the number of user data indices set on this key.
-
bool
ShowUserDataIndices
(IntPtrTArray &out_indices) const Shows the indices of all user data set on this key.
Parameters: out_indices – The user data indices set on this key. Returns: The number of user data indices set on this key.
-
GeometryKey &
UnsetAllUserData
() Removes all user data from this key.
Returns: A reference to this key.
-
GeometryKey &
UnsetPriority
() Removes the drawing priority setting.
Returns: A reference to this object.
-
GeometryKey &
UnsetUserData
(intptr_t in_index) Removes the user data at the given index from this key.
Parameters: in_index – The index of the user data to remove. Returns: A reference to this key.
-
GeometryKey &
UnsetUserData
(IntPtrTArray const &in_indices) Removes the user data at the given indices from this key.
Parameters: in_indices – The indices of the user data to remove. Returns: A reference to this key.
-
GeometryKey &
UnsetUserData
(size_t in_count, intptr_t const in_indices[]) Removes the user data at the given indices from this key.
Parameters: - in_count – The size of the following array.
- in_indices – The indices of the user data to remove.
Returns: A reference to this key.
-
~GeometryKey
()
-