|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPanel org.opensourcephysics.display3d.simple3d.DrawingPanel3D
public class 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/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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Nested classes/interfaces inherited from interface 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 VideoTool |
vidCap
The video capture tool for this panel. |
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 |
---|
AMBIENT_LIGHT, BACKGROUND, BOTTOM_LEFT, BOTTOM_RIGHT, DIRECTIONAL_LIGHT, MODE_XYZ, MODE_XZY, MODE_YXZ, MODE_YZX, MODE_ZXY, MODE_ZYX, POINT_LIGHT, SPOT_LIGHT, 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()
Constructor 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(InteractionListener listener)
Adds the specified interaction listener to receive interaction events to any of its targets from this source. |
int |
getAxesMode()
Returns the axes mode |
java.lang.String |
getBackgroundImage()
Returns the background image |
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.List<Element> |
getElements()
Gets the (cloned) list of Elements. |
InteractionTarget |
getInteractionTarget(int target)
Gives access to one of the targets of this source. |
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 |
double |
getScaleFactorX()
Gets the scale factor in the X axis |
double |
getScaleFactorY()
Gets the scale factor in the Y axis |
double |
getScaleFactorZ()
Gets the scale factor in the Z axis |
VideoTool |
getVideoTool()
Gets the video capture tool. |
VisualizationHints |
getVisualizationHints()
Provides the list of visualization hints that the panel uses to display the 3D scene |
void |
invalidate()
Invalidates this component. |
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(InteractionListener listener)
Removes the specified interaction listener |
java.awt.image.BufferedImage |
render()
Renders a representation of the object onscreen. |
java.awt.image.BufferedImage |
render(java.awt.image.BufferedImage image)
Renders a representation of the object onto an image. |
void |
setAxesMode(int mode)
Sets the axes mode |
void |
setBackgroundImage(java.lang.String _imageFile)
Sets the background image |
void |
setIgnoreRepaint(boolean ignoreRepaint)
|
void |
setLightEnabled(boolean _state,
int nlight)
Enable disable a light |
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 |
setScaleFactor(double factorX,
double factorY,
double factorZ)
Sets the scale factor of the scene in X,Y,Z axis. |
void |
setSquareAspect(boolean square)
Whether the panel should try to keep a square aspect. |
void |
setVideoTool(VideoTool videoCap)
Sets the video capture tool. |
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, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, 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, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, 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, 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, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, 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
protected VideoTool vidCap
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)
setIgnoreRepaint
in class java.awt.Component
public void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
g
- Graphicspublic void invalidate()
invalidate
in class java.awt.Container
Container.validate()
,
Container.doLayout()
,
LayoutManager
public java.awt.image.BufferedImage render(java.awt.image.BufferedImage image)
Renderable
render
in interface Renderable
render
in interface DrawingPanel3D
image
- Image
public java.awt.image.BufferedImage render()
Renderable
render
in interface Renderable
render
in interface DrawingPanel3D
public java.awt.Component getComponent()
DrawingPanel3D
getComponent
in interface DrawingPanel3D
public void setBackgroundImage(java.lang.String _imageFile)
DrawingPanel3D
setBackgroundImage
in interface DrawingPanel3D
public java.lang.String getBackgroundImage()
DrawingPanel3D
getBackgroundImage
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 VideoTool getVideoTool()
getVideoTool
in interface DrawingPanel3D
public void setVideoTool(VideoTool videoCap)
setVideoTool
in interface DrawingPanel3D
videoCap
- the video capture toolpublic 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.List<Element> getElements()
DrawingPanel3D
getElements
in interface DrawingPanel3D
public void setScaleFactor(double factorX, double factorY, double factorZ)
DrawingPanel3D
setScaleFactor
in interface DrawingPanel3D
factorX
- doublefactorY
- doublefactorZ
- doublepublic double getScaleFactorX()
DrawingPanel3D
getScaleFactorX
in interface DrawingPanel3D
public double getScaleFactorY()
DrawingPanel3D
getScaleFactorY
in interface DrawingPanel3D
public double getScaleFactorZ()
DrawingPanel3D
getScaleFactorZ
in interface DrawingPanel3D
public void setAxesMode(int mode)
DrawingPanel3D
setAxesMode
in interface DrawingPanel3D
mode
- intpublic int getAxesMode()
DrawingPanel3D
getAxesMode
in interface DrawingPanel3D
public void setMessage(java.lang.String msg)
msg
- public void setMessage(java.lang.String msg, int location)
msg
- location
- public InteractionTarget getInteractionTarget(int target)
InteractionSource
getInteractionTarget
in interface InteractionSource
target
- An integer number that identifies the target in the source.
public void addInteractionListener(InteractionListener listener)
InteractionSource
addInteractionListener
in interface InteractionSource
listener
- An object that implements the InteractionListener interfaceInteractionListener
public void removeInteractionListener(InteractionListener listener)
InteractionSource
removeInteractionListener
in interface InteractionSource
InteractionListener
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 void setLightEnabled(boolean _state, int nlight)
DrawingPanel3D
setLightEnabled
in interface DrawingPanel3D
public static XML.ObjectLoader getLoader()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |