|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.opensourcephysics.display3d.simple3d.DrawingPanel3D
Title: DrawingPanel3D
Description: The simple3D implementation of a DrawingPanel3D.
Interaction: The panel has only one target, the panel itself. If enabled, the panel issues MOUSE_ENTER, MOUSE_EXIT, MOUSE_MOVED, and MOUSE_DRAGGED InteractionEvents with target=null. When the ALT key is held, the panel also issues MOUSE_PRESSED, MOUSE_DRAGGED (again), and MOUSE_RELEASED InteractionEvents. In this second case, the getInfo() method of the event returns a double[3] with the coordinates of the point selected.
Even if the panel is disabled, the panel can be panned, zoomed and (in 3D modes) rotated and the elements in it can be enabled.
The interaction capabilities are not XML serialized.
Copyright: Open Source Physics project
Nested Class Summary |
Nested classes inherited from class javax.swing.JPanel |
javax.swing.JPanel.AccessibleJPanel |
Nested classes inherited from class javax.swing.JComponent |
javax.swing.JComponent.AccessibleJComponent |
Nested classes inherited from class java.awt.Container |
java.awt.Container.AccessibleAWTContainer |
Nested classes inherited from class java.awt.Component |
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Nested classes inherited from class org.opensourcephysics.display3d.core.DrawingPanel3D |
DrawingPanel3D.Loader |
Field Summary | |
protected TextPanel |
blMessageBox
|
protected TextPanel |
brMessageBox
|
protected org.opensourcephysics.display3d.simple3d.DrawingPanel3D.GlassPanel |
glassPanel
|
protected OSPLayout |
glassPanelLayout
|
protected TextPanel |
tlMessageBox
|
protected TextPanel |
trMessageBox
|
protected java.awt.Rectangle |
viewRect
|
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 org.opensourcephysics.display3d.core.DrawingPanel3D |
BOTTOM_LEFT, BOTTOM_RIGHT, TARGET_PANEL, TOP_LEFT, TOP_RIGHT |
Fields inherited from interface java.awt.print.Printable |
NO_SUCH_PAGE, PAGE_EXISTS |
Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
DrawingPanel3D()
|
Method Summary | |
void |
actionPerformed(java.awt.event.ActionEvent evt)
Performs an action for the update timer by rendering a new background image |
void |
addElement(Element element)
Adds an Element to this DrawingPanel3D. |
void |
addInteractionListener(org.opensourcephysics.display3d.core.interaction.InteractionListener listener)
|
Camera |
getCamera()
Provides the Camera object used to project the scene in 3D modes. |
java.awt.Component |
getComponent()
Getting the pointer to the real JPanel in it |
java.util.ArrayList |
getElements()
Gets the (cloned) list of Elements. |
org.opensourcephysics.display3d.core.interaction.InteractionTarget |
getInteractionTarget(int target)
|
static XML.ObjectLoader |
getLoader()
Returns an XML.ObjectLoader to save and load object data. |
double |
getPreferredMaxX()
Gets the preferred maximum in the X coordinate |
double |
getPreferredMaxY()
Gets the preferred maximum in the Y coordinate |
double |
getPreferredMaxZ()
Gets the preferred maximum in the Z coordinate |
double |
getPreferredMinX()
Gets the preferred minimum in the X coordinate |
double |
getPreferredMinY()
Gets the preferred minimum in the Y coordinate |
double |
getPreferredMinZ()
Gets the preferred minimum in the Z coordinate |
VisualizationHints |
getVisualizationHints()
Provides the list of visualization hints that the panel uses to display the 3D scene |
boolean |
isSquareAspect()
Whether the panel tries to keep a square aspect. |
void |
paintComponent(java.awt.Graphics g)
Paints the component by copying the offscreen image into the graphics context. |
int |
print(java.awt.Graphics g,
java.awt.print.PageFormat pageFormat,
int pageIndex)
|
void |
removeAllElements()
Removes all Elements from this DrawingPanel3D |
void |
removeElement(Element element)
Removes an Element from this DrawingPanel3D |
void |
removeInteractionListener(org.opensourcephysics.display3d.core.interaction.InteractionListener listener)
|
java.awt.image.BufferedImage |
render()
Renders a representation of the object onscreen. |
java.awt.Image |
render(java.awt.Image image)
Renders a representation of the object onto an image. |
void |
setIgnoreRepaint(boolean ignoreRepaint)
|
void |
setMessage(java.lang.String msg)
Shows a message in a yellow text box in the lower right hand corner. |
void |
setMessage(java.lang.String msg,
int location)
Shows a message in a yellow text box. |
void |
setPreferredMinMax(double minX,
double maxX,
double minY,
double maxY,
double minZ,
double maxZ)
Sets the preferred extrema for the panel. |
void |
setSquareAspect(boolean square)
Whether the panel should try to keep a square aspect. |
void |
zoomToFit()
Sets the preferred min and max in each dimension so that all elements currently in the panel are visible. |
Methods inherited from class javax.swing.JPanel |
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
Methods inherited from class javax.swing.JComponent |
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, 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 |
Methods inherited from interface org.opensourcephysics.display3d.core.DrawingPanel3D |
repaint |
Field Detail |
protected TextPanel trMessageBox
protected TextPanel tlMessageBox
protected TextPanel brMessageBox
protected TextPanel blMessageBox
protected org.opensourcephysics.display3d.simple3d.DrawingPanel3D.GlassPanel glassPanel
protected OSPLayout glassPanelLayout
protected java.awt.Rectangle viewRect
Constructor Detail |
public DrawingPanel3D()
Method Detail |
public void actionPerformed(java.awt.event.ActionEvent evt)
actionPerformed
in interface java.awt.event.ActionListener
evt
- public void setIgnoreRepaint(boolean ignoreRepaint)
public void paintComponent(java.awt.Graphics g)
g
- Graphicspublic java.awt.Image render(java.awt.Image image)
Renderable
render
in interface Renderable
image
-
public java.awt.image.BufferedImage render()
Renderable
render
in interface Renderable
public java.awt.Component getComponent()
DrawingPanel3D
getComponent
in interface DrawingPanel3D
public void setPreferredMinMax(double minX, double maxX, double minY, double maxY, double minZ, double maxZ)
DrawingPanel3D
setPreferredMinMax
in interface DrawingPanel3D
minX
- doublemaxX
- doubleminY
- doublemaxY
- doubleminZ
- doublemaxZ
- doubleCamera
public final double getPreferredMinX()
DrawingPanel3D
getPreferredMinX
in interface DrawingPanel3D
public final double getPreferredMaxX()
DrawingPanel3D
getPreferredMaxX
in interface DrawingPanel3D
public final double getPreferredMinY()
DrawingPanel3D
getPreferredMinY
in interface DrawingPanel3D
public final double getPreferredMaxY()
DrawingPanel3D
getPreferredMaxY
in interface DrawingPanel3D
public final double getPreferredMinZ()
DrawingPanel3D
getPreferredMinZ
in interface DrawingPanel3D
public final double getPreferredMaxZ()
DrawingPanel3D
getPreferredMaxZ
in interface DrawingPanel3D
public void zoomToFit()
DrawingPanel3D
zoomToFit
in interface DrawingPanel3D
public void setSquareAspect(boolean square)
DrawingPanel3D
setSquareAspect
in interface DrawingPanel3D
square
- booleanpublic boolean isSquareAspect()
DrawingPanel3D
isSquareAspect
in interface DrawingPanel3D
public VisualizationHints getVisualizationHints()
DrawingPanel3D
getVisualizationHints
in interface DrawingPanel3D
VisualizationHints
public Camera getCamera()
DrawingPanel3D
getCamera
in interface DrawingPanel3D
Camera
public void addElement(Element element)
DrawingPanel3D
addElement
in interface DrawingPanel3D
element
- ElementElement
public void removeElement(Element element)
DrawingPanel3D
removeElement
in interface DrawingPanel3D
element
- ElementElement
public void removeAllElements()
DrawingPanel3D
removeAllElements
in interface DrawingPanel3D
Element
public java.util.ArrayList getElements()
DrawingPanel3D
getElements
in interface DrawingPanel3D
public void setMessage(java.lang.String msg)
msg
- public void setMessage(java.lang.String msg, int location)
msg
- location
- public org.opensourcephysics.display3d.core.interaction.InteractionTarget getInteractionTarget(int target)
getInteractionTarget
in interface org.opensourcephysics.display3d.core.interaction.InteractionSource
public void addInteractionListener(org.opensourcephysics.display3d.core.interaction.InteractionListener listener)
addInteractionListener
in interface org.opensourcephysics.display3d.core.interaction.InteractionSource
public void removeInteractionListener(org.opensourcephysics.display3d.core.interaction.InteractionListener listener)
removeInteractionListener
in interface org.opensourcephysics.display3d.core.interaction.InteractionSource
public int print(java.awt.Graphics g, java.awt.print.PageFormat pageFormat, int pageIndex) throws java.awt.print.PrinterException
print
in interface java.awt.print.Printable
java.awt.print.PrinterException
public static XML.ObjectLoader getLoader()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |