Class Graph1D

All Implemented Interfaces:
Computable, 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:
  • Constructor Details

    • 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 Details

    • setColor

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

      public 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(Graphics g, boolean coordsChanged)
      Draw the graph (possibly recomputing the data if the CoordinateRect has changed). This is not usually called directly.
      Specified by:
      draw in class 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.