The AxisTriadControl allows you to turn on or off the axis triad, 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 | |
AxisTriadControl (View const &in_view) | |
Initializes a control tied to the view in_view. More... | |
AxisTriadControl (AxisTriadControl const &in_that) | |
Initializes a control tied to the same object as in_that. More... | |
AxisTriadControl (AxisTriadControl &&in_that) | |
The move constructor creates a AxisTriadControl by transferring the underlying impl of the rvalue reference to this AxisTriadControl thereby avoiding a copy and allocation. More... | |
AxisTriadControl & | operator= (AxisTriadControl &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this AxisTriadControl thereby avoiding a copy. More... | |
~AxisTriadControl () | |
Releases a reference to the database object this control is tied to. More... | |
HPS::Type | ObjectType () const |
AxisTriadControl & | operator= (AxisTriadControl const &in_that) |
Share the smart-pointer. More... | |
HPS::AxisTriadControl & | SetLocation (Location in_location, HPS::Rectangle const &in_position=HPS::Rectangle(), HPS::IntRectangle in_offsets=HPS::IntRectangle::Zero()) |
Sets the location of this axis triad. More... | |
Location | GetLocation () const |
Gets the location of the axis triad. More... | |
AxisTriadControl & | SetPosition (HPS::Rectangle const &in_position) |
Sets the position of the subwindow containing the axis triad. More... | |
HPS::Rectangle | GetPosition () const |
Gets the position of the subwindow containing the axis triad. More... | |
AxisTriadControl & | SetPositionOffsets (HPS::IntRectangle const &in_offsets) |
Sets the position of the subwindow containing this axis triad. More... | |
HPS::IntRectangle | GetPositionOffsets () const |
Gets the poition of the subwindow containing the axis triad. More... | |
HPS::AxisTriadControl & | SetVisibility (bool in_visibility) |
Sets the visibility of this axis triad. More... | |
bool | GetVisibility () const |
Gets the visibility of the axis triad. More... | |
HPS::AxisTriadControl & | SetTextVisibility (bool in_text_visibility) |
Sets the text visibility of this axis triad. More... | |
bool | GetTextVisibility () const |
Gets the text visibility of the axis triad. More... | |
HPS::AxisTriadControl & | SetMaterialPalette (char const *in_material_palette) |
Sets the material palette of this axis triad. More... | |
HPS::UTF8 | GetMaterialPalette () const |
Gets the material palette used for this axis triad. More... | |
HPS::AxisTriadControl & | SetInteractivity (bool in_interactivity) |
Sets the interactivity of this axis triad. More... | |
bool | GetInteractivity () const |
Gets the interactivity of this axis triad. More... | |
AxisTriadControl & | SetSize (float in_size) |
Sets the size of the subwindow containing the axis triad, as a percentage of the main window. More... | |
float | GetSize () const |
Gets the size of the subwindow containing the axis triad, as a percentage of the main window. More... | |
HPS::SegmentKey | GetSegmentKey () const |
Gets the segment where this axis triad 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::AxisTriadControl |
Private Member Functions | |
AxisTriadControl () | |
Private default constructor to prevent instantiation without a view. More... | |
HPS::SegmentKey | GetAxisTriadSegment () const |
Returns the axis triad segment key. More... | |
The AxisTriadControl allows you to turn on or off the axis triad, move it to a specific corner of the screen, change the material palette used to style it, or otherwise manipulate it.
|
strong |
|
explicit |
Initializes a control tied to the view in_view.
HPS::AxisTriadControl::AxisTriadControl | ( | AxisTriadControl const & | in_that | ) |
Initializes a control tied to the same object as in_that.
HPS::AxisTriadControl::AxisTriadControl | ( | AxisTriadControl && | in_that | ) |
The move constructor creates a AxisTriadControl by transferring the underlying impl of the rvalue reference to this AxisTriadControl thereby avoiding a copy and allocation.
in_that | An rvalue reference to a AxisTriadControl to take the impl from. |
HPS::AxisTriadControl::~AxisTriadControl | ( | ) |
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.
|
private |
Returns the axis triad segment key.
|
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::AxisTriadControl::GetInteractivity | ( | ) | const |
Gets the interactivity of this axis triad.
Location HPS::AxisTriadControl::GetLocation | ( | ) | const |
Gets the location of the axis triad.
HPS::UTF8 HPS::AxisTriadControl::GetMaterialPalette | ( | ) | const |
Gets the material palette used for this axis triad.
HPS::Rectangle HPS::AxisTriadControl::GetPosition | ( | ) | const |
Gets the position of the subwindow containing the axis triad.
HPS::IntRectangle HPS::AxisTriadControl::GetPositionOffsets | ( | ) | const |
Gets the poition of the subwindow containing the axis triad.
HPS::SegmentKey HPS::AxisTriadControl::GetSegmentKey | ( | ) | const |
Gets the segment where this axis triad resides.
float HPS::AxisTriadControl::GetSize | ( | ) | const |
Gets the size of the subwindow containing the axis triad, as a percentage of the main window.
bool HPS::AxisTriadControl::GetTextVisibility | ( | ) | const |
Gets the text visibility of the axis triad.
bool HPS::AxisTriadControl::GetVisibility | ( | ) | const |
Gets the visibility of the axis triad.
|
inherited |
|
inlinevirtual |
AxisTriadControl& HPS::AxisTriadControl::operator= | ( | AxisTriadControl && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this AxisTriadControl thereby avoiding a copy.
in_that | An rvalue reference to a AxisTriadControl to take the impl from. |
AxisTriadControl& HPS::AxisTriadControl::operator= | ( | AxisTriadControl 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.
HPS::AxisTriadControl& HPS::AxisTriadControl::SetInteractivity | ( | bool | in_interactivity | ) |
Sets the interactivity of this axis triad.
When the axis triad is interactive, dragging the triad will rotate the scene. Making the Axis Triad interactive pushes the Axis Triad operator on the current View's operator stack with High priority
in_interactivity | the interactivity of this axis triad |
HPS::AxisTriadControl& HPS::AxisTriadControl::SetLocation | ( | Location | in_location, |
HPS::Rectangle const & | in_position = HPS::Rectangle() , |
||
HPS::IntRectangle | in_offsets = HPS::IntRectangle::Zero() |
||
) |
Sets the location of this axis triad.
in_location | the location of this axis triad |
in_position | the position of the subwindow containing the axis triad. only used when in_location is Custom |
in_offsets | the pixel-space rectangle to offset to the given position. only used when in_location is Custom |
HPS::AxisTriadControl& HPS::AxisTriadControl::SetMaterialPalette | ( | char const * | in_material_palette | ) |
Sets the material palette of this axis triad.
The material palette supplied to this function should originate from a material kit array with 3 entries. The entries in the material kit array are applied to the navigation cube as follows: Entry 0 - x-axis color Entry 1 - y-axis color Entry 2 - z-axis color
in_material_palette | the name of the material palette to be used for this axis triad |
AxisTriadControl& HPS::AxisTriadControl::SetPosition | ( | HPS::Rectangle const & | in_position | ) |
Sets the position of the subwindow containing the axis triad.
in_position | a rectangle describing the subwindow containing the axis triad. |
AxisTriadControl& HPS::AxisTriadControl::SetPositionOffsets | ( | HPS::IntRectangle const & | in_offsets | ) |
Sets the position of the subwindow containing this axis triad.
in_offsets | a rectangle describing the offsets being applied to the current position |
AxisTriadControl& HPS::AxisTriadControl::SetSize | ( | float | in_size | ) |
Sets the size of the subwindow containing the axis triad, as a percentage of the main window.
in_size | The size of the subwindow containing the axis triad, as a percentage of the main window. [0-1] |
HPS::AxisTriadControl& HPS::AxisTriadControl::SetTextVisibility | ( | bool | in_text_visibility | ) |
Sets the text visibility of this axis triad.
in_text_visibility | the visibility of the text for this axis triad |
HPS::AxisTriadControl& HPS::AxisTriadControl::SetVisibility | ( | bool | in_visibility | ) |
Sets the visibility of this axis triad.
in_visibility | the visibility of this axis triad |
|
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 |