Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## igeo.gui
Class INavigator

    java.lang.Object
      igeo.gui.INavigator

    public class INavigator

extends java.lang.Object

Class to provide 3D navigation function by mouse and keyboard. An instance of INavigator is associated with an instance of IView and it's retained by each IPane.

Author:
  Satoru Sugihara
See Also:
  `IView`, `IPane`

Nested Class Summary
`static class` | `INavigator.DragType`

Field Summary
`double` | `axonPanRatio`
`double` | `axonZoomRatio`
`static IMouseEvent` | `defaultPanButton`
`static IMouseEvent` | `defaultPanButton2`
`static IMouseEvent` | `defaultRotateButton`
`static IMouseEvent` | `defaultRotateButton2`
`static IMouseEvent` | `defaultZoomButton`
`static IMouseEvent` | `defaultZoomButton2`
`INavigator.DragType` | `dragType`
`double` | `keyAxonPanInc`
`double` | `keyPersPanInc`
`double` | `keyRotationPitchInc`
`double` | `keyRotationYawInc`
`double` | `keyZoomInc`
`static double` | `minimumAxonMouseZoomRatio`
`boolean` | `mousePressed`
`int` | `mouseX`
`int` | `mouseY`
`java.util.ArrayList<IMouseEvent>` | `panButtons`
`IPane` | `pane`
`double` | `persPanRatio`
`double` | `persZoomRatio`
`java.util.ArrayList<IMouseEvent>` | `rotateButtons`
`boolean` | `rotateLock` for orthogonal view not to rotate.
`java.util.ArrayList<IMouseEvent>` | `rotateUnlockButtons`
`double` | `rotationPitchRatio`
`double` | `rotationYawRatio`
`IView` | `view`
`IVec` | `viewAngle`
`double` | `viewAxonRatio`
`IVec` | `viewPos`
`IVec` | `viewTarget`
`double` | `wheelZoomRatio`
`java.util.ArrayList<IMouseEvent>` | `zoomButtons`

Constructor Summary
`INavigator(IView v)`
`INavigator(IView v, IPane p)`

