Class IntegralCurves

  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by javax.swing.JApplet
                      extended by net.sourceforge.webcompmath.applets.GenericGraphApplet
                          extended by net.sourceforge.webcompmath.applets.IntegralCurves
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.ItemListener, java.awt.image.ImageObserver, java.awt.MenuContainer,, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer

public class IntegralCurves
extends GenericGraphApplet

This applet displays a vector field (f1(x,y),f2(x,y)) and integral curves for that vector field (although the integral curve feature can be turned off with an applet param). The drawing of the curves is animated; they are drawn segment-by-segment. In the default setup, a curve is started when the user clicks on the canvas. A curve can also be started by entering the starting x and y coords in a pair of text input boxes and clicking a button.

See Also:
Serialized Form

Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JApplet
Nested classes/interfaces inherited from class java.applet.Applet
Nested classes/interfaces inherited from class java.awt.Panel
Nested classes/interfaces inherited from class java.awt.Container
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
Field Summary
Fields inherited from class net.sourceforge.webcompmath.applets.GenericGraphApplet
canvas, computeButton, defaultFrameSize, exampleMenuPanel, fontSize, frameTitle, functionInput, ggBGColor, ggFGColor, inputPanel, lbf, limitsPanel, mainController, mainPanel, parameterDefaults, parser, pBGColor, presentation, xVar
Fields inherited from class javax.swing.JApplet
accessibleContext, rootPane, rootPaneCheckingEnabled
Fields inherited from class java.awt.Component
Fields inherited from interface java.awt.image.ImageObserver
Constructor Summary
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
          React if user presses return in xStart or yStart, or pass evt on to GenericGraphApplet
protected  void doLoadExample(java.lang.String example)
          This method is called when the user loads an example from the example menu (if there is one).
 void extendCurves()
          Add the next segment to each integral curve.
protected  void setUpBottomPanel()
          Override this to make a panel containing controls.
protected  void setUpCanvas()
          Override this to add more stuff to the canvas.
protected  void setUpParser()
          create the "y" variable; also set up some parameter defaults.
 void startCurve(double x, double y)
          Start an integral curve at the point (x,y)
 void stop()
          stop animator when applet is stopped
Methods inherited from class net.sourceforge.webcompmath.applets.GenericGraphApplet
addCanvasBorder, destroy, doLoadFirstExample, getColorParam, getColorParam, getNumericParam, getNumericParam, getParameter, getParameter, init, itemStateChanged, makeAxes, parseTableFuncDef, setUpExampleMenu, setUpLimitsPanel, setUpMainPanel, setUpParameterDefaults, setUpTopPanel
Methods inherited from class javax.swing.JApplet
addImpl, createRootPane, getAccessibleContext, getContentPane, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isRootPaneCheckingEnabled, paramString, remove, repaint, setContentPane, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
Methods inherited from class java.applet.Applet
getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start
Methods inherited from class java.awt.Panel
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Constructor Detail


public IntegralCurves()
Method Detail


protected void setUpParser()
create the "y" variable; also set up some parameter defaults.

setUpParser in class GenericGraphApplet


protected void setUpCanvas()
Override this to add more stuff to the canvas.

setUpCanvas in class GenericGraphApplet


protected void setUpBottomPanel()
Override this to make a panel containing controls. This is complicated because it's possible to turn off a lot of the inputs with applet params.

setUpBottomPanel in class GenericGraphApplet


public void actionPerformed(java.awt.event.ActionEvent evt)
React if user presses return in xStart or yStart, or pass evt on to GenericGraphApplet

Specified by:
actionPerformed in interface java.awt.event.ActionListener
actionPerformed in class GenericGraphApplet
evt - event created when user presses return


public void startCurve(double x,
                       double y)
Start an integral curve at the point (x,y)

x - the x coordinate
y - the y coordinate


public void extendCurves()
Add the next segment to each integral curve. This function is called repeatedly by the animator.


protected void doLoadExample(java.lang.String example)
This method is called when the user loads an example from the example menu (if there is one). It overrides an empty method in GenericGraphApplet. For the IntegrapCurves applet, the example string should contain two expression that defines the vector field, separated by a semicolon. This can optionally be followed by another semicolon and a list of numbers, separated by spaces and/or commas. The first four numbers give the x- and y-limits to be used for the example. If they are not present, then -5,5,-5,5 is used. The next number, if present, specifies a value for delta t. If there are more numbers, they should come in pairs. each pair specifies a point where a curve will be started when the example is loaded. There is a 0.5 second delay between loading and starting the curves to allow time for the redrawing (although it seems to block the redrawing, at least on some platforms).

doLoadExample in class GenericGraphApplet
example - the function to graph


public void stop()
stop animator when applet is stopped

stop in class java.applet.Applet