![]() |
VR-Forces 4.0.4 Class Documentation
|
Allow for selection of terrain features. More...

Public Types | |
| enum | DtTerrainSelectionMode { DtAllFeaturesWithinRange, DtAllSegmentsWithinRange, DtAllPolygons } |
Public Member Functions | |
| DtTerrainSelector () | |
| virtual | ~DtTerrainSelector () |
| virtual void | selectSymbols (DtModelDataIter *iter, Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState) |
| Selects symbols based upon current selector type. | |
| virtual void | setTerrainDatabase (const DtTerrainDatabase *db) |
| Terrain database access. | |
| virtual const DtTerrainDatabase * | terrainDatabase () const |
| virtual void | setTerrainSelectionMode (DtTerrainSelectionMode mode) |
| virtual DtTerrainSelectionMode | terrainSelectionMode () const |
| virtual void | setScreenRange (int iPixels) |
| The number of pixels to use as a "hit test" for interest range. | |
| virtual void | clear () |
| Clears out internal selected lists. | |
| virtual void | select (const DtSpecification &spec, bool merge) |
| Selects all features that match the specified specification, clearing all other selected items. | |
| virtual bool | selectNode (const DtSpecification &spec, QList< DtNetworkElement * > &segments, QList< DtNetworkSpecElement * > &edges) |
| Returns true if any items were selected. | |
| virtual bool | selectEdges (const DtSpecification &spec, QList< DtNetworkElement * > &segments, QList< DtNetworkSpecElement * > &edges) |
| virtual bool | selectAllEdges (QList< DtNetworkElement * > &segments, QList< DtNetworkSpecElement * > &edges) |
| virtual void | endSelection (Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState) |
| Ends the selection process. | |
Static Public Member Functions | |
| static DtTerrainSelector * | create () |
Protected Member Functions | |
| virtual int | calculateInterestRange () |
| virtual void | rectangleSelect (int iInterestRange, const QPoint &start, const QPoint &end, QList< DtNetworkElement * > &list, QList< DtNetworkSpecElement * > &edges) |
| Given the interest range and start and end points, select all segments or features within the range. | |
| virtual void | pointSelect (int iInterestRange, QList< DtNetworkElement * > &list, QList< DtNetworkSpecElement * > &edges) |
| Select a feature or segment at the current end point member variable. | |
| virtual void | selectFeaturesByExtent (DtExtent &ext, Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState) |
| virtual void | extentSelect (int iInteresRange, QList< DtNetworkElement * > &segments, QList< DtNetworkSpecElement * > &edges) |
| Selects a series of features or segments bounded by the extent form by the start and end points member variables. | |
| virtual void | selectByMode (int iInterestRange, const DtNetworkEdge *edge, QList< DtNetworkElement * > &list, QList< DtNetworkSpecElement * > &edges) |
| Selects segments by mode (either one or all) | |
| virtual void | collectSegment (int iInterestRange, const DtNetworkEdge *edge, QList< DtNetworkElement * > &list, QList< DtNetworkSpecElement * > &edges) |
| Find closest segment to current end point and places the result in the supplied list (if segments are not already present) | |
| virtual void | collectAllSegments (int iInterestRange, const DtNetworkEdge *edge, QList< DtNetworkElement * > &list, QList< DtNetworkSpecElement * > &edges) |
| Collects all segments associated with the specified edge. | |
| virtual void | completeSelection (QList< DtNetworkElement * > &segments, QList< DtNetworkSpecElement * > &edges, Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState) |
| virtual bool | keepUnknownKeys () const |
| virtual void | highlightSymbols (QVector< DtModelKey > *display=0) |
| Highlights any currently selected symbols. | |
| virtual void | updateTerrainModelData (QList< DtNetworkElement * > &segments, bool merge) |
| Weeds out and create data that is (not) contained in the selected list. | |
| virtual void | updateNetworkSpecification (DtNetworkSpecElement *parent, DtNetworkSegment *segment, bool merge) |
Protected Attributes | |
| QHash< DtModelKey, DtTerrainModelData * > | myTerrainModelData |
| const DtTerrainDatabase * | myTerrainDatabase |
| DtTerrainSelectionMode | myTerrainSelectionMode |
| int | myScreenRange |
Private Member Functions | |
| DtTerrainSelector (const DtTerrainSelector &orig) | |
| Copy constructor. | |
| DtTerrainSelector & | operator= (const DtTerrainSelector &orig) |
| Assignment operator. | |
Allow for selection of terrain features.
NOTE: Currently only selection mode supported is rectangle selection mode. All others map to rectangle mode
| virtual DtTerrainSelector::~DtTerrainSelector | ( | ) | [virtual] |
| DtTerrainSelector::DtTerrainSelector | ( | const DtTerrainSelector & | orig | ) | [private] |
Copy constructor.
| static DtTerrainSelector* DtTerrainSelector::create | ( | ) | [static] |
| DtTerrainSelector& DtTerrainSelector::operator= | ( | const DtTerrainSelector & | orig | ) | [private] |
Assignment operator.
| virtual void DtTerrainSelector::selectSymbols | ( | DtModelDataIter * | iter, |
| Qt::KeyboardModifiers | keyState, | ||
| Qt::MouseButtons | mouseState | ||
| ) | [virtual] |
Selects symbols based upon current selector type.
Implements DtSymbolSelector.
| virtual void DtTerrainSelector::setTerrainDatabase | ( | const DtTerrainDatabase * | db | ) | [virtual] |
Terrain database access.
| virtual const DtTerrainDatabase* DtTerrainSelector::terrainDatabase | ( | ) | const [virtual] |
| virtual void DtTerrainSelector::setTerrainSelectionMode | ( | DtTerrainSelectionMode | mode | ) | [virtual] |
| virtual DtTerrainSelectionMode DtTerrainSelector::terrainSelectionMode | ( | ) | const [virtual] |
| virtual void DtTerrainSelector::setScreenRange | ( | int | iPixels | ) | [virtual] |
The number of pixels to use as a "hit test" for interest range.
| virtual void DtTerrainSelector::clear | ( | ) | [virtual] |
Clears out internal selected lists.
Reimplemented from DtSymbolSelector.
| virtual void DtTerrainSelector::select | ( | const DtSpecification & | spec, |
| bool | merge | ||
| ) | [virtual] |
Selects all features that match the specified specification, clearing all other selected items.
If merge is true, merges into current selection
| virtual bool DtTerrainSelector::selectNode | ( | const DtSpecification & | spec, |
| QList< DtNetworkElement * > & | segments, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [virtual] |
Returns true if any items were selected.
| virtual bool DtTerrainSelector::selectEdges | ( | const DtSpecification & | spec, |
| QList< DtNetworkElement * > & | segments, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [virtual] |
| virtual bool DtTerrainSelector::selectAllEdges | ( | QList< DtNetworkElement * > & | segments, |
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [virtual] |
| virtual void DtTerrainSelector::endSelection | ( | Qt::KeyboardModifiers | keyState, |
| Qt::MouseButtons | mouseState | ||
| ) | [virtual] |
Ends the selection process.
Reimplemented from DtSymbolSelector.
| virtual int DtTerrainSelector::calculateInterestRange | ( | ) | [protected, virtual] |
| virtual void DtTerrainSelector::rectangleSelect | ( | int | iInterestRange, |
| const QPoint & | start, | ||
| const QPoint & | end, | ||
| QList< DtNetworkElement * > & | list, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Given the interest range and start and end points, select all segments or features within the range.
| virtual void DtTerrainSelector::pointSelect | ( | int | iInterestRange, |
| QList< DtNetworkElement * > & | list, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Select a feature or segment at the current end point member variable.
| virtual void DtTerrainSelector::selectFeaturesByExtent | ( | DtExtent & | ext, |
| Qt::KeyboardModifiers | keyState, | ||
| Qt::MouseButtons | mouseState | ||
| ) | [protected, virtual] |
| virtual void DtTerrainSelector::extentSelect | ( | int | iInteresRange, |
| QList< DtNetworkElement * > & | segments, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Selects a series of features or segments bounded by the extent form by the start and end points member variables.
| virtual void DtTerrainSelector::selectByMode | ( | int | iInterestRange, |
| const DtNetworkEdge * | edge, | ||
| QList< DtNetworkElement * > & | list, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Selects segments by mode (either one or all)
| virtual void DtTerrainSelector::collectSegment | ( | int | iInterestRange, |
| const DtNetworkEdge * | edge, | ||
| QList< DtNetworkElement * > & | list, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Find closest segment to current end point and places the result in the supplied list (if segments are not already present)
| virtual void DtTerrainSelector::collectAllSegments | ( | int | iInterestRange, |
| const DtNetworkEdge * | edge, | ||
| QList< DtNetworkElement * > & | list, | ||
| QList< DtNetworkSpecElement * > & | edges | ||
| ) | [protected, virtual] |
Collects all segments associated with the specified edge.
| virtual void DtTerrainSelector::completeSelection | ( | QList< DtNetworkElement * > & | segments, |
| QList< DtNetworkSpecElement * > & | edges, | ||
| Qt::KeyboardModifiers | keyState, | ||
| Qt::MouseButtons | mouseState | ||
| ) | [protected, virtual] |
| bool DtTerrainSelector::keepUnknownKeys | ( | ) | const [inline, protected, virtual] |
Reimplemented from DtSymbolSelector.
| virtual void DtTerrainSelector::highlightSymbols | ( | QVector< DtModelKey > * | display = 0 | ) | [protected, virtual] |
Highlights any currently selected symbols.
Implements DtSymbolSelector.
| virtual void DtTerrainSelector::updateTerrainModelData | ( | QList< DtNetworkElement * > & | segments, |
| bool | merge | ||
| ) | [protected, virtual] |
Weeds out and create data that is (not) contained in the selected list.
If merge is true, will merge the current selection in with the existing as if a Ctrl or Shift keyboard button were pressed
| virtual void DtTerrainSelector::updateNetworkSpecification | ( | DtNetworkSpecElement * | parent, |
| DtNetworkSegment * | segment, | ||
| bool | merge | ||
| ) | [protected, virtual] |
QHash<DtModelKey, DtTerrainModelData*> DtTerrainSelector::myTerrainModelData [protected] |
const DtTerrainDatabase* DtTerrainSelector::myTerrainDatabase [protected] |
int DtTerrainSelector::myScreenRange [protected] |