visad.bom
Class FrontDrawer

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

public class FrontDrawer
extends 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 UNEVEN_LOW_LEVEL_JET
           
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 first and repeating profiles 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, float fsegment, float rsegment, 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 fsegment is length in graphics coordinates of first profile rsegment is length in graphics coordinates of repeating 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]
 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(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

UNEVEN_LOW_LEVEL_JET

public static final int UNEVEN_LOW_LEVEL_JET
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,
                   RemoteException
manipulable front with predefined pattern front_kind and user specified color arrays

Throws:
VisADException
RemoteException

FrontDrawer

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

Throws:
VisADException
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,
                   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 first and repeating profiles 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
RemoteException

FrontDrawer

public FrontDrawer(FieldImpl fs,
                   float[][][] cs,
                   DisplayImplJ3D d,
                   int fw,
                   float fsegment,
                   float rsegment,
                   float[][][] fshapes,
                   float[] fred,
                   float[] fgreen,
                   float[] fblue,
                   float[][][] rshapes,
                   float[] rred,
                   float[] rgreen,
                   float[] rblue)
            throws VisADException,
                   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 fsegment is length in graphics coordinates of first profile rsegment is length in graphics coordinates of repeating 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
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,
                                 RemoteException
Throws:
VisADException
RemoteException

getCurve

public Gridded2DSet getCurve()

release

public void release()

endManipulation

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

Throws:
VisADException
RemoteException

endItAll

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

Throws:
VisADException
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(String[] args)
                 throws VisADException,
                        RemoteException
Throws:
VisADException
RemoteException