edu.swri.swiftvis.plot.styles
Class VectorFieldStyle

java.lang.Object
  extended by edu.swri.swiftvis.plot.styles.VectorFieldStyle
All Implemented Interfaces:
DataPlotStyle, FillUser, java.io.Serializable

public class VectorFieldStyle
extends java.lang.Object
implements DataPlotStyle, FillUser

This plot style can be used to plot a vector field. The user gets to specify formulas for the x and y start of the vectors as well as the length of the vectors in x and y.

Author:
Mark Lewis
See Also:
Serialized Form

Field Summary
private  double[][] bounds
           
private  DataFormula dxFormula
           
private  DataFormula dyFormula
           
private  FillOptions fillOptions
           
private  EditableString name
           
private  PlotArea2D plotArea
           
private  javax.swing.JPanel propPanel
           
private static long serialVersionUID
           
private  EditableDouble symbolScaleFactor
           
private  DataFormula xFormula
           
private  DataFormula yFormula
           
 
Constructor Summary
  VectorFieldStyle(PlotArea2D p)
           
private VectorFieldStyle(VectorFieldStyle c, PlotArea2D pa)
           
 
Method Summary
private  void applyChanges()
           
 void applyFill(FillOptions fo)
           
 VectorFieldStyle copy(PlotArea2D pa)
           
 void drawToGraphics(java.awt.Graphics2D g, double xSize, double ySize)
          This draws the plot into the specified Graphics object.
 java.awt.geom.Rectangle2D getBoundingBox()
           
 double[][] getBounds()
          Returns the min and max values for each dimension that this style supports.
 PlotLegend getLegendInformation()
          This method should return the legend information for this plot style.
 javax.swing.JComponent getPropertiesPanel()
           
static java.lang.String getTypeDescription()
           
 void redoBounds()
           
private  void setDxBounds()
           
private  void setDyBounds()
           
private  void setXBounds()
           
private  void setYBounds()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

name

private EditableString name

plotArea

private PlotArea2D plotArea

xFormula

private DataFormula xFormula

yFormula

private DataFormula yFormula

dxFormula

private DataFormula dxFormula

dyFormula

private DataFormula dyFormula

bounds

private double[][] bounds

fillOptions

private FillOptions fillOptions

symbolScaleFactor

private EditableDouble symbolScaleFactor

propPanel

private transient javax.swing.JPanel propPanel

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values
Constructor Detail

VectorFieldStyle

public VectorFieldStyle(PlotArea2D p)

VectorFieldStyle

private VectorFieldStyle(VectorFieldStyle c,
                         PlotArea2D pa)
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getTypeDescription

public static java.lang.String getTypeDescription()

getBounds

public double[][] getBounds()
Description copied from interface: DataPlotStyle
Returns the min and max values for each dimension that this style supports. The first index tells which dimension we are looking at and the second index is 0 for min and 1 for max.

Specified by:
getBounds in interface DataPlotStyle
Returns:
The bounds for this data.

redoBounds

public void redoBounds()
Specified by:
redoBounds in interface DataPlotStyle

getLegendInformation

public PlotLegend getLegendInformation()
Description copied from interface: DataPlotStyle
This method should return the legend information for this plot style. If there is no legend information for this type of plot, then it should return null.

Specified by:
getLegendInformation in interface DataPlotStyle
Returns:
The legend information or null if none.

getPropertiesPanel

public javax.swing.JComponent getPropertiesPanel()
Specified by:
getPropertiesPanel in interface DataPlotStyle

drawToGraphics

public void drawToGraphics(java.awt.Graphics2D g,
                           double xSize,
                           double ySize)
Description copied from interface: DataPlotStyle
This draws the plot into the specified Graphics object. It assumes that the transform and clipping for that Graphics object have all been set up so that the markers can be drawn at their normal locations. The xSize and ySize are passed in so that it can figure out how large to make the markers if needed.

Specified by:
drawToGraphics in interface DataPlotStyle

getBoundingBox

public java.awt.geom.Rectangle2D getBoundingBox()
Specified by:
getBoundingBox in interface FillUser

copy

public VectorFieldStyle copy(PlotArea2D pa)
Specified by:
copy in interface DataPlotStyle

applyFill

public void applyFill(FillOptions fo)
Specified by:
applyFill in interface FillUser

applyChanges

private void applyChanges()

setXBounds

private void setXBounds()

setYBounds

private void setYBounds()

setDxBounds

private void setDxBounds()

setDyBounds

private void setDyBounds()