# 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`()

  Public Static Attributes

  static const HPS::Type `staticType` = HPS::Type::CuttingSectionKey

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your multilingual generative AI assistant for documentation. Ask me anything about HOOPS Visualize Desktop in your own language, or choose a sample question below to start a conversation:

What is HOOPS Visualize Desktop?
What are the latest release notes for HOOPS Visualize Desktop?
How do I start evaluating HOOPS Visualize Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...