ucar.unidata.ui.symbol
Class ShapeSymbol

java.lang.Object
  extended by ucar.unidata.ui.drawing.Glyph
      extended by ucar.unidata.ui.drawing.RectangleGlyph
          extended by ucar.unidata.ui.symbol.MetSymbol
              extended by ucar.unidata.ui.symbol.ShapeSymbol
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
MappedShapeSymbol

public class ShapeSymbol
extends MetSymbol

Shape symbol.

Version:
$Revision: 1.25 $
Author:
Metapps development team

Field Summary
static String ATTR_POINTS
          Xml attr name for points
static String ATTR_SHAPE
          Xml attr name for shape
static String ATTR_SHAPETYPE
          Xml attr name for shape type (triangle, quad, line)
static String TYPE_LINE
          Shape type to create when using points - visadlinearray
static String TYPE_QUAD
          Shape type to create when using points - visadquadarray
static String TYPE_TRIANGLE
          Shape type to create when using points - visadtrianglearray
 
Fields inherited from class ucar.unidata.ui.symbol.MetSymbol
ATTR_PARAMID, canvas, propertiesDialog
 
Fields inherited from class ucar.unidata.ui.drawing.RectangleGlyph
ATTR_RECTTYPE, bounds, CIRCLE, FCIRCLE, FRECTANGLE, FROUNDRECT, RECTANGLE, ROUNDRECT, TYPE_CIRCLE, TYPE_RECT, TYPE_RRECT
 
Fields inherited from class ucar.unidata.ui.drawing.Glyph
ATTR_BGCOLOR, ATTR_CHILDREN, ATTR_CLASS, ATTR_COLOR, ATTR_FILL, ATTR_HEIGHT, ATTR_IMAGE, ATTR_LINEWIDTH, ATTR_PARENT, ATTR_PTS, ATTR_STRETCHY, ATTR_TEXT, ATTR_TYPE, ATTR_WIDTH, baseline, H_SEL_WIDTH, highlightColor, idToGlyph, MIN_DISTANCE_TO_STRETCH, PT_CENTER, PT_H_LEFT, PT_H_MIDDLE, PT_H_RIGHT, PT_LL, PT_LM, PT_LR, PT_ML, PT_MM, PT_MR, PT_P1, PT_P2, PT_PREFIX, PT_UL, PT_UM, PT_UR, PT_V_LOWER, PT_V_MIDDLE, PT_V_UPPER, RECTPOINTNAMES, RECTPOINTS, SEL_WIDTH, TAG_GLYPH, underline, url
 
Constructor Summary
ShapeSymbol()
          Default constructor.
ShapeSymbol(DisplayCanvas canvas, int x, int y)
          Construct a ShapeSymbol to use on the canvas specified at the position specified.
ShapeSymbol(int x, int y)
          Construct a ShapeSymbol without a canvas at the position specified.
 
Method Summary
protected  void applyProperties()
          Apply properties from the properties dialog.
 boolean doAllObs()
          Should this symbol do all of the observations.
 void draw(Graphics2D g, int x, int y, int width, int height)
          draw the symbol at the specified location
 boolean getEqualSides()
          Get whether this MetSymbol has equals sides (width and height).
 String getLabel()
          Get the label to show the user what I am in the properties
 Object getParamValue(int index)
          Get the parameter value at the index specified.
 float[] getPoints()
          Get the points.
 String getShape()
          Get the Shape property.
 String getShapeType()
          Get the shape type.
 boolean getStretchy()
          Get whether this MetSymbol can be stretched or not.
 void initialize(Element symbolNode)
          Initialize the shape with the xml
protected  void initPropertyComponents(List comps)
          Add any components to the list of widgets for the main property dialog tab.
protected  void makeShapePropertyComponents(List comps)
          Add to the property components.
 VisADGeometryArray[] makeShapes(PointOb ob)
          Make the shapes.
 void setParamValue(int index, Object v)
          Set the parameter value at the index specified.
 void setPoints(float[] p)
          Set the points.
 void setShape(String value)
          Set the Shape property.
 void setShapeType(String type)
          Set the shape type
 void setStretchy(boolean s)
          Is this stretchy
 
Methods inherited from class ucar.unidata.ui.symbol.MetSymbol
addPropertyTabs, clone, cloneMe, closePropertiesDialog, decrSize, doAlignmentMenu, draw, getActive, getBounds, getColorMappings, getColorParam, getColorTable, getColorTableParam, getColorTableRange, getColorTableUnit, getColorTableUnitName, getDesc, getDisplayUnit, getDisplayUnitName, getMissing, getName, getParam, getParamDescs, getParamIds, getRectPoint, getRotateInfo, getRotateXInfo, getRotateYInfo, getRotateZInfo, getScale, getScaleDataRange, getScaleParam, getScaleRange, getScaleUnit, getScaleUnitName, getXOffset, getYOffset, incrSize, makeShapes, paint, paintSelection, rotateOnEarth, setActive, setAttr, setColorMappings, setColorParam, setColorTable, setColorTableParam, setColorTableRange, setColorTableUnitName, setDisplayUnitName, setMissing, setOffset, setParamDescs, setParamIds, setRectPoint, setRotateDataRange, setRotateParam, setRotateRange, setRotateUnitName, setRotateXInfo, setRotateYInfo, setRotateZInfo, setScale, setScaleDataRange, setScaleParam, setScaleRange, setScaleUnitName, setTheDisplayUnit, shouldBeColored, shouldOffsetShape, shouldScaleShape, shouldShowColorTableGui, shouldShowRotateGui, shouldShowScaleGui, showDisplayUnitInProperties, showPropertiesDialog, toString
 
