org.opensourcephysics.frames
Class Display3DFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by org.opensourcephysics.display.OSPFrame
                          extended by org.opensourcephysics.display3d.simple3d.DrawingFrame3D
                              extended by org.opensourcephysics.frames.Display3DFrame
All Implemented Interfaces:
java.awt.datatransfer.ClipboardOwner, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants, AppFrame, Hidable, DrawingFrame3D

public class Display3DFrame
extends DrawingFrame3D

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Nested classes/interfaces inherited from interface org.opensourcephysics.display3d.core.DrawingFrame3D
DrawingFrame3D.Loader
 
Field Summary
 
Fields inherited from class org.opensourcephysics.display3d.simple3d.DrawingFrame3D
cameraInspectorFrame, cameraItem, copyItem, cursorCrosshairItem, cursorCubeItem, cursorMenu, cursorNoneItem, cursorXYZItem, decorationAxesItem, decorationCubeItem, decorationMenu, decorationNoneItem, displayMenu, displayNoPerspectiveItem, displayPerspectiveItem, displayXYItem, displayXZItem, displayYZItem, drawingPanel, editMenu, fileMenu, lightInspectorFrame, lightItem, MENU_SHORTCUT_KEY_MASK, menuBar, pasteItem, replaceItem, resetCameraItem, visualMenu, zoomToFitItem
 
Fields inherited from class org.opensourcephysics.display.OSPFrame
animated, autoclear, buttonPanel, childFrames, constructorThreadGroup, customButtons, keepHidden, strategy
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Display3DFrame(java.lang.String title)
          Constructor Display3DFrame
 
Method Summary
 void addElement(Element element)
          Adds an Element to this DrawingPanel3D.
 void addInteractionListener(InteractionListener listener)
          Adds in interaction listener to the 3D drawing panel.
 void enableInteraction(boolean enable)
          Enables/Disables interaction with the DrawingPanel3D.
 Camera getCamera()
          Provides the Camera object used to project the scene in 3D modes.
 void setAllowQuickRedraw(boolean allow)
          Whether the scene can be drawn quickly when it is dragged for a new view point.
 void setAltitude(double phi)
          Sets the angle phi in spherical polar coordiantes (in radians) to rotate the camera away from the z axis before projecting.
 void setAzimuth(double theta)
          Sets the angle theta angle in spherical polar coordinates (in radians) to rotate the camera about the z axis before projecting.
 void setDecorationType(int value)
          Types of decoration displayed.
 void setIgnoreRepaint(boolean ignoreRepaint)
          Sets whether or not paint messages received from the operating system should be ignored.
 void setPreferredMinMax(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
          Set the extrema in the X, Y and Z coordinates at once
 void setProjectionMode(int mode)
          Sets the projection mode for the camera.
 void setSquareAspect(boolean square)
          Whether the panel should try to keep a square aspect.
 
Methods inherited from class org.opensourcephysics.display3d.simple3d.DrawingFrame3D
copyAction, createLightInspectorFrame, getDrawingPanel3D, getJFrame, getLoader, getMenuItem, inspectXML, loadToolsMenu, lostOwnership, pasteAction, removeMenuItem, render, replaceAction, saveXML, setDrawingPanel3D, setEnabledCopy, setEnabledPaste, setEnabledReplace, setMessage, setMessage, supportsLightInspectors
 
Methods inherited from class org.opensourcephysics.display.OSPFrame
addButton, addChildFrame, bufferStrategyShow, clearChildFrames, clearData, clearDataAndRepaint, createBufferStrategy, dispose, getChildFrames, getChooser, getConstructorThreadGroup, getMenu, invalidateImage, isAnimated, isAutoclear, isIconified, isKeepHidden, loadDisplayMenu, parseXMLMenu, parseXMLMenu, refreshGUI, removeMenu, removeMenuItem, setAnimated, setAutoclear, setDefaultCloseOperation, setFontLevel, setKeepHidden, setSize, setTitle, setVisible, show, wishesToExit
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.opensourcephysics.display3d.core.DrawingFrame3D
setVisible
 
Methods inherited from interface org.opensourcephysics.display.AppFrame
getDefaultCloseOperation
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Constructor Detail

Display3DFrame

public Display3DFrame(java.lang.String title)
Constructor Display3DFrame

Parameters:
title -
Method Detail

addInteractionListener

public void addInteractionListener(InteractionListener listener)
Adds in interaction listener to the 3D drawing panel. InteractionListeners respond to mouse events.

Parameters:
listener - InteractionListener

enableInteraction

public void enableInteraction(boolean enable)
Enables/Disables interaction with the DrawingPanel3D.

Parameters:
enable - boolean

setPreferredMinMax

public void setPreferredMinMax(double xmin,
                               double xmax,
                               double ymin,
                               double ymax,
                               double zmin,
                               double zmax)
Set the extrema in the X, Y and Z coordinates at once

Parameters:
xmin - double
xmax - double
ymin - double
ymax - double
zmin - double
zmax - double

getCamera

public Camera getCamera()
Provides the Camera object used to project the scene in 3D modes.

Returns:
Camera
See Also:
Camera

addElement

public void addElement(Element element)
Adds an Element to this DrawingPanel3D.

Parameters:
element - Element
See Also:
Element

setSquareAspect

public void setSquareAspect(boolean square)
Whether the panel should try to keep a square aspect. Default value is true.

Parameters:
square - boolean

setAllowQuickRedraw

public void setAllowQuickRedraw(boolean allow)
Whether the scene can be drawn quickly when it is dragged for a new view point.

Parameters:
allow - the desired value

setIgnoreRepaint

public void setIgnoreRepaint(boolean ignoreRepaint)
Sets whether or not paint messages received from the operating system should be ignored. This does not affect paint events generated in software by the AWT, unless they are an immediate response to an OS-level paint message.

Overrides:
setIgnoreRepaint in class java.awt.Component

setDecorationType

public void setDecorationType(int value)
Types of decoration displayed. One of the following

Parameters:
value - the desired value

setAzimuth

public void setAzimuth(double theta)
Sets the angle theta angle in spherical polar coordinates (in radians) to rotate the camera about the z axis before projecting. Default is 0.0.

Parameters:
theta - the desired angle

setAltitude

public void setAltitude(double phi)
Sets the angle phi in spherical polar coordiantes (in radians) to rotate the camera away from the z axis before projecting. Default is 0.0.

Parameters:
phi - the desired angle

setProjectionMode

public void setProjectionMode(int mode)
Sets the projection mode for the camera. Possible values are:

Parameters:
mode - the desired value