ucar.unidata.idv.control
Class FlowTimeHeightControl

java.lang.Object
  extended by ucar.unidata.collab.SharableImpl
      extended by ucar.unidata.idv.control.DisplayControlBase
          extended by ucar.unidata.idv.control.DisplayControlImpl
              extended by ucar.unidata.idv.control.GridDisplayControl
                  extended by ucar.unidata.idv.control.LineProbeControl
                      extended by ucar.unidata.idv.control.TimeHeightControl
                          extended by ucar.unidata.idv.control.FlowTimeHeightControl
All Implemented Interfaces:
ActionListener, ItemListener, PropertyChangeListener, EventListener, HyperlinkListener, Sharable, DataChangeListener, FlowDisplayControl, DisplayControl, Prototypable, ControlListener, DisplayListener

public class FlowTimeHeightControl
extends TimeHeightControl
implements FlowDisplayControl

A plan view control for flow data (vector or wind barbs)

Version:
$Revision: 1.6 $
Author:
Stu Wier\

Nested Class Summary
 
Nested classes/interfaces inherited from class ucar.unidata.idv.control.DisplayControlImpl
DisplayControlImpl.SideLegendLabel
 
Field Summary
protected  float scaleFactor
          a scale factor
 
Fields inherited from class ucar.unidata.idv.control.TimeHeightControl
SHARE_PROFILE, timeHeightView
 
Fields inherited from class ucar.unidata.idv.control.LineProbeControl
positionText
 
Fields inherited from class ucar.unidata.idv.control.GridDisplayControl
CMD_CONTOURDIALOG, CMD_SETLEVELS, gridDataInstance, INITIAL_PROBE_EARTHLOCATION, log_, settingLevel
 
Fields inherited from class ucar.unidata.idv.control.DisplayControlImpl
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, controlContext, ctw, cw, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayListTable, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, noteTextArea, noteWrapper, paramName, requestProperties, settingVisibility, sharables, showNoteText, skipSlider, srw, version, viewManagers
 
Fields inherited from class ucar.unidata.idv.control.DisplayControlBase
CMD_BARBSIZE, CMD_COLORS, CMD_COLORTABLE, CMD_INTERVAL, CMD_LEVEL, CMD_LINEWIDTH, CMD_POPUP, CMD_REMOVE, DEFAULT_POINT_SIZE, DEFAULT_SAMPLING_MODE, FIND_ALL, FIND_CATEGORY, FIND_CLASS, FIND_SPECIAL, FIND_THIS, FIND_WITHDATA, FIND_WITHTHISDATA, FIND_WITHTHISFIELD, FIND_WITHTHISVIEW, FLAG_COLOR, FLAG_COLORTABLE, FLAG_COLORUNIT, FLAG_CONTOUR, FLAG_DATACONTROL, FLAG_DISPLAYUNIT, FLAG_LINEWIDTH, FLAG_NONE, FLAG_SELECTRANGE, FLAG_SKIPFACTOR, FLAG_TIMERANGE, FLAG_ZPOSITION, GRID_INSETS, ICON_LOCK, ICON_REMOVE, ICON_UNLOCK, LABEL_NONE, MACRO_DATASOURCENAME, MACRO_DISPLAYNAME, MACRO_DISPLAYUNIT, MACRO_LONGNAME, MACRO_POSITION, MACRO_SHORTNAME, MACRO_TIMESTAMP, MACRO_VALUE, NEAREST_NEIGHBOR, PREF_DISPLAYLIST_TEMPLATE, PREF_EXTRALABEL_TEMPLATE, PREF_LEGENDLABEL_TEMPLATE, PROP_REMOVED, SETTINGS_GROUP_DISPLAY, SETTINGS_GROUP_FLAGS, SHARE_CHOICES, SHARE_COLOR, SHARE_COLORSCALE, SHARE_COLORTABLE, SHARE_DISPLAYUNIT, SHARE_POSITION, SHARE_SELECTRANGE, SHARE_SKIPVALUE, SHARE_TRANSECT, SHARE_VISIBILITY, WEIGHTED_AVERAGE
 
Fields inherited from interface ucar.unidata.idv.control.FlowDisplayControl
SHARE_FLOWRANGE, SHARE_FLOWSCALE
 
Fields inherited from interface ucar.unidata.idv.DisplayControl
BOTTOM_LEGEND, DEFAULT_PROBEFORMAT, PREF_PREFIX, PREF_PROBEFORMAT, PREF_REMOVEONWINDOWCLOSE, PREF_SAMPLING_MODE, PREF_STANDALONE_REMOVEONCLOSE, PREF_STANDALONE_REMOVEONCLOSE_ASK, PROP_LEGENDICON, SIDE_LEGEND
 
Constructor Summary
FlowTimeHeightControl()
          Create a new FlowTimeHeightControl; set attribute flags
 
Method Summary
 void actionPerformed(ActionEvent e)
          Handle actions as an ActionListener
protected  DisplayableData createDataDisplay()
          Create the Displayable for the data depiction.
protected  void displayTHForCoord(FieldImpl fi, int NN)
          Make a 2D display of the range values against domain coordinate # NN.
 String getColorWidgetLabel()
          Get the color table widget label text.
 void getControlWidgets(List controlWidgets)
          Get control widgets special to this control.
 float getFlowScale()
          Get the flow scale.
 boolean getIsThreeComponents()
          Get the use 3 components property.
 boolean getStreamlines()
          Get the streamline property.
 boolean getWindbarbs()
          Get the wind barb property.
 void initDone()
          Method to call after init().
 void loadProfile(RealTuple position)
          Given the location of the profile SelectorPoint, create a data set for a profile at that location, and load it in display.
 void setFlowScale(float f)
          Set the flow scale.
 void setIsThreeComponents(boolean v)
          Set the use 3 components property.
 void setScaleFactor(float s)
          Set the scale factor.
 void setStreamlines(boolean v)
          Set the streamline property.
 void setWindbarbs(boolean v)
          Set the wind barb property.
 
Methods inherited from class ucar.unidata.idv.control.TimeHeightControl
addPropertiesComponents, applyPreferences, doApplyProperties, doMakeColorScales, doMakeContents, getBackground, getDataDisplay, getForeground, getLatestOnLeft, getPositionLL, getShowAsContours, getTimeHeightViewManager, getViewMenuItems, init, probePositionChanged, setBackground, setData, setForeground, setLatestOnLeft, setShowAsContours, setShowAsImage
 
Methods inherited from class ucar.unidata.idv.control.LineProbeControl
addLabelMacros, decreaseProbeSize, doMakeProbe, doMakeProbe, doMakeProbe, doMakeProbe, doMakeProbeMenu, doMoveProbe, getEditMenuItems, getGridCenterPosition, getInitialLinePosition, getInitialPosition, getLegendLabels, getMacroNames, getMarker, getPointSize, getPosition, increaseProbeSize, projectionChanged, propertyChange, receiveShareData, resetProbePosition, setMarker, setPointSize, setPosition, setProbePosition, setProbePosition, updateLegendLabel
 
Methods inherited from class ucar.unidata.idv.control.GridDisplayControl
addTopographyMap, convertColorRange, doMakeContourLevelControl, doMakeDataInstance, doMakeLevelControl, doMakeLevelControl, getColorParamName, getColorRangeFromData, getColorRangeIndex, getColorUnit, getContourInfo, getCursorReadoutData, getCursorReadoutInner, getDataProjection, getDefaultContourInfo, getDisplayUnit, getGridDataInstance, getInitialColorTable, getInitialRange, getRawDataUnit, haveMultipleFields, initializeDefaultContourInfo, isDisplayUnitAlsoColorUnit, setLevel, setLevel, setLevelFromUser
 
Methods inherited from class ucar.unidata.idv.control.DisplayControlImpl
activateDisplays, addAttributedDisplayable, addAttributedDisplayable, addAttributedDisplayable, addAttributeFlags, addCheckBoxSettings, addDataChoice, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayMaster, addDisplaySettings, addNewData, addNoteText, addPropertyChangeListener, addSharable, addToRangeMenu, addToRangeMenu, addToRangeMenu, addViewManager, appendDataChoices, applyAttributesToDisplayables, applyColor, applyColorScaleInfo, applyColorTable, applyColorUnit, applyContourInfo, applyDisplaySetting, applyDisplayUnit, applyLineWidth, applyProperties, applyProperties, applyPropertyValues, applyRange, applySelectRange, applySkipFactor, applyTimeRange, applyZPosition, boundsClose, canBeDocked, canExportData, canSaveDataInCache, captureWindow, changeColorUnit, changeDisplayUnit, checkFlag, checkIfDataOk, checkImageSize, clearDataInstance, clearPrototype, clearViewManagers, close, colorUnitChanged, controlChanged, convertColorRange, convertRange, createDisplayListDisplayable, createIdvWindow, dataChanged, deactivateDisplays, debug, displayableToFront, displayChanged, displayControlFailed, displayUnitChanged, doMakeBottomLegendComponent, doMakeChangeColorMenu, doMakeChangeColorMenu, doMakeChangeParameterMenuItem, doMakeColorControl, doMakeColorControl, doMakeMenuBar, doMakeMenuBarMenus, doMakeRemoveControl, doMakeSideLegendComponent, doMakeSkipFactorSlider, doMakeVisibilityControl, doMakeWidgetComponent, doMakeWindow, doMakeZPositionSlider, doRemove, exportDisplayedData, findDisplayInfo, findDisplays, findDisplays, firePropertyChangeEvent, firstFrameDone, formatForCursorReadout, getActive, getAnimation, getAnimation, getAnimation, getAnimation, getAnimationInfo, getAnimationWidget, getAttributeFlags, getCachedData, getCanDoRemoveAll, getCategories, getChangeParameterLabel, getCollapseLegend, getColor, getColorDimness, getColorScaleInfo, getColorTable, getColorTableForDisplayable, getColorTableToApply, getColorTableWidget, getColorUnitName, getComponentHolder, getContents, getControlChangeSleepTime, getControlContext, getCursorReadout, getDataChoice, getDataChoices, getDataInstance, getDataInstance, getDataProjectionForMenu, getDataProjectionLabel, getDataSelection, getDataSources, getDataTimeRange, getDataTimeRange, getDataTimeSet, getDebugDetails, getDefaultColorScaleInfo, getDefaultDistanceUnit, getDefaultFastRendering, getDefaultSamplingMode, getDefaultSamplingModeValue, getDefaultView, getDefaultViewDescriptor, getDefaultViewManager, getDetailsContents, getDisplayAltitudeType, getDisplayCategory, getDisplayCenter, getDisplayConventions, getDisplayedData, getDisplayId, getDisplayInfos, getDisplayListColor, getDisplayListData, getDisplayListDisplayable, getDisplayListTemplate, getDisplayMaster, getDisplayName, getDisplayScale, getDisplayUnit, getDisplayUnitName, getDisplayVisibility, getDoCursorReadout, getEditMenuItems, getExpandedInTabs, getExtraLabelTemplate, getExtraLegendComponent, getExtraMenus, getFileMenuItems, getFileMenuItems, getGraphicsConfiguration, getHadDataChoices, getHaveInitialized, getHelpIds, getHelpMenuItems, getId, getIdv, getImage, getImage, getInitDataChoices, getInitialZPosition, getLabel, getLastFileMenuItems, getLegendButtons, getLegendComponent, getLegendLabel, getLegendLabelTemplate, getLegendToolTip, getLineWidth, getLineWidthWidget, getLineWidthWidgetLabel, getLockVisibilityToggle, getLongParamName, getMainPanel, getMainPanelSize, getMakeWindow, getMapDisplay, getMapViewManager, getMapViewProjection, getMenuLabel, getMyDataChoices, getNavigatedDisplay, getNoteText, getObjectStore, getOkToFireEvents, getOldColorTableOrInitialColorTable, getOriginalDataChoicesLabel, getOuterContents, getProperty, getProperty, getPropertyDisplayName, getRange, getRangeForColorTable, getRangeToApply, getRequestProperties, getSamplingModeName, getSamplingModeValue, getSaveMenuItems, getSelectRange, getSelectRangeEnabled, getSelectRangeWidget, getSettingsPanel, getShortParamName, getShowInDisplayList, getShowInLegend, getShowInTabs, getShowNoteText, getSkipValue, getSkipWidgetLabel, getStore, getTemplateName, getTimeSet, getTitle, getTransientProperty, getUnitForColor, getUseFastRendering, getUseTimesInAnimation, getVersion, getVerticalValue, getViewContext, getViewer, getViewManager, getViewManager, getViewManager, getViewManagerClassNames, getViewManagers, getViewMenuItems, getWasUnPersisted, getWindow, getWindowSize, getWindowVisible, getWindowX, getWindowY, getZPosition, getZPositionSliderLabel, guiExported, guiImported, handleDisplayChanged, handleWindowClosing, hasMapProjection, haveDataTimes, haveParameterDefaults, hide, hyperlinkUpdate, init, init, init, initAfterUnPersistence, initAfterUnPersistence, initAsPrototype, initAsTemplate, initBasic, initializeWithNewData, initWindow, isDisplay3D, isGuiShown, isInitDone, isInTransectView, isInViewManager, itemStateChanged, makeChangeColorMenuItems, makeLegendLabel, makeLockButton, makeRemoveButton, moveTo, notifyViewManagersOfChange, parseProperties, popup, popupDataDialog, popupDataDialog, popupDataDialog, processRequestProperties, putTransientProperty, redoGuiLayout, reloadDataSource, reloadDataSourceInThread, removeDataChoice, removeDisplayable, removeDisplayables, removeOnWindowClose, removePropertyChangeListener, resetData, resetDimness, resetViewManager, revertToDefaultColorTable, revertToDefaultColorTable, revertToDefaultRange, revertToDefaultRange, saveAsFavorite, saveAsParameterDefaults, saveAsPrototype, saveAsTemplate, saveDataChoiceInCache, saveImage, setAnimationInfo, setAnimationSet, setAttributeFlags, setCachedData, setCanDoRemoveAll, setCategories, setCollapseLegend, setColor, setColorBrighter, setColorDimmer, setColorDimness, setColorScaleInfo, setColorScaleVisible, setColorTable, setColorTable, setColorTableName, setColorUnit, setColorUnitName, setComponentHolder, setContents, setContourInfo, setContourInfoParams, setData, setDataChoices, setDataInstance, setDataInstances, setDataSelection, setDataTimeRange, setDefaultSamplingMode, setDefaultView, setDisplayableVisibility, setDisplayableVisiblity, setDisplayActive, setDisplayCategory, setDisplayId, setDisplayInactive, setDisplayListColor, setDisplayListProperties, setDisplayListTemplate, setDisplayName, setDisplayUnit, setDisplayUnitName, setDisplayVisibility, setDoCursorReadout, setExpandedInTabs, setExtraLabelTemplate, setHadDataChoices, setHelpUrl, setId, setInitDataChoices, setInitialSettings, setLabelAsPreference, setLegendBackground, setLegendForeground, setLegendLabel, setLegendLabelTemplate, setLineWidth, setLockVisibilityToggle, setMainPanelDimensions, setMainPanelSize, setMakeWindow, setName, setNameFromUser, setNewColorUnit, setNewDisplayUnit, setNoteText, setOkToFireEvents, setOriginalDataChoicesLabel, setParamName, setPersistedVisadData, setProjectionInView, setProjectionInView, setProperty, setRange, setRange, setSelectRange, setSelectRangeEnabled, setSettingsDisplayUnit, setSharedColorScaleInfo, setShowInDisplayList, setShowInLegend, setShowInTabs, setShowNoteText, setSkipValue, setTemplateName, setTitle, setUnitForColor, setUseFastRendering, setUseTimesInAnimation, setVersion, setViewer, setViewManagerClassNames, setWindowSize, setWindowVisible, setWindowX, setWindowY, setZPosition, shouldAddAnimationListener, shouldAddControlListener, shouldAddDisplayListener, shouldApplyFastRendering, shouldBeDocked, shouldWindowBeVisible, show, showColorControlWidget, showColorDialog, showColorDialog, showColorScaleDialog, showColorScales, showColorSwatches, showContourPropertiesDialog, showDetails, showDisplaySettingsDialog, showHelp, showLegendMenu, showNormalCursor, showProperties, showTimeRangeDialog, showWaitCursor, timeChanged, toFront, toggleNoteTextArea, toggleWindow, toString, transectChanged, updateAnimation, updateDisplayList, updateLegendAndList, updateLockButton, useZPosition, viewManagerChanged, viewManagerDestroyed, viewpointChanged, writeTestArchive, xxxsetDisplayActive, zSliderChanged
 
