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.DrawingFrameLoaderNested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrameNested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested 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, replyFields inherited from class org.opensourcephysics.display.OSPFrame
action, animated, autoclear, buttonPanel, childFrames, constructorThreadGroup, customButtons, keepHidden, myFontLevel, strategyFields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabledFields 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_CURSORFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields 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 voidAdds Views menu items on the menu bar.voidSets the scalar field to zero.voidClears drawable objects added by the user from this frame.voidConverts to a contour plot.voidvoidvoidvoidConverts to a SurfacePlot plot.doubleGets 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.doublegetFloor()Gets the minimum z value of the plot.intgetNx()Gets the number of x entries.intgetNy()Gets the number of y entries.doubleindexToX(int i) Gets the x coordinate for the given index.doubleindexToY(int i) Gets the y coordinate for the given index.booleanGets the autoscale flag for z.booleanTrue if the data grid's boundaries are shown.voidresizeGrid(int nx, int ny) Resizes the number of columns and rows.voidsetAll(double[] vals) Sets all the scalar field values using the given array.voidsetAll(double[][] vals) Sets the scalar field's values.voidsetAll(double[][] vals, double xmin, double xmax, double ymin, double ymax) Sets the scalar field's values and scale..voidsetBuffered(boolean b) Sets the buffered image option.voidsetExpandedZ(boolean expanded, double expansionFactor) Expands the z scale so as to enhance values close to zero.voidsetPaletteType(int type) Sets the color palette that will be used to color the scalar field.voidsetPlotType(String type) Sets the type of plot type so that it cannot be changed from the menu.voidsetRow(int row, double[] vals) Sets the data in the given row to new values.voidsetShowGrid(boolean show) Outlines the data grid's boundaries.voidsetZRange(boolean isAutoscale, double floor, double ceil) Sets the autoscale flag and the floor and ceiling values for the colors.voidshowDataTable(boolean show) Shows or hides the data table.intxToIndex(double x) Gets the index that is closest to the given x valueintyToIndex(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, setYLabelMethods 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, wishesToExitMethods 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, updateMethods 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, setUndecoratedMethods 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, toFrontMethods 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, validateTreeMethods 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, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.opensourcephysics.display.AppFrame
getDefaultCloseOperationMethods 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:
addMenuItemsin classDrawingFrame
-
clearDrawables
public void clearDrawables()Clears drawable objects added by the user from this frame.- Overrides:
clearDrawablesin classDrawingFrame
-
getDrawables
Gets Drawable objects added by the user to this frame.- Overrides:
getDrawablesin 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:
getDrawablesin 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
-