com.frinika.contrib.boblang
Class Graph

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 com.frinika.contrib.boblang.Graph
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class Graph
extends java.awt.Frame

Graph is a simple class that provides facilities for

Several graphs can be printed in one window. The axes labels are worked out from the points themselves.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
 
Field Summary
static java.awt.Color BLACK
           
static java.awt.Color BLUE
           
static java.awt.Color CYAN
           
static java.awt.Color DARK_GRAY
           
static java.awt.Color GRAY
           
static java.awt.Color GREEN
           
static java.awt.Color LIGHT_GRAY
           
static java.awt.Color MAGENTA
           
static int MAX_TRACE_TITLE
           
static java.awt.Color ORANGE
           
static java.awt.Color PINK
           
static java.awt.Color RED
           
static java.awt.Color WHITE
           
static java.awt.Color YELLOW
           
 
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
 
Constructor Summary
Graph()
          Constructor which does not provide any labels
Graph(java.lang.String inGraphTitle, java.lang.String inXTitle, java.lang.String inYTitle)
          Preferred constructor which provides labels for graph, x and y axes.
 
Method Summary
 void add(double x, double y)
          Add a new point to the current graph.
 void add(int x, int y)
          Integer version of add (x,y)
 void clearGraph(java.lang.String inGraphTitle, java.lang.String inXTitle, java.lang.String inYTitle)
          Method which clears out a graph so that the window can be used again.
 void nextGraph()
          Start a new graph using the same axes and titles so that several graphs can be drawn on the same frame (presumably in different colours)
 void paint(java.awt.Graphics g)
          Standard paint method which draws the entire graph.
 void print(int inXOffset, int inYOffset, int printWidth, int printHeight, java.awt.Graphics g)
          Similar to paint () method, but used to print the graph to a printer.
 void setColor(java.awt.Color c)
          Set the colour of the subsequent points plotted on the graph
 void setColour(java.awt.Color c)
          setColor for English spellers!
 void setSubTitle(java.lang.String inSubTitle)
          Put a subtitle underneath the plotted graph
 void setTraceTitle(int traceNumber, java.awt.Color inColour, java.lang.String inTitle)
          Put a title for the specified trace
 void showGraph()
          Compulsory request to show the current graph(s) in a frame.
 void showGraph(boolean inExitWhenClosed)
          Alternative version of showGraph which allows the programmer to control whether the program exits when the frame is closed.
 void skipTo(double x, double y)
          Skip to a different point.
 void skipTo(int x, int y)
          Integer version of skipTo()
 
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, 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, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, 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, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, 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, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, 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 java.awt.MenuContainer
getFont, postEvent
 

Field Detail

WHITE

public static final java.awt.Color WHITE

LIGHT_GRAY

public static final java.awt.Color LIGHT_GRAY

GRAY

public static final java.awt.Color GRAY

DARK_GRAY

public static final java.awt.Color DARK_GRAY

BLACK

public static final java.awt.Color BLACK

RED

public static final java.awt.Color RED

PINK

public static final java.awt.Color PINK

ORANGE

public static final java.awt.Color ORANGE

YELLOW

public static final java.awt.Color YELLOW

GREEN

public static final java.awt.Color GREEN

MAGENTA

public static final java.awt.Color MAGENTA

CYAN

public static final java.awt.Color CYAN

BLUE

public static final java.awt.Color BLUE

MAX_TRACE_TITLE

public static final int MAX_TRACE_TITLE
See Also:
Constant Field Values
Constructor Detail

Graph

public Graph(java.lang.String inGraphTitle,
             java.lang.String inXTitle,
             java.lang.String inYTitle)
Preferred constructor which provides labels for graph, x and y axes. Use empty strings if not all labels are applicable.


Graph

public Graph()
Constructor which does not provide any labels

Method Detail

clearGraph

public void clearGraph(java.lang.String inGraphTitle,
                       java.lang.String inXTitle,
                       java.lang.String inYTitle)
Method which clears out a graph so that the window can be used again.


nextGraph

public void nextGraph()
Start a new graph using the same axes and titles so that several graphs can be drawn on the same frame (presumably in different colours)


setSubTitle

public void setSubTitle(java.lang.String inSubTitle)
Put a subtitle underneath the plotted graph


setTraceTitle

public void setTraceTitle(int traceNumber,
                          java.awt.Color inColour,
                          java.lang.String inTitle)
Put a title for the specified trace


setColor

public void setColor(java.awt.Color c)
Set the colour of the subsequent points plotted on the graph


setColour

public void setColour(java.awt.Color c)
setColor for English spellers!


add

public void add(double x,
                double y)
Add a new point to the current graph. The graph is not actually shown until showGraph () is called.


add

public void add(int x,
                int y)
Integer version of add (x,y)


skipTo

public void skipTo(double x,
                   double y)
Skip to a different point. Just place an "invisible" point in the list.


skipTo

public void skipTo(int x,
                   int y)
Integer version of skipTo()


showGraph

public void showGraph()
Compulsory request to show the current graph(s) in a frame. This version will always close the program when the user closes the frame


showGraph

public void showGraph(boolean inExitWhenClosed)
Alternative version of showGraph which allows the programmer to control whether the program exits when the frame is closed.


paint

public void paint(java.awt.Graphics g)
Standard paint method which draws the entire graph. Although marked public this method should not be called by the user program, only by the Java's windowing system.

Overrides:
paint in class java.awt.Container

print

public void print(int inXOffset,
                  int inYOffset,
                  int printWidth,
                  int printHeight,
                  java.awt.Graphics g)
Similar to paint () method, but used to print the graph to a printer. The graphics object must have been previously set up by creating a PrintJob object. The x and y offsets, width and height potentially allow multiple graphs to be plotted on the same piece of paper