Methods inherited from class ucar.unidata.idv.control.DisplayControlBase
boxToEarth, boxToEarth, boxToEarth, boxToEarth, boxToEarth, boxToScreen, calculateRectangle, createStationTfo, earthToBox, earthToBox, earthToBoxTuple, earthToScreen, formatLevels, getScreenCenter, getSelectedStation, isLeftButtonDown, logException, logException, makeEarthLocation, screenToBox, screenToBox, screenToEarth, setStations, setStations, toBox, toEarth, userErrorMessage, userMessage
 
Methods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, removeSharable, setShareGroup, setSharing, setUniqueId, showSharableDialog
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ucar.unidata.collab.Sharable
getShareGroup, getSharing, getUniqueId
 

Field Detail

scaleFactor

protected final float scaleFactor
a scale factor

See Also:
Constant Field Values
Constructor Detail

FlowTimeHeightControl

public FlowTimeHeightControl()
Create a new FlowTimeHeightControl; set attribute flags

Method Detail

getColorWidgetLabel

public String getColorWidgetLabel()
Get the color table widget label text.

Overrides:
getColorWidgetLabel in class DisplayControlImpl
Returns:
the label text.

createDataDisplay

protected DisplayableData createDataDisplay()
                                     throws VisADException,
                                            RemoteException
