#include <hps.h>

Static Public Member Functions | |
static SelectionOptionsKit | GetDefault () |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
Additional Inherited Members | |
![]() | |
Kit (Kit &&in_that) | |
Kit & | operator= (Kit &&in_that) |
Detailed Description
The SelectionOptionsKit class is a user space object. It contains options related to selection. Default values for the SelectionOptionsKit can be found in this table.
Constructor & Destructor Documentation
HPS::SelectionOptionsKit::SelectionOptionsKit | ( | ) |
The default constructor creates an empty SelectionOptionsKit object.
HPS::SelectionOptionsKit::SelectionOptionsKit | ( | SelectionOptionsKit const & | in_kit | ) |
The copy constructor creates a new SelectionOptionsKit object that contains the same settings as the source SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to copy.
HPS::SelectionOptionsKit::SelectionOptionsKit | ( | SelectionOptionsKit && | in_that | ) |
The move constructor creates a SelectionOptionsKit by transferring the underlying impl of the rvalue reference to this SelectionOptionsKit thereby avoiding a copy and allocation.
- Parameters
-
in_that An rvalue reference to a SelectionOptionsKit to take the impl from.
Member Function Documentation
|
virtual |
Indicates whether this SelectionOptionsKit has any values set on it.
- Returns
- true if no values are set on this SelectionOptionsKit, false otherwise.
Reimplemented from HPS::Object.
bool HPS::SelectionOptionsKit::Equals | ( | SelectionOptionsKit const & | in_kit | ) | const |
Check if the source SelectionOptionsKit is equivalent to this SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to compare to this SelectionOptionsKit.
- Returns
- true if the objects are equivalent, false otherwise.
|
static |
Creates a SelectionOptionsKit which contains the default settings. The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default.
- Returns
- A SelectionOptionsKit with the default settings.
|
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::Kit.
bool HPS::SelectionOptionsKit::operator!= | ( | SelectionOptionsKit const & | in_kit | ) | const |
Check if the source SelectionOptionsKit is not equivalent to this SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to compare to this SelectionOptionsKit.
- Returns
- true if the objects are not equivalent, false otherwise.
SelectionOptionsKit& HPS::SelectionOptionsKit::operator= | ( | SelectionOptionsKit && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this SelectionOptionsKit thereby avoiding a copy.
- Parameters
-
in_that An rvalue reference to a SelectionOptionsKit to take the impl from.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::operator= | ( | SelectionOptionsKit const & | in_kit | ) |
Copies the source SelectionOptionsKit into this SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to copy.
- Returns
- A reference to this SelectionOptionsKit.
bool HPS::SelectionOptionsKit::operator== | ( | SelectionOptionsKit const & | in_kit | ) | const |
Check if the source SelectionOptionsKit is equivalent to this SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to compare to this SelectionOptionsKit.
- Returns
- true if the objects are equivalent, false otherwise.
void HPS::SelectionOptionsKit::Set | ( | SelectionOptionsKit const & | in_kit | ) |
Copies the source SelectionOptionsKit into this SelectionOptionsKit.
- Parameters
-
in_kit The source SelectionOptionsKit to copy.
SelectionOptionsKit& HPS::SelectionOptionsKit::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_algorithm The type of selection algorithm to use.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::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::CullingKit) will be ignored.
- Parameters
-
in_state Whether to respect the deferral extent culling option during selection.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::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::CullingKit) will be ignored.
- Parameters
-
in_state Whether to respect the extent culling option during selection.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::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::CullingKit) will be ignored.
- Parameters
-
in_state Whether to respect the frustum culling option during selection.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::SetGranularity | ( | Selection::Granularity | in_granularity | ) |
Sets the selection granularity to use.
- Parameters
-
in_granularity The selection granularity to use.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::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_limit The internal selection limit.
- Returns
- A reference to this SelectionOptionsKit
SelectionOptionsKit& HPS::SelectionOptionsKit::SetLevel | ( | Selection::Level | in_level | ) |
Sets the level at which selection will occur.
- Parameters
-
in_level The level at which selection will occur.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::SetProximity | ( | float | in_proximity | ) |
Sets the selection proximity in centimeters or object-relative-units (ORU), depending on the selection-routine being utilized. The selection proximity augments point-based or shell-based selections by also factoring in the area surrounding the selection-point or selection-shell.
If HPS::SelectionControl::SelectByPoint is being used, this specifies the radius in centimeters around the selection within which objects will be returned as selected. The value must be positive.
If HPS::SelectionControl::SelectByShell is being used, this specifies a distance in object-relative-units that determines whether a selection is performed. A positive proximity value will cause the selection algorithm to perform a selection when the distance between the two bodies is <= proximity, which means the bodies do not have to be touching in order for Visualize to perform a selection. If the proximity == 0, the bodies must be coincident or penetrating for a selection to occur. If proximity < 0, the shells must penetrate each other by at least that amount before a selection is performed.
When using HPS::SelectionControl::SelectByShell, false positives or negatives for selection may occur if the proximity and/or selection shells meet any of the following criteria:
- The absolute value of a negative proximity is much larger than the actual intersection of the shells. An example would be a shell that represents a thin plate or a thinly-walled tube, and the specified proximity is larger than the thickness of the plate or tube.
- Selection shells ("probes") have vertices with complex intersections
- Selection shells ("probes") have concavities, especially multiple adjacent concavities.
- Parameters
-
in_proximity The radius around the selection within which objects will be returned as selected.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::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_limit Limit on the number of items that will be returned as selected when performing a selection.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::SetScope | ( | SegmentKey const & | in_start_segment | ) |
Sets the starting location at which selection testing will begin. If the selection is being performed from a window, there must be a path from this segment to that window.
- Parameters
-
in_start_segment A segment, that must be a child of the window key, in which to begin selection testing.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::SetScope | ( | KeyPath const & | in_start_path | ) |
Sets the starting location at which selection testing will begin. If the selection is being performed from a window, there must be a path from this segment to that window.
- Parameters
-
in_start_path A path of segments and includes, leaf to root, from the segment to begin selection testing to the window key.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::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_sorted Whether to sort selection results by relevance.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value
SelectionOptionsKit& HPS::SelectionOptionsKit::SetTreeContext | ( | TreeContext const & | in_tree_context | ) |
Sets a tree context to be used for this selection. If many selections are going to be computed without modifying the segment tree, using the same tree context for all of them can be a significant optimization. If one is not specified, a new one is computed each time.
- Parameters
-
in_tree_context The tree context to use for this relation test.
- Returns
- A reference to this object.
SelectionOptionsKit& HPS::SelectionOptionsKit::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::CullingKit) will be ignored.
- Parameters
-
in_state Whether to respect the vector culling option during selection.
- Returns
- A reference to this SelectionOptionsKit.
- See also
- Default value Default value
void HPS::SelectionOptionsKit::Show | ( | SelectionOptionsKit & | out_kit | ) | const |
Copies this SelectionOptionsKit into the given SelectionOptionsKit.
- Parameters
-
out_kit The SelectionOptionsKit to populate with the contents of this SelectionOptionsKit.
bool HPS::SelectionOptionsKit::ShowAlgorithm | ( | Selection::Algorithm & | out_algorithm | ) | const |
Shows the selection algorithm.
- Parameters
-
out_algorithm The selection algorithm.
- Returns
- true if the selection algorithm is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowDeferralExtentCullingRespected | ( | bool & | out_state | ) | const |
Shows the deferral extent culling respected state.
- Parameters
-
out_state The deferral extent culling respected state.
- Returns
- true if the deferral extent culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowExtentCullingRespected | ( | bool & | out_state | ) | const |
Shows the extent culling respected state.
- Parameters
-
out_state The extent culling respected state.
- Returns
- true if the extent culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowFrustumCullingRespected | ( | bool & | out_state | ) | const |
Shows the frustum culling respected state.
- Parameters
-
out_state The frustum culling respected state.
- Returns
- true if the frustum culling respected state is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowGranularity | ( | Selection::Granularity & | out_granularity | ) | const |
Shows the selection granularity.
- Parameters
-
out_granularity The selection granularity.
- Returns
- true if the selection granularity is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowInternalLimit | ( | size_t & | out_limit | ) | const |
Shows the internal selection limit.
- Parameters
-
out_limit The internal selection limit.
- Returns
- true if the internal selection limit is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowLevel | ( | Selection::Level & | out_level | ) | const |
Shows the selection level.
- Parameters
-
out_level The selection level.
- Returns
- true if the level is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowProximity | ( | float & | out_proximity | ) | const |
Shows the selection proximity.
- Parameters
-
out_proximity The selection proximity.
- Returns
- true if the proximity is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowRelatedLimit | ( | size_t & | out_limit | ) | const |
Shows the related selection limit.
- Parameters
-
out_limit The related selection limit.
- Returns
- true if the related selection limit is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowScope | ( | KeyPath & | out_start_path | ) | const |
Shows the starting location at which selection testing will begin.
- Parameters
-
out_start_path A segment or collection of segments and includes organized from leaf to root.
- Returns
- true if a selection scope was set, false otherwise.
bool HPS::SelectionOptionsKit::ShowSorting | ( | bool & | out_sorted | ) | const |
Shows whether selection sorting is enabled.
- Parameters
-
out_sorted whether selection sorting is enabled.
- Returns
- true if the flag is valid, false otherwise.
bool HPS::SelectionOptionsKit::ShowTreeContext | ( | TreeContext & | out_tree_context | ) | const |
Shows the tree context for this SelectionOptionsKit.
- Parameters
-
out_tree_context The tree context to use for this relation test.
- Returns
- true if a tree context was set, false otherwise.
bool HPS::SelectionOptionsKit::ShowVectorCullingRespected | ( | bool & | out_state | ) | const |
Shows the vector culling respected state.
- Parameters
-
out_state The vector culling respected state.
- Returns
- true if the vector culling respected state is valid, false otherwise.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetAlgorithm | ( | ) |
Removes the selection algorithm.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetDeferralExtentCullingRespected | ( | ) |
Removes the deferral extent culling respected option.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetEverything | ( | ) |
Removes all settings from this SelectionOptionsKit.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetExtentCullingRespected | ( | ) |
Removes the extent culling respected option.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetFrustumCullingRespected | ( | ) |
Removes the frustum culling respected option.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetGranularity | ( | ) |
Removes the selection granularity.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetInternalLimit | ( | ) |
Removes the internal selection limit.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetLevel | ( | ) |
Removes the selection level.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetProximity | ( | ) |
Removes the selection proximity.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetRelatedLimit | ( | ) |
Removes the related selection limit.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetScope | ( | ) |
Removes the selection scope setting from this SelectionOptionsKit.
- Returns
- A reference to this object.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetSorting | ( | ) |
Removes whether selection sorting is enabled.
- Returns
- A reference to this SelectionOptionsKit.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetTreeContext | ( | ) |
Removes the tree context from this SelectionOptionsKit.
- Returns
- A reference to this object.
SelectionOptionsKit& HPS::SelectionOptionsKit::UnsetVectorCullingRespected | ( | ) |
Removes the vector culling respected option.
- Returns
- A reference to this SelectionOptionsKit.
The documentation for this class was generated from the following file:
- include/hps.h