ucar.unidata.view.sounding
Class WindBarbProfile

java.lang.Object
  extended by ucar.visad.display.Displayable
      extended by ucar.visad.display.CompositeDisplayable
          extended by ucar.unidata.view.sounding.WindProfile
              extended by ucar.unidata.view.sounding.WindBarbProfile

public class WindBarbProfile
extends WindProfile

Provides support for the display of a wind profile on in an AerologicalDisplay as a set of as a set of wind barbs. Winds must be of form CartesianHorizontalWindOfPressure;

Version:
$Id: WindBarbProfile.java,v 1.8 2005/05/13 18:33:40 jeffmc Exp $
Author:
Unidata Development Team

Field Summary
 
Fields inherited from class ucar.unidata.view.sounding.WindProfile
DIRECTION, GEOPOTENTIAL_ALTITUDE, GEOPOTENTIAL_ALTITUDE_EXTENT, MAXIMUM_SPEED, PRESSURE, SPEED, WIND_PROFILE
 
Fields inherited from class ucar.visad.display.CompositeDisplayable
cnt, label
 
Fields inherited from class ucar.visad.display.Displayable
DISPLAY, parent, SCALAR_MAP_SET
 
Constructor Summary
  WindBarbProfile(LocalDisplay display)
          Constructs from a VisAD display.
  WindBarbProfile(LocalDisplay display, AerologicalCoordinateSystem cs)
          Constructs from a VisAD display.
protected WindBarbProfile(WindBarbProfile that)
          Constructs from another instance.
 
Method Summary
 Displayable cloneForDisplay()
          Returns a clone of this instance suitable for another VisAD display.
 boolean equals(Object obj)
          Indicates if this instance is identical to another object.
 AerologicalCoordinateSystem getCoordinateSystem()
          Set the coordinate system for this display.
protected  FlatField getMissingWindField()
          Returns an instance of a wind field with no values.
protected  Field getProfile()
          Returns the wind profile.
 int hashCode()
          Returns the hash code of this instance.
 void setCoordinateSystem(AerologicalCoordinateSystem acs)
          Set the coordinate system for this display.
 void setOriginalProfile()
          Resets the vertical profile of the horizontal wind to the profile of the last setProfile().
 void setProfile(Field profile)
          Sets the wind profile.
protected  void setSpeedAndDirection()
          Sets the wind speed and direction properties.
 void setWindLevels(Gridded1DSet levels)
          Set the levels of the wind profile to display.
 
Methods inherited from class ucar.unidata.view.sounding.WindProfile
ensureCartesian, getDirection, getGeopotentialAltitude, getGeopotentialAltitudeExtent, getGeopotentialAltitudeRealType, getMaximumSpeed, getPressure, getSoutherlyWindRealType, getSpeed, getWesterlyWindRealType, profileChange, setAltitudeExtent, setDirection, setGeopotentialAltitude, setMaximumSpeed, setPressure, setSpeed
 
Methods inherited from class ucar.visad.display.CompositeDisplayable
addConstantMap, addDisplayable, addListDataListener, clearDisplayables, debug, destroy, destroyAll, displayableCount, fireListDataContentsChanged, fireListDataIntervalAdded, fireListDataIntervalRemoved, getAnimationSet, getDisplayable, indexOf, iterator, lastDisplayable, myAddDataReferences, myRemoveDataReferences, removeDisplayable, removeDisplayable, removeListDataListener, setAdjustFlow, setColor, setColorPalette, setColorUnit, setConstantPosition, setDisplay, setDisplayable, setDisplayMaster, setDisplayUnit, setLineWidth, setManipulable, setPointMode, setPointSize, setSelectedRange, setUseFastRendering, setUseTimesInAnimation, setVisible, setVisible, setVisible, toFront, toString
 
