| VRS - The Virtual Rendering System |
| version 3.3 |
#include <vrs/sg/movefocusgroundplatenavigation.h>

Public Types | |
| enum | Mode { PRESERVE_POSITION, PRESERVE_ANGLE } |
| The mode determines the way how the MoveFocusNavigation achieves the goal that the selected focus point moves to the middle of the screen. More... | |
Public Member Functions | |
| MoveFocusGroundPlateNavigation (double yValOfGroundPlate=0.0, Mode mode=PRESERVE_POSITION) | |
| The MoveFocusNavigation needs a canvas to check the focus point validity. | |
| void | setMode (Mode mode) |
| Sets the way how the focus point moves to the middle of the screen. See Mode for more information. | |
| Mode | getMode () const |
| void | setAnimationTime (double minSeconds=0.25, double maxSeconds=2.5) |
| The animation time specifies the time length of the transfer from one focus point to a new one Dependent of the rotation angle, the rotation time is between minSeconds and maxSeconds. | |
| double | getMinAnimationTime () const |
| double | getMaxAnimationTime () const |
| virtual void | onDragStart (int x, int y, SO< ButtonEvent >, MouseButtonFunctionID id) |
| See navigationtechnique.h. | |
| virtual void | onTimer (SO< TimeEvent > event, double secondsSinceLastTimeEvent) |
| If the InteractionTechnique is active (i.e. | |
| VRS_TYPEINFO (MoveFocusGroundPlateNavigation, GroundPlateNavigation) | |
Static Public Attributes | |
| static const MouseButtonFunctionID | MoveFocus |
It introduces an animation that changes the viewing direction gradually to the target focus point.
The mode determines the way how the MoveFocusNavigation achieves the goal that the selected focus point moves to the middle of the screen.
PRESERVE_POSITION: The focus-change animation does only rotate the camera. PRESERVE_ANGLE: The focus-change animation does only move the camera parallel to the terrain.
| VRS::MoveFocusGroundPlateNavigation::MoveFocusGroundPlateNavigation | ( | double | yValOfGroundPlate = 0.0, |
|
| Mode | mode = PRESERVE_POSITION | |||
| ) |
The MoveFocusNavigation needs a canvas to check the focus point validity.
| void VRS::MoveFocusGroundPlateNavigation::setMode | ( | Mode | mode | ) |
Sets the way how the focus point moves to the middle of the screen. See Mode for more information.
| Mode VRS::MoveFocusGroundPlateNavigation::getMode | ( | ) | const |
| void VRS::MoveFocusGroundPlateNavigation::setAnimationTime | ( | double | minSeconds = 0.25, |
|
| double | maxSeconds = 2.5 | |||
| ) |
The animation time specifies the time length of the transfer from one focus point to a new one Dependent of the rotation angle, the rotation time is between minSeconds and maxSeconds.
| double VRS::MoveFocusGroundPlateNavigation::getMinAnimationTime | ( | ) | const |
| double VRS::MoveFocusGroundPlateNavigation::getMaxAnimationTime | ( | ) | const |
| virtual void VRS::MoveFocusGroundPlateNavigation::onDragStart | ( | int | x, | |
| int | y, | |||
| SO< ButtonEvent > | , | |||
| MouseButtonFunctionID | id | |||
| ) | [virtual] |
See navigationtechnique.h.
| virtual void VRS::MoveFocusGroundPlateNavigation::onTimer | ( | SO< TimeEvent > | event, | |
| double | secondsSinceLastTimeEvent | |||
| ) | [virtual] |
If the InteractionTechnique is active (i.e.
has control of the view parameters) it receives user events and time events. The time event has a special meaning, because after the onTimer() call the current view parameters are finally applied. I.e. all view parameter states between two onTimer()-calls are not relevant. For convenience the time since the last time event is added, which could be alternatively calculated from the time event.
Reimplemented from VRS::InteractionTechnique.
| VRS::MoveFocusGroundPlateNavigation::VRS_TYPEINFO | ( | MoveFocusGroundPlateNavigation | , | |
| GroundPlateNavigation | ||||
| ) |