edu.hws.jcm.draw
Class Graph1D

java.lang.Object
  |
  +--edu.hws.jcm.draw.Drawable
        |
        +--edu.hws.jcm.draw.Graph1D
All Implemented Interfaces:
Computable, java.io.Serializable

public class Graph1D
extends Drawable
implements Computable

A Graph1D represents the graph of a function of one variable, to be displayed in a given CoordinateRect. A Graph1D is a Computable. The data for the graph is recomputed when its compute() method is called. It will also be recomputed, before it is drawn, if the coordinate rect has changed in some way.

See Also:
Serialized Form

Fields inherited from class edu.hws.jcm.draw.Drawable
canvas, coords
 
Constructor Summary
Graph1D()
          Create a Graph1D with no function to graph.
Graph1D(Function func)
          Create a graph of the specified function.
 
Method Summary
 void compute()
          Recompute data for the graph and make sure that the area of the display canvas that shows the graph is redrawn.
 void draw(java.awt.Graphics g, boolean coordsChanged)
          Draw the graph (possibly recomputing the data if the CoordinateRect has changed).
 java.awt.Color getColor()
          Get the color that is used to draw the graph.
 Function getFunction()
          Get the (possibly null) function whose graph is drawn.
 void setColor(java.awt.Color c)
          Set the color to be used for drawing the graph.
 void setFunction(Function f)
          Set the function to be graphed.
 
Methods inherited from class edu.hws.jcm.draw.Drawable
getVisible, needsRedraw, setOwnerData, setVisible
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Graph1D

public Graph1D()
Create a Graph1D with no function to graph. One can be set later with setFunction();

Graph1D

public Graph1D(Function func)
Create a graph of the specified function.
Parameters:
func - The function to be graphed. If func is null, nothing is drawn. If func is non-null, it must be a function of one variable.
Method Detail

setColor

public void setColor(java.awt.Color c)
Set the color to be used for drawing the graph. The default color is magenta.

getColor

public java.awt.Color getColor()
Get the color that is used to draw the graph.

setFunction

public void setFunction(Function f)
Set the function to be graphed. If it is null, nothing is drawn. If it is non-null, it must be a function of one variable, or an error will occur.

getFunction

public Function getFunction()
Get the (possibly null) function whose graph is drawn.

compute

public void compute()
Recompute data for the graph and make sure that the area of the display canvas that shows the graph is redrawn. This method is ordinarily called by a Controller.
Specified by:
compute in interface Computable

draw

public void draw(java.awt.Graphics g,
                 boolean coordsChanged)
Draw the graph (possibly recomputing the data if the CoordinateRect has changed). This is not usually called directly.
Overrides:
draw in class Drawable
Following copied from class: edu.hws.jcm.draw.Drawable
Parameters:
g - The graphics context in which the Drawble is to be drawn. (The drawing can change the color in g, but should not permanently change font, painting mode, etc. Thus, every drawable is responsible for setting the color it wants to use.)
coordsChanged - Indicates whether the CoordinateRect has changed.