Package org.opensourcephysics.frames
Class Scalar2DFrame
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.opensourcephysics.display.OSPFrame
org.opensourcephysics.display.DrawingFrame
org.opensourcephysics.frames.Scalar2DFrame
- All Implemented Interfaces:
ClipboardOwner
,ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
,AppFrame
,Hidable
A DrawingFrame that displays 2D plots of scalar fields.
- Version:
- 1.0
- Author:
- W. Christian
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opensourcephysics.display.DrawingFrame
DrawingFrame.DrawingFrameLoader
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Fields inherited from class org.opensourcephysics.display.DrawingFrame
copyItem, customInspector, drawingPanel, editMenu, fileMenu, MENU_SHORTCUT_KEY_MASK, pasteItem, replaceItem, reply
Fields inherited from class org.opensourcephysics.display.OSPFrame
action, animated, autoclear, buttonPanel, childFrames, constructorThreadGroup, customButtons, keepHidden, myFontLevel, strategy
Fields inherited from class javax.swing.JFrame
accessibleContext, 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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
Constructor Summary
ConstructorsConstructorDescriptionScalar2DFrame
(String frameTitle) Constructs a Scalar2DFrame with the given frame title but without axes.Scalar2DFrame
(String xlabel, String ylabel, String frameTitle) Constructs a Scalar2DFrame with the given axes labels and frame title. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Adds Views menu items on the menu bar.void
Sets the scalar field to zero.void
Clears drawable objects added by the user from this frame.void
Converts to a contour plot.void
void
void
void
Converts to a SurfacePlot plot.double
Gets the maximum z value of the plot.Gets Drawable objects added by the user to this frame.getDrawables
(Class<T> c) Gets Drawable objects added by the user of an assignable type.double
getFloor()
Gets the minimum z value of the plot.int
getNx()
Gets the number of x entries.int
getNy()
Gets the number of y entries.double
indexToX
(int i) Gets the x coordinate for the given index.double
indexToY
(int i) Gets the y coordinate for the given index.boolean
Gets the autoscale flag for z.boolean
True if the data grid's boundaries are shown.void
resizeGrid
(int nx, int ny) Resizes the number of columns and rows.void
setAll
(double[] vals) Sets all the scalar field values using the given array.void
setAll
(double[][] vals) Sets the scalar field's values.void
setAll
(double[][] vals, double xmin, double xmax, double ymin, double ymax) Sets the scalar field's values and scale..void
setBuffered
(boolean b) Sets the buffered image option.void
setExpandedZ
(boolean expanded, double expansionFactor) Expands the z scale so as to enhance values close to zero.void
setPaletteType
(int type) Sets the color palette that will be used to color the scalar field.void
setPlotType
(String type) Sets the type of plot type so that it cannot be changed from the menu.void
setRow
(int row, double[] vals) Sets the data in the given row to new values.void
setShowGrid
(boolean show) Outlines the data grid's boundaries.void
setZRange
(boolean isAutoscale, double floor, double ceil) Sets the autoscale flag and the floor and ceiling values for the colors.void
showDataTable
(boolean show) Shows or hides the data table.int
xToIndex
(double x) Gets the index that is closest to the given x valueint
yToIndex
(double y) Gets the index that is closest to the given y valueMethods inherited from class org.opensourcephysics.display.DrawingFrame
addDrawable, clearDataAndRepaint, copyAction, getAxes, getDrawablesExcept, getDrawablesNoClone, getDrawingPanel, getLoader, getObjectOfClass, inspectXML, invalidateImage, isAutoscaleX, isAutoscaleY, limitAutoscaleX, limitAutoscaleY, loadDisplayMenu, loadToolsMenu, lostOwnership, paint, pasteAction, refreshGUI, removeDrawable, removeObjectsOfClass, render, replaceAction, replaceDrawable, saveXML, setAutoscaleX, setAutoscaleY, setCartesian, setCustomInspector, setDrawingPanel, setEnabledCopy, setEnabledPaste, setEnabledReplace, setInteractiveMouseHandler, setInteriorBackground, setLogScale, setMessage, setMessage, setPixelsPerUnit, setPolar, setPreferredMinMax, setPreferredMinMaxX, setPreferredMinMaxY, setSquareAspect, setXLabel, setYLabel
Methods inherited from class org.opensourcephysics.display.OSPFrame
addButton, addChildFrame, bufferStrategyShow, clearChildFrames, createBufferStrategy, dispose, getChildFrames, getChooser, getConstructorThreadGroup, getMenu, isAnimated, isAutoclear, isIconified, isKeepHidden, parseXMLMenu, parseXMLMenu, removeMenu, removeMenuItem, setAnimated, setAutoclear, setDefaultCloseOperation, setFontLevel, setKeepHidden, setResizeAction, 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, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setUndecorated
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setType, 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, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, 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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opensourcephysics.display.AppFrame
getDefaultCloseOperation
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Constructor Details
-
Scalar2DFrame
Constructs a Scalar2DFrame with the given axes labels and frame title.- Parameters:
xlabel
- Stringylabel
- StringframeTitle
- String
-
Scalar2DFrame
Constructs a Scalar2DFrame with the given frame title but without axes.- Parameters:
frameTitle
- String
-
-
Method Details
-
indexToX
public double indexToX(int i) Gets the x coordinate for the given index.- Parameters:
i
- int- Returns:
- double the x coordiante
-
xToIndex
public int xToIndex(double x) Gets the index that is closest to the given x value- Returns:
- double the x coordiante
-
yToIndex
public int yToIndex(double y) Gets the index that is closest to the given y value- Returns:
- double the y coordiante
-
indexToY
public double indexToY(int i) Gets the y coordinate for the given index.- Parameters:
i
- int- Returns:
- double the y coordiante
-
getNx
public int getNx()Gets the number of x entries.- Returns:
- nx
-
getNy
public int getNy()Gets the number of y entries.- Returns:
- nx
-
setZRange
public void setZRange(boolean isAutoscale, double floor, double ceil) Sets the autoscale flag and the floor and ceiling values for the colors. If autoscaling is true, then the min and max values of z are span the colors. If autoscaling is false, then floor and ceiling values limit the colors. Values below min map to the first color; values above max map to the last color.- Parameters:
isAutoscale
-floor
-ceil
-
-
getCeiling
public double getCeiling()Gets the maximum z value of the plot.- Returns:
- zmax
-
getFloor
public double getFloor()Gets the minimum z value of the plot.- Returns:
- zmin
-
isAutoscaleZ
public boolean isAutoscaleZ()Gets the autoscale flag for z.- Returns:
- boolean
-
setExpandedZ
public void setExpandedZ(boolean expanded, double expansionFactor) Expands the z scale so as to enhance values close to zero.- Parameters:
expanded
- booleanexpansionFactor
- double
-
setPaletteType
public void setPaletteType(int type) Sets the color palette that will be used to color the scalar field. Palette types are defined in ColorMapper.- Parameters:
type
-
-
setBuffered
public void setBuffered(boolean b) Sets the buffered image option. Buffered panels copy the offscreen image into the panel during a repaint unless the image has been invalidated. Use the render() method to draw the image immediately.- Parameters:
b
-
-
setShowGrid
public void setShowGrid(boolean show) Outlines the data grid's boundaries.- Parameters:
showGrid
-
-
isShowGrid
public boolean isShowGrid()True if the data grid's boundaries are shown.- Returns:
- showGrid
-
addMenuItems
protected void addMenuItems()Adds Views menu items on the menu bar.- Overrides:
addMenuItems
in classDrawingFrame
-
clearDrawables
public void clearDrawables()Clears drawable objects added by the user from this frame.- Overrides:
clearDrawables
in classDrawingFrame
-
getDrawables
Gets Drawable objects added by the user to this frame.- Overrides:
getDrawables
in classDrawingFrame
- Returns:
- the list
-
getDrawables
Gets Drawable objects added by the user of an assignable type. The list contains objects that are assignable from the class or interface.- Overrides:
getDrawables
in classDrawingFrame
- Parameters:
c
- the type of Drawable object- Returns:
- the cloned list
- See Also:
-
clearData
public void clearData()Sets the scalar field to zero. -
setPlotType
Sets the type of plot type so that it cannot be changed from the menu.- Parameters:
type
- String
-
convertToContourPlot
public void convertToContourPlot()Converts to a contour plot. -
convertToInterpolatedPlot
public void convertToInterpolatedPlot() -
convertToGridPlot
public void convertToGridPlot() -
convertToGrayscalePlot
public void convertToGrayscalePlot() -
convertToSurfacePlot
public void convertToSurfacePlot()Converts to a SurfacePlot plot. -
resizeGrid
public void resizeGrid(int nx, int ny) Resizes the number of columns and rows.- Parameters:
nx
- intny
- int
-
setRow
Sets the data in the given row to new values.- Parameters:
row
- intvals
- double[] new values- Throws:
IllegalArgumentException
- if array length does not match grid size.
-
setAll
public void setAll(double[][] vals, double xmin, double xmax, double ymin, double ymax) Sets the scalar field's values and scale..- Parameters:
vals
- int[][] the new valuesxmin
- doublexmax
- doubleymin
- doubleymax
- double
-
setAll
public void setAll(double[][] vals) Sets the scalar field's values.- Parameters:
vals
- double[][] new values
-
setAll
public void setAll(double[] vals) Sets all the scalar field values using the given array. The array is assumed to contain numbers in row-major format.- Parameters:
vals
- double[] field values
-
showDataTable
public void showDataTable(boolean show) Shows or hides the data table.- Parameters:
show
- boolean
-