The HPS::BoundingControl class is a smart pointer that is tied to a database object. More...
#include <hps.h>
Public Member Functions | |
BoundingControl (SegmentKey &in_seg) | |
Initializes a control tied to the segment in_seg. More... | |
BoundingControl (BoundingControl const &in_that) | |
Initializes a control tied to the same object as in_that. More... | |
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. More... | |
BoundingControl & | operator= (BoundingControl &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this BoundingControl thereby avoiding a copy. More... | |
~BoundingControl () | |
Releases a reference to the database object this control is tied to. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
HPS::Type | ObjectType () const |
BoundingControl & | operator= (BoundingControl const &in_that) |
Share the underlying smart-pointer of the BoundingControl source. More... | |
BoundingControl & | SetVolume (SimpleSphere const &in_sphere, SimpleCuboid const &in_cuboid) |
Explicitly sets the local bounding. More... | |
BoundingControl & | SetVolume (SimpleSphere const &in_sphere) |
Explicitly sets the local bounding. More... | |
BoundingControl & | SetVolume (SimpleCuboid const &in_cuboid) |
Explicitly sets the local bounding. More... | |
BoundingControl & | SetExclusion (bool in_exclusion) |
Controls whether this segment should be excluded when computing bounding volumes. More... | |
BoundingControl & | UnsetVolume () |
Removes an explicitly set bounding, reverting to the automatically generated one. More... | |
BoundingControl & | UnsetExclusion () |
Removes a bounding exclusion setting. More... | |
BoundingControl & | UnsetEverything () |
Removes all bounding settings from this object. More... | |
bool | ShowVolume (SimpleSphere &out_sphere, SimpleCuboid &out_cuboid) const |
Shows the bounding volume. More... | |
bool | ShowExclusion (bool &out_exclusion) const |
Shows the bounding exclusion setting. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::BoundingControl |
Private Member Functions | |
BoundingControl () | |
Private default constructor to prevent instantiation without a segment. More... | |
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.
|
explicit |
Initializes a control tied to the segment in_seg.
HPS::BoundingControl::BoundingControl | ( | BoundingControl const & | in_that | ) |
Initializes a control tied to the same object as in_that.
HPS::BoundingControl::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.
in_that | An rvalue reference to a BoundingControl to take the impl from. |
HPS::BoundingControl::~BoundingControl | ( | ) |
Releases a reference to the database object this control is tied to.
|
private |
Private default constructor to prevent instantiation without a segment.
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
|
inherited |
|
inlinevirtual |
Reimplemented from HPS::Control.
BoundingControl& HPS::BoundingControl::operator= | ( | BoundingControl && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this BoundingControl thereby avoiding a copy.
in_that | An rvalue reference to a BoundingControl to take the impl from. |
BoundingControl& HPS::BoundingControl::operator= | ( | BoundingControl const & | in_that | ) |
Share the underlying smart-pointer of the BoundingControl source.
in_that | The BoundingControl source of the assignment. |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
BoundingControl& HPS::BoundingControl::SetExclusion | ( | bool | in_exclusion | ) |
Controls whether this segment should be excluded when computing bounding volumes.
in_exclude | Whether to exclude this segment when computing bounding volumes. |
BoundingControl& HPS::BoundingControl::SetVolume | ( | SimpleSphere const & | in_sphere, |
SimpleCuboid const & | in_cuboid | ||
) |
Explicitly sets the local bounding.
in_sphere | The SimpleSphere to set the bounding volume to. |
in_cuboid | The SimpleCuboid to set the bounding volume to. |
BoundingControl& HPS::BoundingControl::SetVolume | ( | SimpleSphere const & | in_sphere | ) |
Explicitly sets the local bounding.
in_sphere | The SimpleSphere to set the bounding volume to. |
BoundingControl& HPS::BoundingControl::SetVolume | ( | SimpleCuboid const & | in_cuboid | ) |
Explicitly sets the local bounding.
in_cuboid | The SimpleCuboid to set the bounding volume to. |
bool HPS::BoundingControl::ShowExclusion | ( | bool & | out_exclusion | ) | const |
Shows the bounding exclusion setting.
out_exclusion | Whether to exclude this segment when computing bounding volumes. |
bool HPS::BoundingControl::ShowVolume | ( | SimpleSphere & | out_sphere, |
SimpleCuboid & | out_cuboid | ||
) | const |
Shows the bounding volume.
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. |
|
inlinevirtual |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented from HPS::Control.
BoundingControl& HPS::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().
BoundingControl& HPS::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().
BoundingControl& HPS::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().
|
static |