Public Member Functions | List of all members
HPS::SelectionOptionsControl Class Reference

#include <hps.h>

Inheritance diagram for HPS::SelectionOptionsControl:
HPS::Control HPS::Object

Public Member Functions

 SelectionOptionsControl (WindowKey const &in_window)
 
 SelectionOptionsControl (SelectionOptionsControl const &in_that)
 
 SelectionOptionsControl (SelectionOptionsControl &&in_that)
 
SelectionOptionsControloperator= (SelectionOptionsControl &&in_that)
 
HPS::Type ObjectType () const
 
SelectionOptionsControloperator= (SelectionOptionsControl const &in_that)
 
SelectionOptionsControlSetProximity (float in_proximity)
 
SelectionOptionsControlSetLevel (Selection::Level in_level)
 
SelectionOptionsControlSetInternalLimit (size_t in_limit)
 
SelectionOptionsControlSetRelatedLimit (size_t in_limit)
 
SelectionOptionsControlSetSorting (bool in_sorted)
 
SelectionOptionsControlSetAlgorithm (Selection::Algorithm in_algorithm)
 
SelectionOptionsControlSetGranularity (Selection::Granularity in_granularity)
 
SelectionOptionsControlSetExtentCullingRespected (bool in_state)
 
SelectionOptionsControlSetDeferralExtentCullingRespected (bool in_state)
 
SelectionOptionsControlSetFrustumCullingRespected (bool in_state)
 
SelectionOptionsControlSetVectorCullingRespected (bool in_state)
 
bool ShowProximity (float &out_proximity) const
 
bool ShowLevel (Selection::Level &out_level) const
 
bool ShowInternalLimit (size_t &out_limit) const
 
bool ShowRelatedLimit (size_t &out_limit) const
 
bool ShowSorting (bool &out_sorted) const
 
bool ShowAlgorithm (Selection::Algorithm &out_algorithm) const
 
bool ShowGranularity (Selection::Granularity &out_granularity) const
 
bool ShowExtentCullingRespected (bool &out_state) const
 
bool ShowDeferralExtentCullingRespected (bool &out_state) const
 
bool ShowFrustumCullingRespected (bool &out_state) const
 
bool ShowVectorCullingRespected (bool &out_state) const
 
- Public Member Functions inherited from HPS::Object
Objectoperator= (Object const &other_object)
 
 Object (Object &&in_that)
 
Objectoperator= (Object &&in_that)
 
HPS::Type Type () const
 
virtual bool Empty () const
 
virtual void Reset ()
 
bool HasType (HPS::Type in_mask) const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 
- Protected Member Functions inherited from HPS::Control
 Control (Control &&in_that)
 
Controloperator= (Control &&in_that)
 

Detailed Description

The HPS::SelectionOptionsControl class is a smart pointer that is tied to a database object. It is used to set selection related options on a HPS::WindowKey. Options include the selection algorithm, granularity, internal limit, related limit, level, proximity, and sorting. Default values for the various fields of HPS::SelectionOptionsControl can be found here.

Constructor & Destructor Documentation

HPS::SelectionOptionsControl::SelectionOptionsControl ( WindowKey const &  in_window)
explicit

This constructor creates a SelectionOptionsControl object which is tied to the specified window.

Parameters
in_windowThe window which this SelectionOptionsControl should operate on.
HPS::SelectionOptionsControl::SelectionOptionsControl ( SelectionOptionsControl const &  in_that)

The copy constructor creates a SelectionOptionsControl object that shares the underlying smart-pointer of the source SelectionOptionsControl.

Parameters
in_thatThe source SelectionOptionsControl to copy.
HPS::SelectionOptionsControl::SelectionOptionsControl ( SelectionOptionsControl &&  in_that)

The move constructor creates a SelectionOptionsControl by transferring the underlying impl of the rvalue reference to this SelectionOptionsControl thereby avoiding a copy and allocation.

Parameters
in_thatAn rvalue reference to a SelectionOptionsControl to take the impl from.

Member Function Documentation

HPS::Type HPS::SelectionOptionsControl::ObjectType ( ) const
inlinevirtual

This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.

Returns
The declared type of the object in question, which may differ from the true, underlying type.

Reimplemented from HPS::Control.