Methods inherited from class ucar.unidata.ui.drawing.RectangleGlyph
distance, getBottom, getBounds, getLeft, getPoint, getPositionAttr, getStretchPoint, getSymetricReshape, getTop, moveBy, moveTo, setPoints, setSize, setType, stretchTo
 
Methods inherited from class ucar.unidata.ui.drawing.Glyph
boundsChanged, canStretch, distance, doRemove, flipY, getAttrs, getBackground, getBackground, getBeingCreated, getCreateCommand, getCursor, getFilled, getForeground, getId, getLineWidth, getMoveCommand, getPersistent, getPointOnRect, getPointOnRect, getRectPointName, getRepaintBounds, getStretchPoint, getXml, initDone, makeAttr, notifyChange, paintHighlight, paintSelectionPoints, pickable, processAttrs, setBackground, setBeingCreated, setFilled, setForeground, setId, setLineWidth, setParent, stretchTo, stretchTo, toRect, transformOutput, transformOutput, transformOutputX, transformOutputY
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ATTR_POINTS

public static final String ATTR_POINTS
Xml attr name for points

See Also:
Constant Field Values

ATTR_SHAPE

public static final String ATTR_SHAPE
Xml attr name for shape

See Also:
Constant Field Values

ATTR_SHAPETYPE

public static final String ATTR_SHAPETYPE
Xml attr name for shape type (triangle, quad, line)

See Also:
Constant Field Values

TYPE_LINE

public static final String TYPE_LINE
Shape type to create when using points - visadlinearray

See Also:
Constant Field Values

TYPE_TRIANGLE

public static final String TYPE_TRIANGLE
Shape type to create when using points - visadtrianglearray

See Also:
Constant Field Values

TYPE_QUAD

public static final String TYPE_QUAD
Shape type to create when using points - visadquadarray

See Also:
Constant Field Values
Constructor Detail

ShapeSymbol

public ShapeSymbol()
Default constructor.


ShapeSymbol

public ShapeSymbol(int x,
                   int y)
Construct a ShapeSymbol without a canvas at the position specified. Use the parameter names and long names specified.

Parameters:
x - x position
y - y position

ShapeSymbol

public ShapeSymbol(DisplayCanvas canvas,
                   int x,
                   int y)
Construct a ShapeSymbol to use on the canvas specified at the position specified. Use the parameter names and long names specified.

Parameters:
canvas - canvas to draw on.
x - x position on the canvas
y - y position on the canvas
Method Detail

getLabel

public String getLabel()
Get the label to show the user what I am in the properties

Overrides:
getLabel in class MetSymbol
Returns:
label

initialize

public void initialize(Element symbolNode)
Initialize the shape with the xml

Overrides:
initialize in class MetSymbol
Parameters:
symbolNode - The xml

initPropertyComponents

protected void initPropertyComponents(List comps)
Add any components to the list of widgets for the main property dialog tab.

Overrides:
initPropertyComponents in class MetSymbol
Parameters:
comps - List of components.

makeShapePropertyComponents

protected void makeShapePropertyComponents(List comps)
Add to the property components.

Parameters:
comps - List of label/component pairs.

applyProperties

protected void applyProperties()
Apply properties from the properties dialog.

Overrides:
applyProperties in class MetSymbol

getStretchy

public boolean getStretchy()
Get whether this MetSymbol can be stretched or not.

Overrides:
getStretchy in class Glyph
Returns:
true if can be stretched.

setStretchy

public void setStretchy(boolean s)
Is this stretchy

Overrides:
setStretchy in class Glyph
Parameters:
s - Is this stretchy

getParamValue

public Object getParamValue(int index)
Get the parameter value at the index specified.

Overrides:
getParamValue in class MetSymbol
Parameters:
index - index into param array
Returns:
value of uOrSpeedParam if index = 0, otherwise vOrDirParam value

setParamValue

public void setParamValue(int index,
                          Object v)
Set the parameter value at the index specified.

Overrides:
setParamValue in class MetSymbol
Parameters:
index - index into param array
v - value (String) of double parameter value

getEqualSides

public boolean getEqualSides()
Get whether this MetSymbol has equals sides (width and height).

Overrides:
getEqualSides in class RectangleGlyph
Returns:
true

draw

public void draw(Graphics2D g,
                 int x,
                 int y,
                 int width,
                 int height)
draw the symbol at the specified location

Specified by:
draw in class MetSymbol
Parameters:
g - Graphics2D object
x - x position of the reference point
y - y position of the reference point
width - width of the symbol
height - height of the symbol

setShape

public void setShape(String value)
Set the Shape property.

Parameters:
value - The new value for Shape

getShape

public String getShape()
Get the Shape property.

Returns:
The Shape

doAllObs

public boolean doAllObs()
Should this symbol do all of the observations. Used by the StationModelDisplayable to determine if makeShapes should be called.

Overrides:
doAllObs in class MetSymbol
Returns:
Do all obs - true.

makeShapes

public VisADGeometryArray[] makeShapes(PointOb ob)
Make the shapes.

Overrides:
makeShapes in class MetSymbol
Parameters:
ob - The observation. We don't use this.
Returns:
The array of shapes.

getShapeType

public String getShapeType()
Get the shape type.

Returns:
The shape type

setShapeType

public void setShapeType(String type)
Set the shape type

Parameters:
type - The shape type

getPoints

public float[] getPoints()
Get the points. From the xml.

Returns:
The points. May be null.

setPoints

public void setPoints(float[] p)
Set the points.

Parameters:
p - The points.