Methods inherited from class ucar.visad.display.Displayable
addConstantMaps, addDataReferences, addPropertyChangeListener, addPropertyChangeListener, addRefsInvoked, addScalarMap, addScalarMaps, applyColorUnit, applyDisplayUnit, checkUnit, combineConstantMaps, destroyDisplayable, firePropertyChange, firePropertyChange, fireScalarMapSetChange, getColorUnit, getConstantMaps, getData, getDestroyed, getDisplay, getDisplayMaster, getDisplayUnit, getPointMode, getScalarMap, getScalarMap, getScalarMap, getScalarMapSet, getUseFastRendering, getUseTimesInAnimation, getVisible, hasDataObject, isActive, isUnitCompatible, isVisible, logException, myAddConstantMaps, removeConstantMap, removeDataReferences, removePropertyChangeListener, removePropertyChangeListener, removeScalarMap, replaceScalarMap, setColorPalette, setContourInfo, setDisplayActive, setDisplayInactive, setOverrideAnimationSet, setOverrideAnimationSet, setParent, setRangeForColor, setRangeForColor, setScalarMapSet, setSelectedRange
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WindBarbProfile

public WindBarbProfile(LocalDisplay display)
                throws VisADException,
                       RemoteException
Constructs from a VisAD display.

Parameters:
display - The VisAD display. (not used)
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

WindBarbProfile

public WindBarbProfile(LocalDisplay display,
                       AerologicalCoordinateSystem cs)
                throws VisADException,
                       RemoteException
Constructs from a VisAD display.

Parameters:
display - The VisAD display. (not used)
cs - The AerologicalCoordinateSystem
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

WindBarbProfile

protected WindBarbProfile(WindBarbProfile that)
                   throws RemoteException,
                          VisADException
Constructs from another instance.

Parameters:
that - The other instance.
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.
Method Detail

setCoordinateSystem

public void setCoordinateSystem(AerologicalCoordinateSystem acs)
                         throws VisADException,
                                RemoteException
Set the coordinate system for this display.

Parameters:
acs - the coordinate system
Throws:
RemoteException - Java RMI failure
VisADException - VisAD failure

getCoordinateSystem

public AerologicalCoordinateSystem getCoordinateSystem()
Set the coordinate system for this display.

Returns:
the coordinate system for this display (may be null)

getMissingWindField

protected FlatField getMissingWindField()
Returns an instance of a wind field with no values.

Overrides:
getMissingWindField in class WindProfile
Returns:
A wind field with no values.

setProfile

public void setProfile(Field profile)
                throws VisADException,
                       RemoteException
Sets the wind profile.

Specified by:
setProfile in class WindProfile
Parameters:
profile - The wind profile.
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

setOriginalProfile

public void setOriginalProfile()
                        throws VisADException,
                               RemoteException
Resets the vertical profile of the horizontal wind to the profile of the last setProfile().

Specified by:
setOriginalProfile in class WindProfile
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

getProfile

protected Field getProfile()
                    throws VisADException,
                           RemoteException
Returns the wind profile.

Specified by:
getProfile in class WindProfile
Returns:
The wind profile.
Throws:
RemoteException
VisADException

setWindLevels

public void setWindLevels(Gridded1DSet levels)
                   throws RemoteException,
                          VisADException
Set the levels of the wind profile to display.

Specified by:
setWindLevels in class WindProfile
Parameters:
levels - the set of levels (if null, display all);
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

setSpeedAndDirection

protected void setSpeedAndDirection()
                             throws RemoteException,
                                    VisADException
Sets the wind speed and direction properties. Override superclass method to evaluate on pressure instead of geopotential altitude

Overrides:
setSpeedAndDirection in class WindProfile
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

equals

public boolean equals(Object obj)
Indicates if this instance is identical to another object.

Overrides:
equals in class WindProfile
Parameters:
obj - The other object.
Returns:
true if and only if this instance is identical to the other object.

hashCode

public int hashCode()
Returns the hash code of this instance.

Overrides:
hashCode in class WindProfile
Returns:
The hash code of this instance.

cloneForDisplay

public Displayable cloneForDisplay()
                            throws RemoteException,
                                   VisADException
Returns a clone of this instance suitable for another VisAD display. Underlying data objects are not cloned.

Overrides:
cloneForDisplay in class CompositeDisplayable
Returns:
A clone of this instance.
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.