Create the Displayable for the data depiction.

Overrides:
createDataDisplay in class TimeHeightControl
Returns:
the Displayable.
Throws:
RemoteException - Java RMI error
VisADException - VisAD error

initDone

public void initDone()
Method to call after init().

Overrides:
initDone in class TimeHeightControl
See Also:
TimeHeightControl.init(ucar.unidata.data.DataChoice)

getControlWidgets

public void getControlWidgets(List controlWidgets)
                       throws VisADException,
                              RemoteException
Get control widgets special to this control.

Overrides:
getControlWidgets in class TimeHeightControl
Parameters:
controlWidgets - list of control widget from the superclass
Throws:
RemoteException - Java RMI error
VisADException - VisAD error

actionPerformed

public void actionPerformed(ActionEvent e)
Handle actions as an ActionListener

Specified by:
actionPerformed in interface ActionListener
Overrides:
actionPerformed in class GridDisplayControl
Parameters:
e - action event to process

setStreamlines

public void setStreamlines(boolean v)
Set the streamline property. Used by XML persistence

Parameters:
v - true to use streamlines

getStreamlines

public boolean getStreamlines()
Get the streamline property. Used by XML persistence

Returns:
the current streamline property (true if streamlines)

setWindbarbs

public void setWindbarbs(boolean v)
Set the wind barb property. Used by XML persistence

Parameters:
v - true if you want to use wind barbs

getWindbarbs

public boolean getWindbarbs()
Get the wind barb property. Used by XML persistence

Returns:
true if wind barbs are being depicted

setIsThreeComponents

public void setIsThreeComponents(boolean v)
Set the use 3 components property. Used by XML persistence

Parameters:
v - true if using u, v and w

getIsThreeComponents

public boolean getIsThreeComponents()
Get the use 3 components property. Used by XML persistence

Returns:
true if using 3 components for wind

setScaleFactor

public void setScaleFactor(float s)
Set the scale factor. Used by XML persistence

Parameters:
s - the new factor

getFlowScale

public float getFlowScale()
Get the flow scale. Used by XML persistence

Returns:
the flow scale for this control

setFlowScale

public void setFlowScale(float f)
Set the flow scale. Used by XML persistence

Parameters:
f - new flow scale

loadProfile

public void loadProfile(RealTuple position)
                 throws VisADException,
                        RemoteException
Given the location of the profile SelectorPoint, create a data set for a profile at that location, and load it in display. Show lat-lon location on the control frame.

Overrides:
loadProfile in class TimeHeightControl
Parameters:
position - the location
Throws:
VisADException - VisAD failure.
RemoteException - Java RMI failure.

displayTHForCoord

protected void displayTHForCoord(FieldImpl fi,
                                 int NN)
                          throws VisADException,
                                 RemoteException
Make a 2D display of the range values against domain coordinate # NN.

Overrides:
displayTHForCoord in class TimeHeightControl
Parameters:
fi - a VisAD FlatField or seqence of FlatFields with 3 or more domain coordinates, manifold dimension 1.
NN - an integer, the index number of the coordinate to use as profile or y axis of plot (0,1,2,...)
Throws:
RemoteException - Java RMI error
VisADException - VisAD Error