The NavigationCubeControl allows you to turn on or off the navigation cube, move it to a specific corner of the screen, change the material palette used to style it, or otherwise manipulate it. More...
#include <sprk.h>
Public Types | |
enum | Location { Location::TopRight, Location::TopLeft, Location::BottomRight, Location::BottomLeft, Location::Custom } |
Public Member Functions | |
NavigationCubeControl (View const &in_view) | |
Initializes a control tied to the view in_view. More... | |
NavigationCubeControl (NavigationCubeControl const &in_that) | |
Initializes a control tied to the same object as in_that. More... | |
NavigationCubeControl (NavigationCubeControl &&in_that) | |
The move constructor creates a NavigationCubeControl by transferring the underlying impl of the rvalue reference to this NavigationCubeControl thereby avoiding a copy and allocation. More... | |
NavigationCubeControl & | operator= (NavigationCubeControl &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this NavigationCubeControl thereby avoiding a copy. More... | |
~NavigationCubeControl () | |
Releases a reference to the database object this control is tied to. More... | |
HPS::Type | ObjectType () const |
NavigationCubeControl & | operator= (NavigationCubeControl const &in_that) |
Share the smart-pointer. More... | |
NavigationCubeControl & | SetLocation (Location in_location, HPS::Rectangle const &in_rectangle=HPS::Rectangle(), HPS::IntRectangle in_offsets=HPS::IntRectangle::Zero()) |
Sets the location of this navigation cube. More... | |
Location | GetLocation () const |
Gets the location of the navigation cube. More... | |
NavigationCubeControl & | SetPosition (HPS::Rectangle const &in_rectangle) |
Sets the position of the subwindow containing this navigation cube. More... | |
HPS::Rectangle | GetPosition () const |
Gets the poition of the subwindow containing the navigation cube. More... | |
NavigationCubeControl & | SetPositionOffsets (HPS::IntRectangle const &in_offsets) |
Sets the position of the subwindow containing the navigation cube. More... | |
HPS::IntRectangle | GetPositionOffsets () const |
Gets the poition of the subwindow containing the navigation cube. More... | |
NavigationCubeControl & | SetVisibility (bool in_visibility) |
Sets the visibility of this navigation cube. More... | |
bool | GetVisibility () const |
Gets the visibility of the navigation cube. More... | |
NavigationCubeControl & | SetTextVisibility (bool in_text_visibility) |
Sets the text visibility of this navigation cube. More... | |
bool | GetTextVisibility () const |
Gets the text visibility of the navigation cube. More... | |
NavigationCubeControl & | SetMaterialPalette (char const *in_material_palette) |
Sets the material palette of this navigation cube. More... | |
HPS::UTF8 | GetMaterialPalette () const |
Gets the material palette used for this navigation cube. More... | |
NavigationCubeControl & | SetInteractivity (bool in_interactivity) |
Sets the interactivity of this navigation cube. More... | |
bool | GetInteractivity () const |
Gets the interactivity of this navigation cube. More... | |
NavigationCubeControl & | SetSize (float in_size) |
Sets the size of the subwindow containing the navigation cube, as a percentage of the main window. More... | |
float | GetSize () const |
Gets the size of the subwindow containing the navigation cube, as a percentage of the main window. More... | |
HPS::SegmentKey | GetSegmentKey () const |
Gets the segment where this navigation cube resides. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. 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::NavigationCubeControl |
Private Member Functions | |
NavigationCubeControl () | |
Private default constructor to prevent instantiation without a view. More... | |
HPS::SegmentKey | GetNavigationCubeSegment () const |
Returns the navigation cube segment key. More... | |
The NavigationCubeControl allows you to turn on or off the navigation cube, move it to a specific corner of the screen, change the material palette used to style it, or otherwise manipulate it.
To allow your users to interact with the Navigation Cube, see HPS::NavigationCubeOperator.
|
strong |
|
explicit |
Initializes a control tied to the view in_view.
HPS::NavigationCubeControl::NavigationCubeControl | ( | NavigationCubeControl const & | in_that | ) |
Initializes a control tied to the same object as in_that.
HPS::NavigationCubeControl::NavigationCubeControl | ( | NavigationCubeControl && | in_that | ) |
The move constructor creates a NavigationCubeControl by transferring the underlying impl of the rvalue reference to this NavigationCubeControl thereby avoiding a copy and allocation.
in_that | An rvalue reference to a NavigationCubeControl to take the impl from. |
HPS::NavigationCubeControl::~NavigationCubeControl | ( | ) |
Releases a reference to the database object this control is tied to.
|
inlineprivate |
Private default constructor to prevent instantiation without a view.
|
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.
bool HPS::NavigationCubeControl::GetInteractivity | ( | ) | const |
Gets the interactivity of this navigation cube.
Location HPS::NavigationCubeControl::GetLocation | ( | ) | const |
Gets the location of the navigation cube.
HPS::UTF8 HPS::NavigationCubeControl::GetMaterialPalette | ( | ) | const |
Gets the material palette used for this navigation cube.
|
private |
Returns the navigation cube segment key.
HPS::Rectangle HPS::NavigationCubeControl::GetPosition | ( | ) | const |
Gets the poition of the subwindow containing the navigation cube.
HPS::IntRectangle HPS::NavigationCubeControl::GetPositionOffsets | ( | ) | const |
Gets the poition of the subwindow containing the navigation cube.
HPS::SegmentKey HPS::NavigationCubeControl::GetSegmentKey | ( | ) | const |
Gets the segment where this navigation cube resides.
float HPS::NavigationCubeControl::GetSize | ( | ) | const |
Gets the size of the subwindow containing the navigation cube, as a percentage of the main window.
bool HPS::NavigationCubeControl::GetTextVisibility | ( | ) | const |
Gets the text visibility of the navigation cube.
bool HPS::NavigationCubeControl::GetVisibility | ( | ) | const |
Gets the visibility of the navigation cube.
|
inherited |
|
inlinevirtual |
NavigationCubeControl& HPS::NavigationCubeControl::operator= | ( | NavigationCubeControl && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this NavigationCubeControl thereby avoiding a copy.
in_that | An rvalue reference to a NavigationCubeControl to take the impl from. |
NavigationCubeControl& HPS::NavigationCubeControl::operator= | ( | NavigationCubeControl const & | in_that | ) |
Share the smart-pointer.
|
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.
NavigationCubeControl& HPS::NavigationCubeControl::SetInteractivity | ( | bool | in_interactivity | ) |
Sets the interactivity of this navigation cube.
When the navigation cube is interactive, dragging the triad will rotate the scene and clicking on a face, edge or vertex of the cube will snap the camera to the appropriate plane. Making the Navigation Cube interactive pushes the Navigation Cube operator on the current View's operator stack with High priority
in_interactivity | the interactivity of this navigation cube |
NavigationCubeControl& HPS::NavigationCubeControl::SetLocation | ( | Location | in_location, |
HPS::Rectangle const & | in_rectangle = HPS::Rectangle() , |
||
HPS::IntRectangle | in_offsets = HPS::IntRectangle::Zero() |
||
) |
Sets the location of this navigation cube.
in_location | the location of this navigation cube |
in_rectangle | the position of the subwindow containing the navigation cube. Only considered if in_location is set to Custom. |
in_offsets | the pixel-space rectangle to offset to the given position. only used when in_location is Custom |
NavigationCubeControl& HPS::NavigationCubeControl::SetMaterialPalette | ( | char const * | in_material_palette | ) |
Sets the material palette of this navigation cube.
The material palette supplied to this function should originate from a material kit array with 9 entries. The entries in the material kit array are applied to the navigation cube as follows: Entry 0 - back face color Entry 1 - top face color Entry 2 - left face color Entry 3 - front face color Entry 4 - bottom face color Entry 5 - right face color Entry 6 - mouse-over highlight color Entry 7 - text color Entry 8 - line color
in_material_palette | the name of the material palette to be used for this navigation cube |
NavigationCubeControl& HPS::NavigationCubeControl::SetPosition | ( | HPS::Rectangle const & | in_rectangle | ) |
Sets the position of the subwindow containing this navigation cube.
in_rectangle | a rectangle describing the subwindow containing the navigation cube |
NavigationCubeControl& HPS::NavigationCubeControl::SetPositionOffsets | ( | HPS::IntRectangle const & | in_offsets | ) |
Sets the position of the subwindow containing the navigation cube.
in_offsets | a rectangle describing the offsets being applied to the current position. |
NavigationCubeControl& HPS::NavigationCubeControl::SetSize | ( | float | in_size | ) |
Sets the size of the subwindow containing the navigation cube, as a percentage of the main window.
in_size | The size of the subwindow containing the navigation cube, as a percentage of the main window. [0-1] |
NavigationCubeControl& HPS::NavigationCubeControl::SetTextVisibility | ( | bool | in_text_visibility | ) |
Sets the text visibility of this navigation cube.
in_text_visibility | the visibility of the text for this navigation cube |
NavigationCubeControl& HPS::NavigationCubeControl::SetVisibility | ( | bool | in_visibility | ) |
Sets the visibility of this navigation cube.
in_visibility | the visibility of this navigation cube |
|
virtualinherited |
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 in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
|
static |