visad.bom
Class FrontDrawer

java.lang.Object
  extended by visad.bom.FrontDrawer
All Implemented Interfaces:
java.util.EventListener, ControlListener

public class FrontDrawer
extends java.lang.Object
implements ControlListener

FrontDrawer is the VisAD class for manipulation of fronts


Field Summary
static int COLD_FRONT
           
static int CONVERGENCE
           
static int DRY_LINE
           
static int FRONTOGENESIS
           
static int FRONTOLYSIS
           
static int ISOTHERMS
           
static int LIFTED_INDEX
           
static int LOW_LEVEL_JET
           
static int LOWER_THERMAL_TROUGH
           
static int MOISTURE
           
static int OCCLUDED_FRONT
           
static int RIDGE
           
static int STATIONARY_FRONT
           
static int THICKNESS_RIDGE
           
static int TOTAL_TOTALS
           
static int TROUGH
           
static int UPPER_COLD_FRONT
           
static int UPPER_LEVEL_JET
           
static int UPPER_THERMAL_TROUGH
           
static int UPPER_WARM_FRONT
           
static int WARM_FRONT
           
 
Constructor Summary
FrontDrawer(FieldImpl fs, float[][][] cs, DisplayImplJ3D d, int fw, float segment, float[][][] fshapes, float[] fred, float[] fgreen, float[] fblue, float[][][] rshapes, float[] rred, float[] rgreen, float[] rblue)
          fs is null or has MathType (RealType.Time -> (front_index -> ((Latitude, Longitude) -> (front_red, front_green, front_blue)))) cs is null or contains a time array of curves for fs fw is the filter window size for smoothing the curve segment is length in graphics coordinates of entire profile fshapes is dimensioned [nfshapes][2][points_per_shape] fred, fgreen and fblue are dimensioned [nfshapes] rshapes is dimensioned [nrshapes][2][points_per_shape] rred, rgreen and rblue are dimensioned [nrshapes] fshapes[*][0][*] and rshapes[*][0][*] generally in range 0.0f to segment
FrontDrawer(FieldImpl fs, float[][][] cs, DisplayImplJ3D d, int fw, int front_kind)
          manipulable front with predefined pattern front_kind and default color arrays
FrontDrawer(FieldImpl fs, float[][][] cs, DisplayImplJ3D d, int fw, int front_kind, float[] fred, float[] fgreen, float[] fblue, float[] rred, float[] rgreen, float[] rblue)
          manipulable front with predefined pattern front_kind and user specified color arrays
 
Method Summary
 void controlChanged(ControlEvent e)
          send a ControlEvent to this ControlListener
static float curveLength(float[][] curve, float[] seg_length)
          assumes curve is float[2][len] and seg_length is float[len-1]
 java.util.Vector endItAll()
          called by the application to end manipulation; returns the final front
 void endManipulation()
          called by the application to end manipulation; returns the final front
 Gridded2DSet getCurve()
           
 DefaultRendererJ3D getFrontRenderer()
           
static void initColormaps(DisplayImplJ3D display)
           
static void main(java.lang.String[] args)
           
 void release()
           
static float[][] resample_curve(float[][] curve, float increment)
          resmaple curve into segments approximately increment in length
static float[][] smooth_curve(float[][] curve, int window)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COLD_FRONT

public static final int COLD_FRONT
See Also:
Constant Field Values

WARM_FRONT

public static final int WARM_FRONT
See Also:
Constant Field Values

OCCLUDED_FRONT

public static final int OCCLUDED_FRONT
See Also:
Constant Field Values

STATIONARY_FRONT

public static final int STATIONARY_FRONT
See Also:
Constant Field Values

CONVERGENCE

public static final int CONVERGENCE
See Also:
Constant Field Values

FRONTOGENESIS

public static final int FRONTOGENESIS
See Also:
Constant Field Values

FRONTOLYSIS

public static final int FRONTOLYSIS
See Also:
Constant Field Values

UPPER_COLD_FRONT

public static final int UPPER_COLD_FRONT
See Also:
Constant Field Values

UPPER_WARM_FRONT

public static final int UPPER_WARM_FRONT
See Also:
Constant Field Values

TROUGH

public static final int TROUGH
See Also:
Constant Field Values

RIDGE

public static final int RIDGE
See Also:
Constant Field Values

MOISTURE

public static final int MOISTURE
See Also:
Constant Field Values

