JCanvas3DOB

com.interactivemesh.j3d.community.gui
Class JCanvas3DOB

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by com.interactivemesh.j3d.community.gui.JCanvas3DOBAbstract
                      extended by com.interactivemesh.j3d.community.gui.JCanvas3DOB
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.AncestorListener

public class JCanvas3DOB
extends JCanvas3DOBAbstract

JCanvas3DOB is a standard implementation of JCanvas3DOBAbstract.

Serialization: JCanvas3DOB does not support serialization.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class com.interactivemesh.j3d.community.gui.JCanvas3DOBAbstract
imageHeight, imageWidth, paintImage
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JCanvas3DOB()
          Constructs and initializes a new JCanvas3DOB object that Java 3D can render into.
JCanvas3DOB(javax.media.j3d.GraphicsConfigTemplate3D template)
          Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified template.
JCanvas3DOB(javax.media.j3d.GraphicsConfigTemplate3D template, java.awt.GraphicsDevice device)
          Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified template and graphics device.
JCanvas3DOB(java.awt.GraphicsDevice device)
          Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified graphics device.
 
Method Summary
protected  void createOffScreenBuffer(int width, int height)
          Creates new off-screen buffers of the given size. A JCanvas3DOB object calls super.createOffScreenBuffer(canvasWidth, canvasHeight) with the given size.
protected  void offScreenBufferCopied()
          Callback used to allow an overriding subclass to execute individual code when the off-screen buffers were copied. A JCanvas3DOB object provides an empty implementation.
protected  void offScreenBufferCreated()
          Callback used to allow an overriding subclass to execute individual code when new off-screen buffers were created. A JCanvas3DOB object provides an empty implementation.
 void paintComponent(java.awt.Graphics g)
          Flips and paints the result of the 3D rendering.
 
Methods inherited from class com.interactivemesh.j3d.community.gui.JCanvas3DOBAbstract
ancestorAdded, ancestorMoved, ancestorRemoved, getOffscreenCanvas3D, isReadyForDrawing, processComponentKeyEvent, processFocusEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, setBounds
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processKeyBinding, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JCanvas3DOB

public JCanvas3DOB()
Constructs and initializes a new JCanvas3DOB object that Java 3D can render into. The screen device is obtained from GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(), which might not be the one you should use if you are in a multiscreen environment. The JCanvas3DOB is constructed using the following default parameters:
double buffer enable : false
stereo enable : false


JCanvas3DOB

public JCanvas3DOB(java.awt.GraphicsDevice device)
Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified graphics device.

Parameters:
device - the screen graphics device that will be used to construct a GraphicsConfiguration.

JCanvas3DOB

public JCanvas3DOB(javax.media.j3d.GraphicsConfigTemplate3D template)
Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified template. The screen device is obtained from GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(), which might not be the one you should use if you are in a multiscreen environment.

Parameters:
template - The template that will be used to construct a GraphicsConfiguration. The stereo and doublebuffer properties are forced to UNNECESSARY.

JCanvas3DOB

public JCanvas3DOB(javax.media.j3d.GraphicsConfigTemplate3D template,
                   java.awt.GraphicsDevice device)
Constructs and initializes a new JCanvas3DOB object that Java 3D can render into, using the specified template and graphics device.

Parameters:
template - The template that will be used to construct a GraphicsConfiguration. The stereo and doublebuffer properties are forced to UNNECESSARY.
device - the screen graphics device that will be used to construct a GraphicsConfiguration in conjunction with the template.
Method Detail

createOffScreenBuffer

protected void createOffScreenBuffer(int width,
                                     int height)
Creates new off-screen buffers of the given size. This method is called internally whenever this panel is added to a parent or is resized.

Subclasses should call and/or override this method according to its individual needs. In case of overriding calling super.createOffScreenBuffer(canvasWidth, canvasHeight) has to be the last thing to do.

A JCanvas3DOB object calls super.createOffScreenBuffer(canvasWidth, canvasHeight) with the given size.

Overrides:
createOffScreenBuffer in class JCanvas3DOBAbstract
Parameters:
width - the width of the off-screen buffers to create
height - the height of the off-screen buffers to create

offScreenBufferCreated

protected void offScreenBufferCreated()
Callback used to allow an overriding subclass to execute individual code when new off-screen buffers were created.

This method is called internally by the event-dispatching thread (EDT) and should not be called by applications.

A JCanvas3DOB object provides an empty implementation.

Overrides:
offScreenBufferCreated in class JCanvas3DOBAbstract

offScreenBufferCopied

protected void offScreenBufferCopied()
Callback used to allow an overriding subclass to execute individual code when the off-screen buffers were copied.

This method is called internally by the event-dispatching thread (EDT) and should not be called by applications.

A JCanvas3DOB object provides an empty implementation.

Overrides:
offScreenBufferCopied in class JCanvas3DOBAbstract

paintComponent

public void paintComponent(java.awt.Graphics g)
Flips and paints the result of the 3D rendering.

Overrides:
paintComponent in class JCanvas3DOBAbstract
Parameters:
g -

JCanvas3DOB