SelectionOptionsControl& HPS::SelectionOptionsControl::operator= ( SelectionOptionsControl &&  in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this SelectionOptionsControl thereby avoiding a copy.

Parameters
in_thatAn rvalue reference to a SelectionOptionsControl to take the impl from.
Returns
A reference to this SelectionOptionsControl.
SelectionOptionsControl& HPS::SelectionOptionsControl::operator= ( SelectionOptionsControl const &  in_that)

Share the underlying smart-pointer of the SelectionOptionsControl source.

Parameters
in_thatThe SelectionOptionsControl source of the assignment.
Returns
A reference to this SelectionOptionsControl.
SelectionOptionsControl& HPS::SelectionOptionsControl::SetAlgorithm ( Selection::Algorithm  in_algorithm)

Sets the type of selection algorithm to use. This setting has no effect on object space selections (i.e., select by shell, volume and ray).

Parameters
in_algorithmThe type of selection algorithm to use.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetDeferralExtentCullingRespected ( bool  in_state)

Sets whether to respect the deferral extent culling option during selection. If this value is set to false, the deferral extent culling option (see HPS::CullingControl) will be ignored.

Parameters
in_stateWhether to respect the deferral extent culling option during selection.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetExtentCullingRespected ( bool  in_state)

Sets whether to respect the extent culling option during selection. If this value is set to false, the extent culling option (see HPS::CullingControl) will be ignored.

Parameters
in_stateWhether to respect the extent culling option during selection.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetFrustumCullingRespected ( bool  in_state)

Sets whether to respect the frustum culling option during selection. If this value is set to false, the frustum culling option (see HPS::CullingControl) will be ignored.

Parameters
in_stateWhether to respect the frustum culling option during selection.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetGranularity ( Selection::Granularity  in_granularity)

Sets the selection granularity to use.

Parameters
in_granularityThe selection granularity to use.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetInternalLimit ( size_t  in_limit)

Sets the internal selection limit. The internal selection limit is the maximum number of subentities for shells and meshes that will be returned if performing subentity selection.

Parameters
in_limitThe internal selection limit.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetLevel ( Selection::Level  in_level)

Sets the level at which selection will occur.

Parameters
in_levelThe level at which selection will occur.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetProximity ( float  in_proximity)

Sets the selection proximity in centimeters. This will throw an exception if a negative proximity value is specified.

Parameters
in_proximityThe radius around the selection point within which objects will be returned as selected. The value must be nonnegative.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetRelatedLimit ( size_t  in_limit)

Sets the related selection limit. The related selection limit is the maximum number of items that will be returned as selected when performing a selection. A related selection limit of 0 would result in only the first item getting returned. If the value is greater than 0, this indicates the number of additional items beyond the first to return. The order of these additional items will depend on whether sorting is enabled (see SetSorting).

Parameters
in_limitLimit on the number of items that will be returned as selected when performing a selection.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetSorting ( bool  in_sorted)

Sets whether to sort selection results by relevance. For selection by area or ray, this means sorting results front to back. For all other types of selection, it means sorting results by proximity. This is only relevant if the related selection limit is greater than 0 (see SetRelatedLimit).

Parameters
in_sortedWhether to sort selection results by relevance.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
SelectionOptionsControl& HPS::SelectionOptionsControl::SetVectorCullingRespected ( bool  in_state)

Sets whether to respect the vector culling option during selection. If this value is set to false, the vector culling option (see HPS::CullingControl) will be ignored.

Parameters
in_stateWhether to respect the vector culling option during selection.
Returns
A reference to this SelectionOptionsControl.
See also
Default value
bool HPS::SelectionOptionsControl::ShowAlgorithm ( Selection::Algorithm out_algorithm) const

Shows the selection algorithm for the associated window.

Parameters
out_algorithmThe selection algorithm for the associated window.
Returns
true if the selection algorithm is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowDeferralExtentCullingRespected ( bool &  out_state) const

Shows the deferral extent culling respected state for the associated window.

Parameters
out_stateThe deferral extent culling respected state.
Returns
true if the deferral extent culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowExtentCullingRespected ( bool &  out_state) const

Shows the extent culling respected state for the associated window.

Parameters
out_stateThe extent culling respected state.
Returns
true if the extent culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowFrustumCullingRespected ( bool &  out_state) const

Shows the frustum culling respected state for the associated window.

Parameters
out_stateThe frustum culling respected state.
Returns
true if the frustum culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowGranularity ( Selection::Granularity out_granularity) const

Shows the selection granularity for the associated window.

Parameters
out_granularityThe selection granularity for the associated window.
Returns
true if the selection granularity is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowInternalLimit ( size_t &  out_limit) const

Shows the internal selection limit for the associated window.

Parameters
out_limitThe internal selection limit for the associated window.
Returns
true if the internal selection limit is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowLevel ( Selection::Level out_level) const

Shows the selection level for the associated window.

Parameters
out_levelThe selection level for the associated window.
Returns
true if the level is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowProximity ( float &  out_proximity) const

Shows the selection proximity for the associated window.

Parameters
out_proximityThe selection proximity for the associated window.
Returns
true if the proximity is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowRelatedLimit ( size_t &  out_limit) const

Shows the related selection limit for the associated window.

Parameters
out_limitThe related selection limit for the associated window.
Returns
true if the related selection limit is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowSorting ( bool &  out_sorted) const

Shows whether selection sorting is enabled for the associated window.

Parameters
out_sortedwhether selection sorting is enabled for the associated window.
Returns
true if the flag is valid, false otherwise.
bool HPS::SelectionOptionsControl::ShowVectorCullingRespected ( bool &  out_state) const

Shows the vector culling respected state for the associated window.

Parameters
out_stateThe vector culling respected state.
Returns
true if the vector culling respected state is valid, false otherwise.

The documentation for this class was generated from the following file: