edu.wisc.ssec.mcidasv.control
Class ScatterDisplay

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 edu.wisc.ssec.mcidasv.control.ScatterDisplay
All Implemented Interfaces:
ActionListener, ItemListener, PropertyChangeListener, EventListener, HyperlinkListener, Sharable, DataChangeListener, DisplayControl, Prototypable, ControlListener, DisplayListener

public class ScatterDisplay
extends DisplayControlImpl


Nested Class Summary
private  class ScatterDisplay.BoxCurveSwitch
           
private  class ScatterDisplay.ImageBoxSelector
           
private  class ScatterDisplay.ImageControl
           
private  class ScatterDisplay.ImageCurveSelector
           
private  class ScatterDisplay.MyStatsTable
           
private  class ScatterDisplay.ScatterBoxSelector
           
private  class ScatterDisplay.ScatterCurveSelector
           
private  class ScatterDisplay.ScatterDisplayable
           
 
Nested classes/interfaces inherited from class ucar.unidata.idv.control.DisplayControlImpl
DisplayControlImpl.SideLegendLabel
 
Field Summary
private  FlatField Area_field
           
private  ScatterDisplay.BoxCurveSwitch boxCurveSwitch
           
private  boolean cancel
           
(package private)  JButton computeStatsButton
           
private  Container container
           
(package private)  ColorTableWidget ctw
           
(package private)  JComponent ctwCompX
           
(package private)  JComponent ctwCompY
           
 DataChoice dataChoiceX
           
 DataChoice dataChoiceY
           
 DataSelection dataSelectionX
           
 DataSelection dataSelectionY
           
private  DisplayMaster dspMasterX
           
private  DisplayMaster dspMasterY
           
private  HistogramField histoField
           
(package private)  List<ScatterDisplay.ImageBoxSelector> imageXBoxSelectors
           
(package private)  List<ScatterDisplay.ImageCurveSelector> imageXCurveSelectors
           
(package private)  List<ScatterDisplay.ImageBoxSelector> imageYBoxSelectors
           
(package private)  List<ScatterDisplay.ImageCurveSelector> imageYCurveSelectors
           
private static org.slf4j.Logger logger
           
(package private)  float[][] markColorPalette
           
private  FlatField mask_field
           
private  float[][] mask_range
           
(package private)  float[][] maskColorPalette
           
(package private)  int n_selectors
           
(package private)  List<ScatterDisplay.ScatterBoxSelector> scatterBoxSelectors
           
(package private)  List<ScatterDisplay.ScatterCurveSelector> scatterCurveSelectors
           
private  float[][] scatterFieldRange
           
private  ScatterDisplay.ScatterDisplayable scatterMarkDsp
           
private  DisplayMaster scatterMaster
           
(package private)  boolean selectByCurve
           
(package private)  Color[] selectorColors
           
(package private)  JToggleButton[] selectorToggleButtons
           
(package private)  ScatterDisplay.MyStatsTable statsTable
           
private  double total_area
           
private  Data X_data
           
private  FlatField X_field
           
private  String X_name
           
private  Data Y_data
           
private  FlatField Y_field
           
private  String Y_name
           
 
Fields inherited from class ucar.unidata.idv.control.DisplayControlImpl
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, contourWidget, controlContext, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayListTable, displayListUsesColor, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, noteTextArea, noteWrapper, paramName, requestProperties, selectRangeWidget, settingVisibility, sharables, showNoteText, skipSlider, version, viewManagers, ZFUDGE
 
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_SMOOTHING, FLAG_TEXTUREQUALITY, FLAG_TIMERANGE, FLAG_ZPOSITION, GRID_INSETS, ICON_LOCK, ICON_REMOVE, ICON_UNLOCK, LABEL_NONE, log_, MACRO_DATASOURCENAME, MACRO_DISPLAYNAME, MACRO_DISPLAYUNIT, MACRO_FHOUR, MACRO_LONGNAME, MACRO_POSITION, MACRO_SHORTNAME, MACRO_STATION, 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.DisplayControl
BOTTOM_LEGEND, DEFAULT_PROBEFORMAT, PREF_PREFIX, PREF_PROBEFORMAT, PREF_REMOVEONWINDOWCLOSE, PREF_SAMPLING_MODE, PREF_STANDALONE_REMOVEONCLOSE, PREF_STANDALONE_REMOVEONCLOSE_ASK, PROP_LEGENDICON, RASTERMODE_SHOWALL, RASTERMODE_SHOWNONRASTER, RASTERMODE_SHOWRASTER, SIDE_LEGEND
 
Constructor Summary
ScatterDisplay()
           
 
Method Summary
 void addMapDisplayables(MapProjectionDisplayJ3D mapProjDsp)
           
 Container doMakeContents()
           
 ColorTable getColorTable(FlatField image)
           
 MapProjection getDataProjection(FlatField image)
           
 Range getImageRange(FlatField image)
           
 boolean getIsLatLon(FlatField field)
           
protected  Component getScatterTabComponent()
           
 boolean getSelectByCurve()
           
 boolean init(List choices)
           
 void initDone()
           
 DisplayMaster makeImageDisplay(MapProjection mapProj, FlatField image, FlatField mask_image, Range imageRange, ColorTable colorTable)
           
 DisplayMaster makeScatterDisplay()
           
static float[] minmax(float[] values)
           
protected  void popupDataDialog(String dialogMessage, Component from, boolean multiples, List categories)
           
private  FlatField resample(FlatField X_field, FlatField Y_field)
           
 void setup()
           
 void setupFromUnpersistence()
           
 
Methods inherited from class ucar.unidata.idv.control.DisplayControlImpl
actionPerformed, activateDisplays, addAttributedDisplayable, addAttributedDisplayable, addAttributedDisplayable, addAttributeFlags, addCheckBoxSettings, addDataChoice, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayMaster, addDisplaySettings, addLabelMacros, addNewData, addNoteText, addPropertiesComponents, addPropertyChangeListener, addRemovable, addSharable, addTimeModeWidget, addToControlContext, addToRangeMenu, addToRangeMenu, addToRangeMenu, addViewManager, appendDataChoices, applyAttributesToDisplayables, applyColor, applyColorScaleInfo, applyColorTable, applyColorUnit, applyContourInfo, applyDisplaySetting, applyDisplayUnit, applyLineWidth, applyPreferences, applyProperties, applyProperties, applyPropertyValues, applyRange, applySelectRange, applySkipFactor, applySmoothing, applyTextureQuality, applyTimeRange, applyZPosition, boundsClose, canBeDocked, canExportData, canSaveDataInCache, captureWindow, centerOnDisplay, changeColorUnit, changeDisplayUnit, checkFlag, checkIfDataOk, checkImageSize, clearDataInstance, clearPrototype, clearViewManagers, close, colorUnitChanged, controlChanged, convertColorRange, convertRange, createDisplayListDisplayable, createIdvWindow, dataChanged, deactivateDisplays, debug, displayableToFront, displayChanged, displayControlFailed, displayUnitChanged, doApplyProperties, doExport, doInitialUpdateLegendAndList, doMakeBottomLegendComponent, doMakeChangeColorMenu, doMakeChangeColorMenu, doMakeChangeParameterMenuItem, doMakeColorControl, doMakeColorControl, doMakeColorScales, doMakeDataInstance, doMakeMenuBar, doMakeMenuBarMenus, doMakePointSizeWidget, doMakeRemoveControl, doMakeSideLegendComponent, doMakeSkipFactorSlider, doMakeTextureSlider, 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, getColorUnit, getColorUnitName, getColorWidgetLabel, getComponentHolder, getContents, getContourInfo, getControlChangeSleepTime, getControlContext, getControlMenus, getControlWidgets, getCursorReadout, getCursorReadoutInner, getCursorReadoutInner, getData, getDataChoice, getDataChoices, getDataForDisplayList, getDataInstance, getDataInstance, getDataProjection, getDataProjectionForMenu, getDataProjectionLabel, getDataSelection, getDataSources, getDataTimeRange, getDataTimeRange, getDataTimeSet, getDebugDetails, getDefaultColorScaleInfo, getDefaultDisplayListTemplate, getDefaultDistanceUnit, getDefaultFastRendering, getDefaultSamplingMode, getDefaultSamplingModeValue, getDefaultView, getDefaultViewDescriptor, getDefaultViewManager, getDetailsContents, getDisplayAltitudeType, getDisplayCategory, getDisplayCenter, getDisplayConventions, getDisplayedData, getDisplayId, getDisplayInfos, getDisplayListColor, getDisplayListData, getDisplayListDisplayable, getDisplayListTemplate, getDisplayMaster, getDisplayName, getDisplayScale, getDisplayUnit, getDisplayUnit, getDisplayUnitName, getDisplayVisibility, getDoCursorReadout, getEditMenuItems, getEditMenuItems, getExpandedInTabs, getExtraLabelTemplate, getExtraLegendComponent, getExtraMenus, getFileMenuItems, getFileMenuItems, getGraphicsConfiguration, getGrid, getGrid, getHadDataChoices, getHaveInitialized, getHelpIds, getHelpMenuItems, getId, getIdv, getImage, getImage, getInitDataChoices, getInitialColorTable, getInitialFastRendering, getInitialRange, getInitialZPosition, getInternalAnimation, getInternalAnimation, getIsRaster, getIsTimeDriver, getLabel, getLastFileMenuItems, getLegendButtons, getLegendComponent, getLegendLabel, getLegendLabels, getLegendLabelTemplate, getLegendToolTip, getLineWidth, getLineWidthWidget, getLineWidthWidgetLabel, getLockVisibilityToggle, getLongParamName, getMacroNames, getMainPanel, getMainPanelSize, getMakeWindow, getMapDisplay, getMapViewManager, getMapViewProjection, getMenuLabel, getMyDataChoices, getNavigatedDisplay, getNoteText, getObjectStore, getOkToFireEvents, getOldColorTableOrInitialColorTable, getOriginalDataChoicesLabel, getOuterContents, getPointSize, getProperty, getProperty, getPropertyDisplayName, getRange, getRangeForColorTable, getRangeToApply, getRawDataUnit, getRequestProperties, getSamplingModeName, getSamplingModeValue, getSamplingModeValue, getSaveMenuItems, getSelectRange, getSelectRangeEnabled, getSelectRangeWidget, getSettingsPanel, getShortParamName, getShowInDisplayList, getShowInLegend, getShowInTabs, getShowNoteText, getSkipValue, getSkipWidgetLabel, getSmoothingFactor, getSmoothingType, getSomeAnimation, getStore, getTemplateName, getTextureQuality, getTextureQualityLabel, getTimeSet, getTitle, getTransientProperty, getUnitForColor, getUseFastRendering, getUsesTimeDriver, getUseTimesInAnimation, getVersion, getVerticalValue, getViewAnimation, getViewContext, getViewer, getViewManager, getViewManager, getViewManager, getViewManagerClassNames, getViewManagerForCapture, getViewManagers, getViewMenuItems, getViewMenuItems, getVisbilityAnimationPause, getWasUnPersisted, getWindow, getWindowSize, getWindowVisible, getWindowX, getWindowY, getZPosition, getZPositionSliderLabel, guiExported, guiImported, handleDisplayChanged, handleWindowClosing, hasMapProjection, hasTimeMacro, haveDataTimes, haveParameterDefaults, hide, hyperlinkUpdate, inGlobeDisplay, init, init, init, initAfterUnPersistence, initAfterUnPersistence, initAsPrototype, initAsTemplate, initBasic, initializeWithNewData, initWindow, isDisplay3D, isDisplayUnitAlsoColorUnit, isGuiShown, isInitDone, isInTransectView, isInViewManager, itemStateChanged, makeChangeColorMenuItems, makeLegendLabel, makeLockButton, makeRemoveButton, moveTo, notifyViewManagersOfChange, parseProperties, popup, popupDataDialog, popupDataDialog, processRequestProperties, projectionChanged, propertyChange, putTransientProperty, reallySetAttributeFlags, receiveShareData, redoGuiLayout, reloadDataSource, reloadDataSourceInThread, removeDataChoice, removeDisplayable, removeDisplayables, removeDisplayables, removeOnWindowClose, removePropertyChangeListener, resetData, resetDimness, resetViewManager, revertToDefaultColorTable, revertToDefaultColorTable, revertToDefaultRange, revertToDefaultRange, saveAsFavorite, saveAsParameterDefaults, saveAsPrototype, saveAsTemplate, saveDataChoiceInCache, saveImage, selectDataChoices, setAnimationInfo, setAnimationSet, setAttributeFlags, setCachedData, setCanDoRemoveAll, setCategories, setCollapseLegend, setColor, setColorBrighter, setColorDimmer, setColorDimness, setColorScaleInfo, setColorScaleVisible, setColorTable, setColorTable, setColorTableName, setColorUnit, setColorUnitName, setComponentHolder, setContents, setContourInfo, setContourInfoParams, setData, setData, setDataChoices, setDataInstance, setDataInstances, setDataSelection, setDataTimeRange, setDefaultSamplingMode, setDefaultView, setDisplayableVisibility, setDisplayableVisiblity, setDisplayActive, setDisplayCategory, setDisplayId, setDisplayInactive, setDisplayListColor, setDisplayListColor, setDisplayListProperties, setDisplayListTemplate, setDisplayName, setDisplayUnit, setDisplayUnitName, setDisplayVisibility, setDoCursorReadout, setExpandedInTabs, setExtraLabelTemplate, setHadDataChoices, setHelpUrl, setId, setInitDataChoices, setInitialSettings, setInitialViewManager, setIsRaster, setIsTimeDriver, setLabelAsPreference, setLegendBackground, setLegendForeground, setLegendLabel, setLegendLabelTemplate, setLineWidth, setLockVisibilityToggle, setMainPanelDimensions, setMainPanelSize, setMakeWindow, setName, setNameFromUser, setNewColorUnit, setNewDisplayUnit, setNoteText, setOkToFireEvents, setOriginalDataChoicesLabel, setParamName, setPersistedVisadData, setPointSize, setProjectionInView, setProjectionInView, setProperty, setRange, setRange, setSelectRange, setSelectRangeEnabled, setSettingsDisplayUnit, setSharedColorScaleInfo, setShowInDisplayList, setShowInLegend, setShowInTabs, setShowNoteText, setSkipValue, setSmoothingFactor, setSmoothingType, setTemplateName, setTextureQuality, setTitle, setUnitForColor, setUseFastRendering, setUsesTimeDriver, setUseTimesInAnimation, setVersion, setViewer, setViewManagerClassNames, setVisbilityAnimationPause, setWindowSize, setWindowVisible, setWindowX, setWindowY, setZPosition, 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, toggleVisibilityForVectorGraphicsRendering, toggleWindow, toString, transectChanged, updateAnimation, updateDataInstance, updateDataSelection, updateDisplayList, updateGridDataInstance, updateLegendAndList, updateLegendLabel, updateLockButton, useSmoothingFactor, 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, getLabeledReal, getLevelReal, getScreenCenter, getSelectedStation, getTmpProperty, isLeftButtonDown, logException, logException, makeEarthLocation, putTmpProperty, removeTmpProperty, screenToBox, screenToBox, screenToEarth, setStations, setStations, toBox, toEarth, userErrorMessage, userMessage
 
Methods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, removeSharable, setReceiveShareTime, 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.idv.DisplayControl
getTmpProperty, putTmpProperty, removeTmpProperty
 
Methods inherited from interface ucar.unidata.collab.Sharable
getReceiveShareTime, getShareGroup, getSharing, getUniqueId, setReceiveShareTime
 

Field Detail

logger

private static final org.slf4j.Logger logger

container

private Container container

X_field

private FlatField X_field

Y_field

private FlatField Y_field

Area_field

private FlatField Area_field

total_area

private double total_area

scatterMaster

private DisplayMaster scatterMaster

dspMasterX

private DisplayMaster dspMasterX

dspMasterY

private DisplayMaster dspMasterY

histoField

private HistogramField histoField

mask_field

private FlatField mask_field

mask_range

private float[][] mask_range

scatterFieldRange

private float[][] scatterFieldRange

X_data

private Data X_data

Y_data

private Data Y_data

X_name

private String X_name

Y_name

private String Y_name

cancel

private boolean cancel

scatterMarkDsp

private ScatterDisplay.ScatterDisplayable scatterMarkDsp

boxCurveSwitch

private ScatterDisplay.BoxCurveSwitch boxCurveSwitch

dataChoiceX

public DataChoice dataChoiceX

dataChoiceY