LOW_LEVEL_JET

public static final int LOW_LEVEL_JET
See Also:
Constant Field Values

UPPER_LEVEL_JET

public static final int UPPER_LEVEL_JET
See Also:
Constant Field Values

DRY_LINE

public static final int DRY_LINE
See Also:
Constant Field Values

TOTAL_TOTALS

public static final int TOTAL_TOTALS
See Also:
Constant Field Values

LIFTED_INDEX

public static final int LIFTED_INDEX
See Also:
Constant Field Values

ISOTHERMS

public static final int ISOTHERMS
See Also:
Constant Field Values

THICKNESS_RIDGE

public static final int THICKNESS_RIDGE
See Also:
Constant Field Values

LOWER_THERMAL_TROUGH

public static final int LOWER_THERMAL_TROUGH
See Also:
Constant Field Values

UPPER_THERMAL_TROUGH

public static final int UPPER_THERMAL_TROUGH
See Also:
Constant Field Values
Constructor Detail

FrontDrawer

public FrontDrawer(FieldImpl fs,
                   float[][][] cs,
                   DisplayImplJ3D d,
                   int fw,
                   int front_kind,
                   float[] fred,
                   float[] fgreen,
                   float[] fblue,
                   float[] rred,
                   float[] rgreen,
                   float[] rblue)
            throws VisADException,
                   java.rmi.RemoteException
manipulable front with predefined pattern front_kind and user specified color arrays

Throws:
VisADException
java.rmi.RemoteException

FrontDrawer

public FrontDrawer(FieldImpl fs,
                   float[][][] cs,
                   DisplayImplJ3D d,
                   int fw,
                   int front_kind)
            throws VisADException,
                   java.rmi.RemoteException
manipulable front with predefined pattern front_kind and default color arrays

Throws:
VisADException
java.rmi.RemoteException

FrontDrawer

public FrontDrawer(FieldImpl fs,
                   float[][][] cs,
                   DisplayImplJ3D d,
                   int fw,
                   float segment,
                   float[][][] fshapes,
                   float[] fred,
                   float[] fgreen,
                   float[] fblue,
                   float[][][] rshapes,
                   float[] rred,
                   float[] rgreen,
                   float[] rblue)
            throws VisADException,
                   java.rmi.RemoteException
fs is null or has MathType (RealType.Time -> (front_index -> ((Latitude, Longitude) -> (front_red, front_green, front_blue)))) cs is null or contains a time array of curves for fs fw is the filter window size for smoothing the curve segment is length in graphics coordinates of entire profile fshapes is dimensioned [nfshapes][2][points_per_shape] fred, fgreen and fblue are dimensioned [nfshapes] rshapes is dimensioned [nrshapes][2][points_per_shape] rred, rgreen and rblue are dimensioned [nrshapes] fshapes[*][0][*] and rshapes[*][0][*] generally in range 0.0f to segment

Throws:
VisADException
java.rmi.RemoteException
Method Detail

controlChanged

public void controlChanged(ControlEvent e)
Description copied from interface: ControlListener
send a ControlEvent to this ControlListener

Specified by:
controlChanged in interface ControlListener

getFrontRenderer

public DefaultRendererJ3D getFrontRenderer()

initColormaps

public static void initColormaps(DisplayImplJ3D display)
                          throws VisADException,
                                 java.rmi.RemoteException
Throws:
VisADException
java.rmi.RemoteException

getCurve

public Gridded2DSet getCurve()

release

public void release()

endManipulation

public void endManipulation()
                     throws VisADException,
                            java.rmi.RemoteException
called by the application to end manipulation; returns the final front

Throws:
VisADException
java.rmi.RemoteException

endItAll

public java.util.Vector endItAll()
                          throws VisADException,
                                 java.rmi.RemoteException
called by the application to end manipulation; returns the final front

Throws:
VisADException
java.rmi.RemoteException

smooth_curve

public static float[][] smooth_curve(float[][] curve,
                                     int window)

resample_curve

public static float[][] resample_curve(float[][] curve,
                                       float increment)
resmaple curve into segments approximately increment in length


curveLength

public static float curveLength(float[][] curve,
                                float[] seg_length)
assumes curve is float[2][len] and seg_length is float[len-1]


main

public static void main(java.lang.String[] args)
                 throws VisADException,
                        java.rmi.RemoteException
Throws:
VisADException
java.rmi.RemoteException