org.opensourcephysics.frames
Class Complex2DFrame

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.display.DrawingFrame
                              extended by org.opensourcephysics.frames.Complex2DFrame
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

public class Complex2DFrame
extends DrawingFrame

A DrawingFrame that displays 2D plots of complex scalar fields.

Version:
1.0
Author:
W. Christian
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior
 
Field Summary
 
Fields inherited from class org.opensourcephysics.display.OSPFrame
constructorThreadGroup
 
Fields inherited from class javax.swing.JFrame
EXIT_ON_CLOSE
 
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
Complex2DFrame(java.lang.String frameTitle)
          Constructs a Complex2DFrame with the given frame title but without axes.
Complex2DFrame(java.lang.String xlabel, java.lang.String ylabel, java.lang.String frameTitle)
          Constructs a Complex2DFrame with the given axes labels and frame title.
 
Method Summary
 void clearData()
          Clears data by setting the scalar field to zero.
 void clearDrawables()
          Removes drawable objects added by the user from this frame.
 void convertToGridPlot()
           
 void convertToInterpolatedPlot()
           
 void convertToSurfacePlot()
          Converts to a SurfacePlot plot.
 java.util.ArrayList<Drawable> getDrawables()
          Gets Drawable objects added by the user to this frame.
<T extends Drawable>
java.util.ArrayList<T>
getDrawables(java.lang.Class<T> c)
          Gets Drawable objects added by the user of an assignable type.
 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 isShowGrid()
          True if the data grid's boundaries are shown.
 void resizeGrid(int nx, int ny)
          Resizes the grid used to store the field using the panel's preferred min/max values.
 void setAll(double[] vals)
          Sets the comples field's data using the given array.
 void setAll(double[][][] vals)
          Sets the complex field's values.
 void setAll(double[][][] vals, double xmin, double xmax, double ymin, double ymax)
          Sets the complex field's values and scale..
 void setAll(double[] vals, int nx, double xmin, double xmax, double ymin, double ymax)
          Sets the comples field's data and scale.
 void setAutoscaleZ(boolean isAutoscale, double floor, double ceil)
          Sets the autoscale flag and the floor and ceiling values for the intensity.
 void setBuffered(boolean b)
          Sets the buffered image option.
 void setRow(int row, double[][] vals)
           
 void setShowGrid(boolean show)
          Outlines the data grid's boundaries.
 void showDataTable(boolean show)
          Shows or hides the data table.
 int xToIndex(double x)
          Gets the index that is closest to the given x value
 int yToIndex(double y)
          Gets the index that is closest to the given y value
 
Methods inherited from class org.opensourcephysics.display.DrawingFrame
addDrawable, clearDataAndRepaint, getAxes, getDrawingPanel, getLoader, getObjectOfClass, inspectXML, invalidateImage, isAutoscaleX, isAutoscaleY, limitAutoscaleX, limitAutoscaleY, lostOwnership, paint, 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, setKeepHidden, setSize, setTitle, setVisible, show, wishesToExit
 
Methods inherited from class javax.swing.JFrame
getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, remove, repaint, setContentPane, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, 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, 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, paintComponents, preferredSize, print, printComponents, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, 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 Detail

Complex2DFrame

public Complex2DFrame(java.lang.String xlabel,
                      java.lang.String ylabel,
                      java.lang.String frameTitle)
Constructs a Complex2DFrame with the given axes labels and frame title.

Parameters:
xlabel - String
ylabel - String
frameTitle - String

Complex2DFrame

public Complex2DFrame(java.lang.String frameTitle)
Constructs a Complex2DFrame with the given frame title but without axes.

Parameters:
frameTitle - String
Method Detail

setAutoscaleZ

public void setAutoscaleZ(boolean isAutoscale,
                          double floor,
                          double ceil)
Sets the autoscale flag and the floor and ceiling values for the intensity.

Parameters:
isAutoscale -
floor -
ceil -

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

getDrawables

public java.util.ArrayList<Drawable> getDrawables()
Gets Drawable objects added by the user to this frame.

Overrides:
getDrawables in class DrawingFrame
Returns:
the list

getDrawables

public <T extends Drawable> java.util.ArrayList<T> getDrawables(java.lang.Class<T> c)
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 class DrawingFrame
Parameters:
c - the type of Drawable object
Returns:
the cloned list
See Also:
DrawingFrame.getObjectOfClass(Class c)

clearDrawables

public void clearDrawables()
Removes drawable objects added by the user from this frame.

Overrides:
clearDrawables in class DrawingFrame

clearData

public void clearData()
Clears data by setting the scalar field to zero.

Overrides:
clearData in class OSPFrame

convertToInterpolatedPlot

public void convertToInterpolatedPlot()

convertToGridPlot

public void convertToGridPlot()

convertToSurfacePlot

public void convertToSurfacePlot()
Converts to a SurfacePlot plot.


resizeGrid

public void resizeGrid(int nx,
                       int ny)
Resizes the grid used to store the field using the panel's preferred min/max values.

Parameters:
nx - int
ny - int

setRow

public void setRow(int row,
                   double[][] vals)
            throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

setAll

public void setAll(double[][][] vals,
                   double xmin,
                   double xmax,
                   double ymin,
                   double ymax)
Sets the complex field's values and scale..

Parameters:
vals - int[][][] the new values
xmin - double
xmax - double
ymin - double
ymax - double

setAll

public void setAll(double[][][] vals)
Sets the complex field's values. vals[0][][] is assumed to contain the real components of the field. vals[1][][] is assumed to contain the imaginary components of the field.

Parameters:
vals - double[][][] complex field values

setAll

public void setAll(double[] vals,
                   int nx,
                   double xmin,
                   double xmax,
                   double ymin,
                   double ymax)
Sets the comples field's data and scale. The array is assumed to contain complex numbers in row-major format.

Parameters:
vals - int[][][] the new values
nx -
xmin - double
xmax - double
ymin - double
ymax - double

setAll

public void setAll(double[] vals)
Sets the comples field's data using the given array. The array is assumed to contain complex numbers in row-major format.

Parameters:
vals - double[] complex field values

showDataTable

public void showDataTable(boolean show)
Shows or hides the data table.

Parameters:
show - boolean

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