BoundingControl
-
class HPS::BoundingControl : public HPS::Control
The HPS::BoundingControl class is a smart pointer that is tied to a database object. This object allows you to manipulate settings related to bounding, such as volume and exclusion. This table lists default values for the various segment attributes accessible from HPS::BoundingControl.
Public Functions
-
BoundingControl(BoundingControl &&in_that)
The move constructor creates a BoundingControl by transferring the underlying impl of the rvalue reference to this BoundingControl thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to a BoundingControl to take the impl from.
-
BoundingControl(BoundingControl const &in_that)
Initializes a control tied to the same object as in_that.
-
explicit BoundingControl(SegmentKey &in_seg)
Initializes a control tied to the segment in_seg.
-
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.
-
BoundingControl &operator=(BoundingControl &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this BoundingControl thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to a BoundingControl to take the impl from.
- Returns
A reference to this BoundingControl.
-
BoundingControl &operator=(BoundingControl const &in_that)
Share the underlying smart-pointer of the BoundingControl source.
- Parameters
in_that – The BoundingControl source of the assignment.
- Returns
A reference to this BoundingControl.
-
BoundingControl &SetExclusion(bool in_exclusion)
Controls whether this segment should be excluded when computing bounding volumes.
- Parameters
in_exclude – Whether to exclude this segment when computing bounding volumes.
- Returns
A reference to this object.
-
BoundingControl &SetVolume(SimpleCuboid const &in_cuboid)
Explicitly sets the local bounding.
- Parameters
in_cuboid – The SimpleCuboid to set the bounding volume to.
- Returns
A reference to this object.
-
BoundingControl &SetVolume(SimpleSphere const &in_sphere)
Explicitly sets the local bounding.
- Parameters
in_sphere – The SimpleSphere to set the bounding volume to.
- Returns
A reference to this object.
-
BoundingControl &SetVolume(SimpleSphere const &in_sphere, SimpleCuboid const &in_cuboid)
Explicitly sets the local bounding.
- Parameters
in_sphere – The SimpleSphere to set the bounding volume to.
in_cuboid – The SimpleCuboid to set the bounding volume to.
- Returns
A reference to this object.
-
bool ShowExclusion(bool &out_exclusion) const
Shows the bounding exclusion setting.
- Parameters
out_exclusion – Whether to exclude this segment when computing bounding volumes.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowVolume(SimpleSphere &out_sphere, SimpleCuboid &out_cuboid) const
Shows the bounding volume.
- Parameters
out_sphere – A sphere to show the volume into. If the bounding is not a sphere, this argument will be invalidated.
out_cuboid – A cuboid to show the volume into. If the bounding is not a cuboid, this argument will be invalidated.
- Returns
true if the setting is valid, false otherwise.
-
BoundingControl &UnsetEverything()
Removes all bounding settings from this object. If the control is attached to a WindowKey this function restores the default settings of this control as specified by BoundingKit::GetDefault().
- Returns
A reference to this object.
-
BoundingControl &UnsetExclusion()
Removes a bounding exclusion setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by BoundingKit::GetDefault().
- Returns
A reference to this object.
-
BoundingControl &UnsetVolume()
Removes an explicitly set bounding, reverting to the automatically generated one. If the control is attached to a WindowKey this function restores the default value of this setting as specified by BoundingKit::GetDefault().
- Returns
A reference to this object.
-
~BoundingControl()
Releases a reference to the database object this control is tied to.
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::BoundingControl
-
BoundingControl(BoundingControl &&in_that)