#include <NavigationStyle.h>
Public Member Functions | |
MayaGestureNavigationStyle () | |
const char * | mouseButtons (ViewerMode) |
~MayaGestureNavigationStyle () | |
Public Member Functions inherited from Gui::UserNavigationStyle | |
virtual std::string | userFriendlyName () const |
UserNavigationStyle () | |
~UserNavigationStyle () | |
Public Member Functions inherited from Gui::NavigationStyle | |
void | boxZoom (const SbBox2s &box) |
SbVec3f | getFocalPoint () const |
OrbitStyle | getOrbitStyle () const |
const std::vector< SbVec2s > & | getPolygon (SelectionRole *role=0) const |
RotationCenterMode | getRotationCenterMode () const |
float | getSensitivity () const |
int | getViewingMode () const |
SbBool | isAnimating (void) const |
SbBool | isAnimationEnabled (void) const |
SbBool | isDragAtCursor () const |
SbBool | isPopupMenuEnabled (void) const |
SbBool | isResetCursorPosition () const |
SbBool | isSelecting () const |
SbBool | isZoomAtCursor () const |
SbBool | isZoomInverted () const |
void | lookAtPoint (const SbVec3f &) |
NavigationStyle () | |
NavigationStyle & | operator= (const NavigationStyle &ns) |
virtual SbBool | processEvent (const SoEvent *const ev) |
virtual SbBool | processMotionEvent (const SoMotion3Event *const ev) |
void | redraw () |
void | setAnimationEnabled (const SbBool enable) |
void | setCameraOrientation (const SbRotation &rot, SbBool moveTocenter=false) |
void | setDragAtCursor (SbBool) |
void | setOrbitStyle (OrbitStyle style) |
void | setPopupMenuEnabled (const SbBool on) |
void | setResetCursorPosition (SbBool) |
void | setRotationCenter (const SbVec3f &cnt) |
void | setRotationCenterMode (RotationCenterMode) |
void | setSensitivity (float) |
void | setViewer (View3DInventorViewer *) |
void | setViewingMode (const ViewerMode newmode) |
void | setZoomAtCursor (SbBool) |
void | setZoomInverted (SbBool) |
void | setZoomStep (float) |
void | startAnimating (const SbVec3f &axis, float velocity) |
void | startSelection (AbstractMouseSelection *) |
void | startSelection (SelectionMode=Lasso) |
void | stopAnimating (void) |
void | stopSelection () |
void | updateAnimation () |
virtual void | viewAll () |
void | zoomIn () |
void | zoomOut () |
virtual | ~NavigationStyle () |
Public Member Functions inherited from Base::BaseClass | |
BaseClass () | |
Construction. More... | |
virtual PyObject * | getPyObject (void) |
This method returns the Python wrapper for a C++ object. More... | |
virtual Type | getTypeId (void) const |
bool | isDerivedFrom (const Type type) const |
virtual void | setPyObject (PyObject *) |
virtual | ~BaseClass () |
Destruction. More... | |
Protected Member Functions | |
SbBool | processSoEvent (const SoEvent *const ev) |
bool | testMoveThreshold (const SbVec2s currentPos) const |
MayaGestureNavigationStyle::testMoveThreshold tests if the mouse has moved far enough to constder it a drag. More... | |
Protected Member Functions inherited from Gui::NavigationStyle | |
void | addToLog (const SbVec2s pos, const SbTime time) |
void | clearLog (void) |
void | doRotate (SoCamera *camera, float angle, const SbVec2f &pos) |
SbBool | doSpin () |
void | doZoom (SoCamera *camera, float logzoomfactor, const SbVec2f &pos) |
NavigationStyle::doZoom Zooms in or out by specified factor, keeping the point on screen specified by parameter pos fixed or not according to user preference (NavigationStyle::zoomAtCursor). Ignores invertZoom user preference. More... | |
void | doZoom (SoCamera *camera, SbBool forward, const SbVec2f &pos) |
void | finalize () |
int | getInteractiveCount (void) const |
SbVec3f | getRotationCenter (SbBool *) const |
SbBool | handleEventInForeground (const SoEvent *const e) |
void | initialize () |
void | interactiveCountDec (void) |
void | interactiveCountInc (void) |
SbBool | isSeekMode (void) const |
SbBool | isViewing (void) const |
SbBool | lookAtPoint (const SbVec2s screenpos) |
void | moveCursorPosition () |
SbVec2f | normalizePixelPos (SbVec2f pixpos) |
SbVec2f | normalizePixelPos (SbVec2s pixpos) |
virtual void | openPopupMenu (const SbVec2s &position) |
void | pan (SoCamera *camera) |
void | panCamera (SoCamera *camera, float vpaspect, const SbPlane &panplane, const SbVec2f &previous, const SbVec2f ¤t) |
void | panToCenter (const SbPlane &pplane, const SbVec2f &currpos) |
void | reorientCamera (SoCamera *camera, const SbRotation &rot) |
Rotate the camera by the given amount, then reposition it so we're still pointing at the same focal point. More... | |
void | saveCursorPosition (const SoEvent *const ev) |
SbBool | seekToPoint (const SbVec2s screenpos) |
void | seekToPoint (const SbVec3f &scenepos) |
void | setSeekMode (SbBool enable) |
void | setViewing (SbBool) |
void | spin (const SbVec2f &pointerpos) |
Uses the sphere sheet projector to map the mouseposition onto a 3D point and find a rotation from this and the last calculated point. More... | |
void | spin_simplified (SoCamera *cam, SbVec2f curpos, SbVec2f prevpos) |
NavigationStyle::spin_simplified is a simplified version of NavigationStyle::spin(..), which uses less global variables. Doesn't support starting an animated spinning. More... | |
void | syncWithEvent (const SoEvent *const ev) |
void | zoom (SoCamera *camera, float diffvalue) |
Dependent on the camera type this will either shrink or expand the height of the viewport (orthogonal camera) or move the camera closer or further away from the focal point in the scene. More... | |
void | zoomByCursor (const SbVec2f &thispos, const SbVec2f &prevpos) |
Protected Attributes | |
bool | inGesture |
int | mousedownConsumedCount |
SoMouseButtonEvent | mousedownConsumedEvent [5] |
SbVec2s | mousedownPos |
short | mouseMoveThreshold |
bool | mouseMoveThresholdBroken |
bool | thisClickIsComplex |
Protected Attributes inherited from Gui::NavigationStyle | |
SbBool | altdown |
SbBool | button1down |
SbBool | button2down |
SbBool | button3down |
SbTime | centerTime |
SbBool | ctrldown |
ViewerMode | currentmode |
SbVec2s | globalPos |
SbBool | invertZoom |
SbVec2f | lastmouseposition |
SbVec2s | localPos |
SbBool | lockrecenter |
struct { | |
short historysize | |
SbVec2s * position | |
short size | |
SbTime * time | |
} | log |
SbBool | menuenabled |
SbPlane | panningplane |
SbTime | prevRedrawTime |
SbBool | shiftdown |
View3DInventorViewer * | viewer |
SbBool | zoomAtCursor |
float | zoomStep |
AbstractMouseSelection * | mouseSelection |
std::vector< SbVec2s > | pcPolygon |
SelectionRole | selectedRole |
SbBool | spinanimatingallowed |
int | spinsamplecounter |
SbRotation | spinincrement |
SbRotation | spinRotation |
SbSphereSheetProjector * | spinprojector |
Additional Inherited Members | |
Public Types inherited from Gui::NavigationStyle | |
enum | OrbitStyle { Turntable, Trackball } |
enum | RotationCenterMode { ScenePointAtCursor, FocalPointAtCursor } |
enum | SelectionMode { Lasso = 0, Rectangle = 1, Rubberband = 2, BoxZoom = 3, Clip = 4 } |
enum | ViewerMode { IDLE, INTERACT, ZOOMING, BOXZOOM, PANNING, DRAGGING, SPINNING, SEEK_WAIT_MODE, SEEK_MODE, SELECTION } |
Static Public Member Functions inherited from Gui::UserNavigationStyle | |
static std::map< Base::Type, std::string > | getUserFriendlyNames () |
Static Public Member Functions inherited from Base::BaseClass | |
static void * | create (void) |
static Type | getClassTypeId (void) |
static void | init (void) |
Static Protected Member Functions inherited from Base::BaseClass | |
static void | initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=nullptr) |
Constructor & Destructor Documentation
◆ MayaGestureNavigationStyle()
MayaGestureNavigationStyle::MayaGestureNavigationStyle | ( | ) |
◆ ~MayaGestureNavigationStyle()
MayaGestureNavigationStyle::~MayaGestureNavigationStyle | ( | ) |
Member Function Documentation
◆ mouseButtons()
|
virtual |
◆ processSoEvent()
|
protectedvirtual |
this->button1down &&
Reimplemented from Gui::NavigationStyle.
References Gui::NavigationStyle::altdown, Gui::NavigationStyle::BOXZOOM, Gui::NavigationStyle::button1down, Gui::NavigationStyle::button2down, Gui::NavigationStyle::button3down, Base::Console(), Gui::NavigationStyle::ctrldown, Gui::NavigationStyle::currentmode, Gui::NavigationStyle::doRotate(), Gui::NavigationStyle::doZoom(), Gui::NavigationStyle::DRAGGING, Gui::NavigationStyle::finalize(), Gui::NavigationStyle::handleEventInForeground(), Gui::NavigationStyle::IDLE, inGesture, Gui::NavigationStyle::INTERACT, Gui::NavigationStyle::interactiveCountDec(), Gui::NavigationStyle::isAnimating(), Gui::View3DInventorViewer::isEditing(), Gui::NavigationStyle::isPopupMenuEnabled(), Gui::NavigationStyle::isSeekMode(), Gui::NavigationStyle::isViewing(), Gui::NavigationStyle::lastmouseposition, Gui::NavigationStyle::lookAtPoint(), mousedownConsumedCount, mousedownConsumedEvent, mousedownPos, mouseMoveThresholdBroken, Gui::NavigationStyle::normalizePixelPos(), Gui::NavigationStyle::openPopupMenu(), Gui::NavigationStyle::pan(), Gui::NavigationStyle::panCamera(), Gui::NavigationStyle::PANNING, Gui::NavigationStyle::processMotionEvent(), Gui::NavigationStyle::processSoEvent(), SoGestureEvent::SbGsCanceled, SoGestureEvent::SbGSEnd, SoGestureEvent::SbGSStart, SoGestureEvent::SbGSUpdate, Gui::NavigationStyle::SEEK_MODE, Gui::NavigationStyle::SEEK_WAIT_MODE, Gui::NavigationStyle::seekToPoint(), Gui::NavigationStyle::SELECTION, Gui::NavigationStyle::setViewing(), Gui::NavigationStyle::setViewingMode(), Gui::NavigationStyle::shiftdown, Gui::NavigationStyle::spin_simplified(), Gui::NavigationStyle::SPINNING, SoGestureEvent::state, testMoveThreshold(), thisClickIsComplex, Gui::NavigationStyle::viewer, Base::ConsoleSingleton::Warning(), Gui::NavigationStyle::zoomAtCursor, Gui::NavigationStyle::zoomByCursor(), and Gui::NavigationStyle::ZOOMING.
◆ testMoveThreshold()
|
protected |
MayaGestureNavigationStyle::testMoveThreshold tests if the mouse has moved far enough to constder it a drag.
- Parameters
-
currentPos current position of mouse cursor, in local pixel coordinates.
- Returns
- true if the mouse was moved far enough. False if it's within the boundary. Ignores MayaGestureNavigationStyle::mouseMoveThresholdBroken flag.
References mousedownPos, and mouseMoveThreshold.
Referenced by processSoEvent().
Member Data Documentation
◆ inGesture
|
protected |
Referenced by processSoEvent().
◆ mousedownConsumedCount
|
protected |
Referenced by processSoEvent().
◆ mousedownConsumedEvent
|
protected |
Referenced by processSoEvent().
◆ mousedownPos
|
protected |
Referenced by processSoEvent(), and testMoveThreshold().
◆ mouseMoveThreshold
|
protected |
Referenced by testMoveThreshold().
◆ mouseMoveThresholdBroken
|
protected |
Referenced by processSoEvent().
◆ thisClickIsComplex
|
protected |
Referenced by processSoEvent().
The documentation for this class was generated from the following files:
- src/Gui/NavigationStyle.h
- src/Gui/MayaGestureNavigationStyle.cpp