CuttingSectionKey
-
class
CuttingSectionKey
: public HPS::GeometryKey The CuttingSectionKey class is a smart pointer to a database object. It is a handle to a cutting section inserted via SegmentKey::InsertCuttingSection.
Public Functions
-
void
Consume
(CuttingSectionKit &in_kit) Completely replaces all settings on this CuttingSectionKey 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 CuttingSectionKey.
-
CuttingSectionKey
() The default constructor creates an uninitialized CuttingSectionKey object. The Type() function will return Type::None.
-
CuttingSectionKey
(CuttingSectionKey &&in_that) The move constructor creates a CuttingSectionKey by transferring the underlying impl of the rvalue reference to this CuttingSectionKey thereby avoiding a copy and allocation.
Parameters: in_that – An rvalue reference to a CuttingSectionKey to take the impl from.
-
CuttingSectionKey
(CuttingSectionKey const &in_that) The copy constructor creates a CuttingSectionKey object that shares the underlying smart-pointer of the source CuttingSectionKey.
Parameters: in_that – The source CuttingSectionKey to copy.
-
explicit
CuttingSectionKey
(Key const &in_that) This constructor creates a CuttingSectionKey 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 a CuttingSection key. Otherwise the copy will fail and the resulting CuttingSectionKey will be invalid.
Parameters: in_that – The source Key to copy.
-
CuttingSectionKey &
EditPlanesByDeletion
(size_t in_offset, size_t in_count) Removes planes from the cutting plane list for this CuttingSectionKey.
Parameters: - in_offset – The offset into the cutting planes for this CuttingSectionKey at which to start removing planes. This value must be such that in_offset<cutting_plane_count for deletion to succeed.
- in_count – The number of planes to remove from the cutting plane list for this CuttingSectionKey. This value must be such that in_offset+in_count<=cutting_plane_count for the deletion to succeed.
Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
EditPlanesByInsertion
(size_t in_offset, PlaneArray const &in_planes) Adds cutting planes to this CuttingSectionKey.
Parameters: - in_offset – The offset into the cutting plane list for the CuttingSectionKey at which to insert planes. This value must be such that in_offset <= cutting_plane_count for insertion to succeed.
- in_planes – The planes to insert into the cutting plane list at the specified offset.
Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
EditPlanesByInsertion
(size_t in_offset, size_t in_count, Plane const in_planes[]) Adds cutting planes to this CuttingSectionKey.
Parameters: - in_offset – The offset into the cutting plane list for the CuttingSectionKey at which to insert planes. This value must be such that in_offset <= cutting_plane_count for insertion to succeed.
- in_count – Size of the following array.
- in_planes – The planes to insert into the cutting plane list at the specified offset.
Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
EditPlanesByReplacement
(size_t in_offset, PlaneArray const &in_planes) Replaces planes in the cutting plane list for this CuttingSectionKey.
Parameters: - in_offset – The offset into the cutting plane list for this CuttingSectionKey at which to start replacing planes. This value must be such that in_offset < cutting_plane_count for replacement to succeed.
- in_planes – The planes to use to replace those in the cutting plane list at the specified offset. The size of this array must be such that in_offset+in_planes.size()<=cutting_plane_count for the replacement to succeed.
Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
EditPlanesByReplacement
(size_t in_offset, size_t in_count, Plane const in_planes[]) Replaces planes in the cutting plane list for this CuttingSectionKey.
Parameters: - in_offset – The offset into the cutting plane list for this CuttingSectionKey at which to start replacing planes. This value must be such that in_offset<cutting_plane_count for replacement to succeed.
- in_count – Size of the following array. This value must be such that in_offset+in_count<=cutting_plane_count for the replacement to succeed.
- in_planes – The planes to use to replace those in the cutting plane list at the specified offset.
Returns: A reference to this CuttingSectionKey.
-
size_t
GetPlaneCount
() const Gets the number of cutting planes for this CuttingSectionKey.
Returns: The number of cutting planes for this CuttingSectionKey.
-
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.
-
CuttingSectionKey &
operator=
(CuttingSectionKey &&in_that) The move assignment operator transfers the underlying impl of the rvalue reference to this CuttingSectionKey thereby avoiding a copy.
Parameters: in_that – An rvalue reference to a CuttingSectionKey to take the impl from. Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
operator=
(CuttingSectionKey const &in_that) Associate this CuttingSectionKey with the same underlying impl as the source CuttingSectionKey.
Parameters: in_that – The source CuttingSectionKey for the assignment. Returns: A reference to this CuttingSectionKey.
-
void
Set
(CuttingSectionKit const &in_kit) Replace those settings on this CuttingSectionKey with those set on the specified kit.
Parameters: in_kit – The kit from which to get the settings to replace on this CuttingSectionKey.
-
CuttingSectionKey &
SetPlanes
(Plane const &in_plane) Sets a single cutting plane for this CuttingSectionKey.
Parameters: in_plane – The cutting plane for this CuttingSectionKey. Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
SetPlanes
(PlaneArray const &in_planes) Sets multiple cutting planes for this CuttingSectionKey.
Parameters: in_planes – The cutting planes for this CuttingSectionKey. Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
SetPlanes
(size_t in_count, Plane const in_planes[]) Sets multiple cutting planes for this CuttingSectionKey.
Parameters: - in_count – Size of the following array.
- in_planes – The cutting planes for this CuttingSectionKey.
Returns: A reference to this CuttingSectionKey.
-
CuttingSectionKey &
SetVisualization
(CuttingSection::Mode in_mode, RGBAColor const &in_color, float in_scale = 1.0f) Sets visualization to use for this CuttingSectionKey.
Parameters: - in_mode – The mode for the CuttingSectionKey.
- in_color – The RGBA color for the CuttingSectionKey.
- in_scale – The scale to apply to the visualization geometry for this CuttingSectionKey. Defaults to 1.0f.
Returns: A reference to this CuttingSectionKey.
-
void
Show
(CuttingSectionKit &out_kit) const Copy the contents of this CuttingSectionKey into the specified kit.
Parameters: out_kit – The kit to populate with the contents of this CuttingSectionKey.
-
bool
ShowPlanes
(HPS::PlaneArray &out_planes) const Shows the cutting planes for this CuttingSectionKey.
Parameters: out_planes – The cutting planes for this CuttingSectionKey. Returns: true if any cutting planes were set, false otherwise.
-
bool
ShowVisualization
(CuttingSection::Mode &out_mode, RGBAColor &out_color, float &out_scale) const Shows the visualization to use for this CuttingSectionKey.
Parameters: - out_mode – The mode for this CuttingSectionKey.
- out_color – The RGBA color for this CuttingSectionKey.
- out_scale – The scale to apply to the visualization geometry for this CuttingSectionKey.
Returns: true if visualization options were set, false otherwise.
-
~CuttingSectionKey
()
-
void