public DataChoice dataChoiceY

dataSelectionX

public DataSelection dataSelectionX

dataSelectionY

public DataSelection dataSelectionY

ctwCompX

JComponent ctwCompX

ctwCompY

JComponent ctwCompY

ctw

ColorTableWidget ctw

n_selectors

int n_selectors

scatterBoxSelectors

List<ScatterDisplay.ScatterBoxSelector> scatterBoxSelectors

scatterCurveSelectors

List<ScatterDisplay.ScatterCurveSelector> scatterCurveSelectors

imageXBoxSelectors

List<ScatterDisplay.ImageBoxSelector> imageXBoxSelectors

imageYBoxSelectors

List<ScatterDisplay.ImageBoxSelector> imageYBoxSelectors

imageXCurveSelectors

List<ScatterDisplay.ImageCurveSelector> imageXCurveSelectors

imageYCurveSelectors

List<ScatterDisplay.ImageCurveSelector> imageYCurveSelectors

selectorToggleButtons

JToggleButton[] selectorToggleButtons

selectorColors

Color[] selectorColors

maskColorPalette

float[][] maskColorPalette

markColorPalette

float[][] markColorPalette

computeStatsButton

JButton computeStatsButton

statsTable

ScatterDisplay.MyStatsTable statsTable

selectByCurve

