Class RenderAreaInteractive
java.lang.Object
java.awt.Component
java.awt.Canvas
com.jogamp.newt.awt.NewtCanvasAWT
com.openinventor.inventor.viewercomponents.awt.newt.renderareas.RenderArea
com.openinventor.inventor.viewercomponents.awt.newt.renderareas.RenderAreaInteractive
- All Implemented Interfaces:
com.jogamp.nativewindow.awt.AWTPrintLifecycle
,com.jogamp.nativewindow.NativeSurfaceHolder
,com.jogamp.nativewindow.NativeWindowHolder
,com.jogamp.nativewindow.OffscreenLayerOption
,com.jogamp.nativewindow.WindowClosingProtocol
,com.jogamp.newt.event.KeyListener
,com.jogamp.newt.event.MouseListener
,com.jogamp.newt.event.NEWTEventListener
,com.jogamp.opengl.GLEventListener
,IRenderArea
,IRenderAreaInteractive
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
- Direct Known Subclasses:
RenderAreaExaminer
,RenderAreaOrbiter
public class RenderAreaInteractive
extends RenderArea
implements com.jogamp.newt.event.MouseListener, com.jogamp.newt.event.KeyListener, IRenderAreaInteractive
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
Nested classes/interfaces inherited from interface com.jogamp.nativewindow.awt.AWTPrintLifecycle
com.jogamp.nativewindow.awt.AWTPrintLifecycle.Context
Nested classes/interfaces inherited from interface com.openinventor.inventor.viewercomponents.awt.IRenderAreaInteractive
IRenderAreaInteractive.ClippingPlanesAdjustMode
Nested classes/interfaces inherited from interface com.jogamp.nativewindow.WindowClosingProtocol
com.jogamp.nativewindow.WindowClosingProtocol.WindowClosingMode
-
Field Summary
Fields inherited from class com.jogamp.newt.awt.NewtCanvasAWT
DEBUG
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface com.jogamp.nativewindow.awt.AWTPrintLifecycle
DEFAULT_PRINT_TILE_SIZE
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
activateStereo
(boolean activated) Activates or deactivates raw stereo.Get the camera clipping planes adjustment mode.Deprecated.Gets the root scene graph of this render area.void
init
(com.jogamp.opengl.GLAutoDrawable drawable) boolean
Gets stereo support.void
keyPressed
(com.jogamp.newt.event.KeyEvent e) void
keyReleased
(com.jogamp.newt.event.KeyEvent e) void
mouseClicked
(com.jogamp.newt.event.MouseEvent e) void
mouseDragged
(com.jogamp.newt.event.MouseEvent e) void
mouseEntered
(com.jogamp.newt.event.MouseEvent e) void
mouseExited
(com.jogamp.newt.event.MouseEvent e) void
mouseMoved
(com.jogamp.newt.event.MouseEvent e) void
mousePressed
(com.jogamp.newt.event.MouseEvent e) void
mouseReleased
(com.jogamp.newt.event.MouseEvent e) void
mouseWheelMoved
(com.jogamp.newt.event.MouseEvent e) void
Restore saved camera.void
Save current camera.void
Set camera mode to perspective or orthographic.void
Set the camera clipping planes adjustment mode.void
setSceneGraph
(SoNode sceneGraph) Sets the scene graph.void
setStereoCameraBalance
(float balance) Sets the stereo balance (the position of the zero parallax plane).void
setStereoCameraOffset
(float offset) Sets the stereo offset (the distance of each eye from the camera position).void
viewAll
(SbViewportRegion viewport) Set the camera to view all the scene.void
Moves the camera to be aligned with the given direction vector while keeping the "up" direction of the camera parallel to the specified up vector.Methods inherited from class com.openinventor.inventor.viewercomponents.awt.newt.renderareas.RenderArea
display, dispose, dispose, getAntialiasingMode, getAntialiasingQuality, getComponent, getGLRenderAction, getStillSuperSamplingDelay, getStillSuperSamplingQuality, getTransparencyType, isRawStereoAvailable, reshape, scheduleRedraw, setAntialiasingMode, setAntialiasingQuality, setGLRenderAction, setStillSuperSamplingDelay, setStillSuperSamplingQuality, setTransparencyType
Methods inherited from class com.jogamp.newt.awt.NewtCanvasAWT
addNotify, destroy, getDefaultCloseOperation, getGraphicsConfiguration, getNativeSurface, getNativeWindow, getNEWTChild, getShallUseOffscreenLayer, getSkipJAWTDestroy, isApplet, isAWTEventPassThrough, isOffscreenLayerSurfaceEnabled, paint, print, releasePrint, removeNotify, reshape, setDefaultCloseOperation, setNEWTChild, setShallUseOffscreenLayer, setSkipJAWTDestroy, setupPrint, update
Methods inherited from class java.awt.Canvas
createBufferStrategy, createBufferStrategy, getAccessibleContext, getBufferStrategy
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, dispatchEvent, doLayout, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, preferredSize, prepareImage, prepareImage, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validate
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.openinventor.inventor.viewercomponents.awt.IRenderArea
dispose, getAntialiasingMode, getAntialiasingQuality, getComponent, getGLRenderAction, getStillSuperSamplingDelay, getStillSuperSamplingQuality, getTransparencyType, isRawStereoAvailable, scheduleRedraw, setAntialiasingMode, setAntialiasingQuality, setGLRenderAction, setStillSuperSamplingDelay, setStillSuperSamplingQuality, setTransparencyType
-
Constructor Details
-
RenderAreaInteractive
public RenderAreaInteractive() -
RenderAreaInteractive
public RenderAreaInteractive(boolean enableStereo)
-
-
Method Details
-
setSceneGraph
Description copied from interface:IRenderArea
Sets the scene graph. This is the Open Inventor scene which will be traversed for rendering and event processing.- Specified by:
setSceneGraph
in interfaceIRenderArea
- Overrides:
setSceneGraph
in classRenderArea
- Parameters:
sceneGraph
- the scene graph
-
init
public void init(com.jogamp.opengl.GLAutoDrawable drawable) - Specified by:
init
in interfacecom.jogamp.opengl.GLEventListener
- Overrides:
init
in classRenderArea
-
getClippingPlanesAdjustMode
Get the camera clipping planes adjustment mode.- Specified by:
getClippingPlanesAdjustMode
in interfaceIRenderAreaInteractive
-
setClippingPlanesAdjustMode
Set the camera clipping planes adjustment mode.
When adjustment mode is set toAUTO
, the camera near and far planes are dynamically adjusted to be as tight as possible (least amount of stuff is clipped) before each render traversal.
When adjustment mode is set toMANUAL
, the user is expected to manually set those planes. Updating clipping planes after a camera move is not enough, if a dragger or a rendered shape is moved, they can disappear or become partially clipped.
Default isAUTO
.- Specified by:
setClippingPlanesAdjustMode
in interfaceIRenderAreaInteractive
-
getRootSceneGraph
Deprecated.Description copied from interface:IRenderAreaInteractive
Gets the root scene graph of this render area.- Specified by:
getRootSceneGraph
in interfaceIRenderAreaInteractive
- Returns:
- the root scene graph
-
getSceneInteractor
Description copied from interface:IRenderAreaInteractive
Gets the root scene graph of this render area.- Specified by:
getSceneInteractor
in interfaceIRenderAreaInteractive
- Returns:
- the root scene graph
-
viewAll
Description copied from interface:IRenderAreaInteractive
Set the camera to view all the scene.- Specified by:
viewAll
in interfaceIRenderAreaInteractive
- Parameters:
viewport
- the viewport region used to compute the bounding box of the scene.
-
viewAxis
Description copied from interface:IRenderAreaInteractive
Moves the camera to be aligned with the given direction vector while keeping the "up" direction of the camera parallel to the specified up vector.- Specified by:
viewAxis
in interfaceIRenderAreaInteractive
- Parameters:
direction
- the new view direction vectorup
- the new "up" direction
-
saveCamera
public void saveCamera()Description copied from interface:IRenderAreaInteractive
Save current camera. The values of the camera fields are saved and can be restored by callingIRenderAreaInteractive.restoreCamera()
.- Specified by:
saveCamera
in interfaceIRenderAreaInteractive
-
restoreCamera
public void restoreCamera()Description copied from interface:IRenderAreaInteractive
Restore saved camera. The values of the camera fields are restored to the last saved values.- Specified by:
restoreCamera
in interfaceIRenderAreaInteractive
-
setCameraType
Description copied from interface:IRenderAreaInteractive
Set camera mode to perspective or orthographic.- Specified by:
setCameraType
in interfaceIRenderAreaInteractive
- Parameters:
mode
- the camera mode: perspective or orthographic
-
activateStereo
public void activateStereo(boolean activated) Description copied from interface:IRenderArea
Activates or deactivates raw stereo.- Specified by:
activateStereo
in interfaceIRenderArea
- Overrides:
activateStereo
in classRenderArea
- Parameters:
activated
- true to activate raw stereo
-
isStereoSupported
public boolean isStereoSupported()Description copied from interface:IRenderAreaInteractive
Gets stereo support.- Specified by:
isStereoSupported
in interfaceIRenderAreaInteractive
- Returns:
- true if stereo is supported
-
setStereoCameraOffset
public void setStereoCameraOffset(float offset) Description copied from interface:IRenderAreaInteractive
Sets the stereo offset (the distance of each eye from the camera position). The right eye is moved plus offset and the left eye is moved minus offset.- Specified by:
setStereoCameraOffset
in interfaceIRenderAreaInteractive
- Parameters:
offset
- the stereo offset
-
setStereoCameraBalance
public void setStereoCameraBalance(float balance) Description copied from interface:IRenderAreaInteractive
Sets the stereo balance (the position of the zero parallax plane).- Specified by:
setStereoCameraBalance
in interfaceIRenderAreaInteractive
- Parameters:
balance
- the stereo balance
-
mousePressed
public void mousePressed(com.jogamp.newt.event.MouseEvent e) - Specified by:
mousePressed
in interfacecom.jogamp.newt.event.MouseListener
-
mouseWheelMoved
public void mouseWheelMoved(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseWheelMoved
in interfacecom.jogamp.newt.event.MouseListener
-
mouseDragged
public void mouseDragged(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseDragged
in interfacecom.jogamp.newt.event.MouseListener
-
mouseMoved
public void mouseMoved(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseMoved
in interfacecom.jogamp.newt.event.MouseListener
-
mouseClicked
public void mouseClicked(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseClicked
in interfacecom.jogamp.newt.event.MouseListener
-
mouseReleased
public void mouseReleased(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseReleased
in interfacecom.jogamp.newt.event.MouseListener
-
mouseEntered
public void mouseEntered(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseEntered
in interfacecom.jogamp.newt.event.MouseListener
-
mouseExited
public void mouseExited(com.jogamp.newt.event.MouseEvent e) - Specified by:
mouseExited
in interfacecom.jogamp.newt.event.MouseListener
-
keyPressed
public void keyPressed(com.jogamp.newt.event.KeyEvent e) - Specified by:
keyPressed
in interfacecom.jogamp.newt.event.KeyListener
-
keyReleased
public void keyReleased(com.jogamp.newt.event.KeyEvent e) - Specified by:
keyReleased
in interfacecom.jogamp.newt.event.KeyListener
-