HPS::Selection Class Reference

#include <hps.h>

Public Types

enum  Algorithm : uint32_t { Algorithm::Visual, Algorithm::Analytic }
 
enum  Granularity : uint32_t { Granularity::General, Granularity::Detailed }
 
enum  Level : uint32_t { Level::Segment, Level::Entity, Level::Subentity }
 
enum  Sorting : uint32_t { Sorting::Off, Sorting::Proximity, Sorting::ZSorting, Sorting::Default }
 

Detailed Description

The Selection class is a concept class for selection-related enum classes.

Member Enumeration Documentation

◆ Algorithm

enum HPS::Selection::Algorithm : uint32_t
strong

Enumeration of the various selection algorithms.

Enumerator
Visual 

This algorithm will post-process the SelectionResults to remove items which are obscured by other objects in the scene, and therefore only items that are visible on the screen will be selected.

Analytic 

This algorithm will perform analytic world space selection testing, and will not post-process the SelectionResults based on obscuration. Therefore, items which are not currently visible may still be returned in the SelectionResults.

◆ Granularity

enum HPS::Selection::Granularity : uint32_t
strong

Enumeration of the various selection granularities.

Enumerator
General 

Use the most efficient selection determination for curves, edges and lines.

Detailed 

Use the most accurate selection determination for curves, edges and lines.

◆ Level

enum HPS::Selection::Level : uint32_t
strong

Enumeration of the various selection levels.

Enumeration of the various selection sorting choices.

Enumerator
Segment 

Return the owning segment of the selected geometry entities in SelectionResults.

Entity 

Return the selected geometry entities in SelectionResults.

Subentity 

Return the selected geometry entities and the associated faces, edges and vertices for shells or meshes in SelectionResults.

◆ Sorting

enum HPS::Selection::Sorting : uint32_t
strong
Enumerator
Off 

Do not sort selection results.

Proximity 

Sort selection results according to the screen-space proximity to the selection point. Ties (items with equal proximity) will be further z-sorted. Note that Lines (and edges and all line-like geometry such as circular arcs) and Markers are biased to make them more easily selectable. This biasing is part of the proximity calculation, and it is therefore possible that Lines and Markers are sorted ahead of other geometry that is closer to the selection point.

Proximity sorting is only relevant for SelectByPoint.

ZSorting 

Sort selection results from front to back.

Default 

Use Proximity sorting for SelectByPoint. Use ZSorting in all other cases.


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