boolean selectByCurve
Constructor Detail

ScatterDisplay

public ScatterDisplay()
Method Detail

init

public boolean init(List choices)
             throws VisADException,
                    RemoteException
Overrides:
init in class DisplayControlImpl
Throws:
VisADException
RemoteException

setup

public void setup()
           throws VisADException,
                  RemoteException
Throws:
VisADException
RemoteException

setupFromUnpersistence

public void setupFromUnpersistence()
                            throws VisADException,
                                   RemoteException
Throws:
VisADException
RemoteException

popupDataDialog

protected void popupDataDialog(String dialogMessage,
                               Component from,
                               boolean multiples,
                               List categories)
Overrides:
popupDataDialog in class DisplayControlImpl

initDone

public void initDone()
Overrides:
initDone in class DisplayControlImpl

makeScatterDisplay

public DisplayMaster makeScatterDisplay()
                                 throws VisADException,
                                        RemoteException
Throws:
VisADException
RemoteException

doMakeContents

public Container doMakeContents()
Overrides:
doMakeContents in class DisplayControlImpl

getScatterTabComponent

protected Component getScatterTabComponent()

makeImageDisplay

public DisplayMaster makeImageDisplay(MapProjection mapProj,
                                      FlatField image,
                                      FlatField mask_image,
                                      Range imageRange,
                                      ColorTable colorTable)
                               throws VisADException,
                                      RemoteException
Throws:
VisADException
RemoteException

getImageRange

public Range getImageRange(FlatField image)
                    throws VisADException,
                           RemoteException
Throws:
VisADException
RemoteException

getColorTable

public ColorTable getColorTable(FlatField image)
                         throws VisADException,
                                RemoteException
Throws:
VisADException
RemoteException

getDataProjection

public MapProjection getDataProjection(FlatField image)
                                throws VisADException,
                                       RemoteException
Throws:
VisADException
RemoteException

addMapDisplayables

public void addMapDisplayables(MapProjectionDisplayJ3D mapProjDsp)
                        throws VisADException,
                               RemoteException
Throws:
VisADException
RemoteException

getSelectByCurve

public boolean getSelectByCurve()

resample

private FlatField resample(FlatField X_field,
                           FlatField Y_field)
                    throws VisADException,
                           RemoteException
Throws:
VisADException
RemoteException

minmax

public static float[] minmax(float[] values)

getIsLatLon

public boolean getIsLatLon(FlatField field)
                    throws VisADException,
                           RemoteException
Throws:
VisADException
RemoteException