Method Summary
`INavigator.DragType` | `getDragType(IMouseEvent e)`
`void` | `keyPressed(IKeyEvent e)`
`void` | `keyReleased(IKeyEvent e)`
`void` | `keyTyped(IKeyEvent e)`
`void` | `mouseClicked(IMouseEvent e)`
`void` | `mouseDragged(IMouseEvent e)`
`void` | `mouseEntered(IMouseEvent e)`
`void` | `mouseExited(IMouseEvent e)`
`void` | `mouseMoved(IMouseEvent e)`
`void` | `mousePressed(IMouseEvent e)`
`void` | `mouseReleased(IMouseEvent e)`
`void` | `mouseWheelMoved(IMouseWheelEvent e)`
`void` | `setAxonometricPanRatio(double axonRatio)`
`void` | `setAxonometricZoomRatio(double zoomRatio)`
`void` | `setPane(IPane p)`
`void` | `setPerspectivePanRatio(double panRatio)`
`void` | `setPerspectiveZoomRatio(double zoomRatio)`
`void` | `setRatioByBounds(IBounds bounds)`
`void` | `setRotateLock(boolean lock)`
`void` | `setRotationRatio(double yawRatio, double pitchRatio)`
`void` | `setView(IView v)`
`void` | `updatePan(double xmove, double ymove)`
`void` | `updatePanByMouse(int x, int y)`
`void` | `updateRotation(double yawdiff, double pitchdiff)`
`void` | `updateRotationByMouse(int x, int y)`
`void` | `updateZoom(double diff)`
`void` | `updateZoomByMouse(int x, int y)`
`void` | `wheelZoomRatio(double zoomRatio)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### defaultRotateButton

    public static final IMouseEvent defaultRotateButton

### defaultRotateButton2

    public static final IMouseEvent defaultRotateButton2

### defaultPanButton

    public static final IMouseEvent defaultPanButton

### defaultPanButton2

    public static final IMouseEvent defaultPanButton2

### defaultZoomButton

    public static final IMouseEvent defaultZoomButton

### defaultZoomButton2

    public static final IMouseEvent defaultZoomButton2

### minimumAxonMouseZoomRatio

    public static double minimumAxonMouseZoomRatio

### rotationYawRatio

    public double rotationYawRatio

### rotationPitchRatio

    public double rotationPitchRatio

### persPanRatio

    public double persPanRatio

### axonPanRatio

    public double axonPanRatio

### axonZoomRatio

    public double axonZoomRatio

### persZoomRatio

    public double persZoomRatio

### wheelZoomRatio

    public double wheelZoomRatio

### keyRotationYawInc

    public double keyRotationYawInc

### keyRotationPitchInc

    public double keyRotationPitchInc

### keyPersPanInc

    public double keyPersPanInc

### keyAxonPanInc

    public double keyAxonPanInc

### keyZoomInc

    public double keyZoomInc

### rotateLock

    public boolean rotateLock

  for orthogonal view not to rotate. lock can be turned off with ALT+drag

### pane

    public IPane pane

### view

    public IView view

### mouseX

    public int mouseX

### mouseY

    public int mouseY

### mousePressed

    public boolean mousePressed

### viewPos

    public IVec viewPos

### viewTarget

    public IVec viewTarget

### viewAngle

    public IVec viewAngle

### viewAxonRatio

    public double viewAxonRatio

### dragType

    public INavigator.DragType dragType

### rotateButtons

    public java.util.ArrayList<IMouseEvent> rotateButtons

### panButtons

    public java.util.ArrayList<IMouseEvent> panButtons

### zoomButtons

    public java.util.ArrayList<IMouseEvent> zoomButtons

### rotateUnlockButtons

    public java.util.ArrayList<IMouseEvent> rotateUnlockButtons

Constructor Detail

### INavigator

    public INavigator(IView v,
                      IPane p)

### INavigator

    public INavigator(IView v)

Method Detail

### setPane

    public void setPane(IPane p)

### setView

    public void setView(IView v)

### setRotationRatio

    public void setRotationRatio(double yawRatio,
                                 double pitchRatio)

### setPerspectivePanRatio

    public void setPerspectivePanRatio(double panRatio)

### setAxonometricPanRatio

    public void setAxonometricPanRatio(double axonRatio)

### setPerspectiveZoomRatio

    public void setPerspectiveZoomRatio(double zoomRatio)

### setAxonometricZoomRatio

    public void setAxonometricZoomRatio(double zoomRatio)

### wheelZoomRatio

    public void wheelZoomRatio(double zoomRatio)

### setRotateLock

    public void setRotateLock(boolean lock)

### setRatioByBounds

    public void setRatioByBounds(IBounds bounds)

### updateRotationByMouse

    public void updateRotationByMouse(int x,
                                      int y)

### updateRotation

    public void updateRotation(double yawdiff,
                               double pitchdiff)

### updatePanByMouse

    public void updatePanByMouse(int x,
                                 int y)

### updatePan

    public void updatePan(double xmove,
                          double ymove)

### updateZoomByMouse

    public void updateZoomByMouse(int x,
                                  int y)

### updateZoom

    public void updateZoom(double diff)

### getDragType

    public INavigator.DragType getDragType(IMouseEvent e)

### mousePressed

    public void mousePressed(IMouseEvent e)

### mouseReleased

    public void mouseReleased(IMouseEvent e)

### mouseClicked

    public void mouseClicked(IMouseEvent e)

### mouseEntered

    public void mouseEntered(IMouseEvent e)

### mouseExited

    public void mouseExited(IMouseEvent e)

### mouseMoved

    public void mouseMoved(IMouseEvent e)

### mouseDragged

    public void mouseDragged(IMouseEvent e)

### mouseWheelMoved

    public void mouseWheelMoved(IMouseWheelEvent e)

### keyPressed

    public void keyPressed(IKeyEvent e)

### keyReleased

    public void keyReleased(IKeyEvent e)

### keyTyped

    public void keyTyped(IKeyEvent e)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD