edu.swri.swiftvis.plot
Interface PlotObject

All Superinterfaces:
java.io.Serializable, javax.swing.tree.TreeNode
All Known Implementing Classes:
PlotArea2D, PlotSpec, PlotText

public interface PlotObject
extends javax.swing.tree.TreeNode, java.io.Serializable

This is the base interface for things that are placed on plots are graphical entities. !!! I will need to add some methods to this so that it can handle things like user mouse clicks, but I'm going to leave that out right now. Part of the difficulty is that the mouse clicks could be for interactive tools like what I use for doing my data analysis, or they could be for drawing things into the plots or changing parameters like in Excel. I still need to think about exactly what the objective of this tool is. I think the main objective is for data analysis and visualization to allow users to quickly and easily find trends in their data or see things in new ways. Making high quality plots for printing is probably less important.


Method Summary
 PlotObject copy(PlotSpec p)
           
 void draw(java.awt.Graphics2D g, java.awt.geom.Rectangle2D bounds)
          Draw this object on the provided graphics.
 void fireRedraw()
          Sends a message up the tree to redraw the screen.
 void forceRedraw()
          Send a message down the tree that current draw buffers are invalid.
 javax.swing.JComponent getPropertiesPanel()
          Returns a panel that can be used to set the properties of this plot object.
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void mouseClicked(java.awt.event.MouseEvent e, double mx, double my)
           
 void mouseDragged(java.awt.event.MouseEvent e, double mx, double my)
           
 void mouseMoved(java.awt.event.MouseEvent e, double mx, double my)
           
 void mousePressed(java.awt.event.MouseEvent e, double mx, double my)
           
 void mouseReleased(java.awt.event.MouseEvent e, double mx, double my)
           
 void print(java.awt.Graphics2D g, java.awt.geom.Rectangle2D bounds)
          Draw the object without buffering so it is a vector image.
 void relink(java.util.Hashtable<GraphElement,GraphElement> linkHash)
           
 void setSelected(boolean val)
           
 void treeAltered(PlotObject po)
           
 
Methods inherited from interface javax.swing.tree.TreeNode
children, getAllowsChildren, getChildAt, getChildCount, getIndex, getParent, isLeaf
 

Method Detail

draw

void draw(java.awt.Graphics2D g,
          java.awt.geom.Rectangle2D bounds)
Draw this object on the provided graphics.


print

void print(java.awt.Graphics2D g,
           java.awt.geom.Rectangle2D bounds)
Draw the object without buffering so it is a vector image.


getPropertiesPanel

javax.swing.JComponent getPropertiesPanel()
Returns a panel that can be used to set the properties of this plot object.


treeAltered

void treeAltered(PlotObject po)

setSelected

void setSelected(boolean val)

fireRedraw

void fireRedraw()
Sends a message up the tree to redraw the screen.


forceRedraw

void forceRedraw()
Send a message down the tree that current draw buffers are invalid. This generally happens because data has changed.


copy

PlotObject copy(PlotSpec p)

relink

void relink(java.util.Hashtable<GraphElement,GraphElement> linkHash)

mousePressed

void mousePressed(java.awt.event.MouseEvent e,
                  double mx,
                  double my)

mouseReleased

void mouseReleased(java.awt.event.MouseEvent e,
                   double mx,
                   double my)

mouseClicked

void mouseClicked(java.awt.event.MouseEvent e,
                  double mx,
                  double my)

mouseMoved

void mouseMoved(java.awt.event.MouseEvent e,
                double mx,
                double my)

mouseDragged

void mouseDragged(java.awt.event.MouseEvent e,
                  double mx,
                  double my)

keyPressed

void keyPressed(java.awt.event.KeyEvent e)

keyReleased

void keyReleased(java.awt.event.KeyEvent e)

keyTyped

void keyTyped(java.awt.event.KeyEvent e)