Package edu.wisc.ssec.mcidasv.control
Class RGBCompositeControl
java.lang.Object
ucar.unidata.collab.SharableImpl
ucar.unidata.idv.control.DisplayControlBase
ucar.unidata.idv.control.DisplayControlImpl
edu.wisc.ssec.mcidasv.control.RGBCompositeControl
- All Implemented Interfaces:
ActionListener
,ItemListener
,PropertyChangeListener
,EventListener
,HyperlinkListener
,Sharable
,DataChangeListener
,DisplayControl
,Prototypable
,ControlListener
,DisplayListener
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class ucar.unidata.idv.control.DisplayControlImpl
DisplayControlImpl.SideLegendLabel
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate double
private final JTextField
private final JTextField
private final JTextField
private ScalarMap
private final double[]
(package private) float[][]
private static final double
private DisplayMaster
static final String
private double
private final JTextField
private double
private final JTextField
private final JTextField
private final JTextField
private ScalarMap
private final double[]
(package private) float[][]
private ImageRGBDisplayable
Displayable for the dataprivate FieldImpl
(package private) final double[]
(package private) final double[]
(package private) final double[]
private static final org.slf4j.Logger
private MapProjection
private JCheckBox
private double
private final JTextField
private final JTextField
private final JTextField
private ScalarMap
private final double[]
(package private) float[][]
Fields inherited from class ucar.unidata.idv.control.DisplayControlImpl
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, contourWidget, controlContext, ctw, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayables, displayId, displayListTable, displayListTemplate, displayListUsesColor, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, isProgressiveResolution, matchDisplayRegion, noteTextArea, noteWrapper, paramName, reloadFromBounds, requestProperties, resolutionReadout, selectRangeWidget, settingVisibility, sharables, showNoteText, skipSlider, skipTextField, SLIDER_DEFAULT_MAJOR_TICK, SLIDER_DEFAULT_MAX, SLIDER_DEFAULT_MIN, SLIDER_DEFAULT_MINOR_TICK, SLIDER_DEFAULT_SKIP, version, viewManagers, ZFUDGE
Fields inherited from class ucar.unidata.idv.control.DisplayControlBase
APPEARANCE_DARK, APPEARANCE_IDV, APPEARANCE_LIGHT, 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_GRIDTRAJECTORY, 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_FHOUR2, MACRO_LONGNAME, MACRO_POSITION, MACRO_RESOLUTION, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
private static double
calculateRayleighReflectance
(double wavelength, double solarZenithRad, double satelliteZenithRad, double solarAzimuthRad, double satelliteAzimuthRad, double pressureHPa) (package private) boolean
static FieldImpl
correctRayleighVisible
(FieldImpl visibleField, FieldImpl satelliteZenithField, FieldImpl solarZenithField, FieldImpl satelliteAzimuthField, FieldImpl solarAzimuthField, double wavelengthVisible, double atmosphericPressure) Computes a Rayleigh scattering corrected 2D grid for visible range data.Make Gui contentsdouble
double[]
get MapProjection of data to displaydouble
getGamma()
double
double[]
protected ColorTable
A hook so derived classes can return a colortable.double
double[]
float[][]
getZeroOutArray
(float[][] array) boolean
init
(DataChoice dataChoice) Initialize this instance according to a data choice.void
initDone()
Called after all initialization has been done.(package private) void
setAllFields
(String txtl1, String txtl2) void
setBluGamma
(double gamma) void
setBluRange
(double[] range) void
setGamma
(double gamma) void
setGrnGamma
(double gamma) void
setGrnRange
(double[] range) void
setRedGamma
(double gamma) void
setRedRange
(double[] range) private void
updateBluGamma
(double gamma) private void
updateBluRange
(double lo, double hi) private void
updateGamma
(double gamma) private void
updateGrnGamma
(double gamma) private void
updateGrnRange
(double lo, double hi) private void
updateRedGamma
(double gamma) private void
updateRedRange
(double lo, double hi) 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, applyForecastHourMacro, applyLineWidth, applyPreferences, applyProperties, applyProperties, applyPropertyValues, applyRange, applySelectRange, applySkipFactor, applySmoothing, applyTextureQuality, applyTimeRange, applyZPosition, boundsClose, canBeDocked, canDataDoProgressiveResolution, canDoProgressiveResolution, canExportData, canSaveDataInCache, captureWindow, centerOnDisplay, changeColorUnit, changeDisplayUnit, checkBoundsChange, checkFlag, checkIfDataOk, checkImageSize, clearDataInstance, clearPrototype, clearViewManagers, clipDisplayedRange, close, colorUnitChanged, controlChanged, convertColorRange, convertRange, createDisplayListDisplayable, createIdvWindow, dataChanged, dataSelectionAdaptiveResolution, deactivateDisplays, debug, displayableToFront, displayChanged, displayControlFailed, displayUnitChanged, doApplyProperties, doExport, doInitialUpdateLegendAndList, doMakeBottomLegendComponent, doMakeChangeColorMenu, doMakeChangeColorMenu, doMakeChangeParameterMenuItem, doMakeColorControl, doMakeColorControl, doMakeColorScales, doMakeDataInstance, doMakeMenuBar, doMakeMenuBarMenus, doMakePointSizeWidget, doMakeRemoveControl, doMakeSideLegendComponent, doMakeSkipFactorSlider, doMakeSkipFactorSlider, doMakeTextureSlider, doMakeVisibilityControl, doMakeWidgetComponent, doMakeWindow, doMakeZPositionSlider, doMakeZPositionSlider, doRemove, doRemoveWithPrompt, exportDisplayedData, findDisplayInfo, findDisplays, findDisplays, firePropertyChangeEvent, firstFrameDone, forceUpdateList, 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, getDataProjectionForMenu, getDataProjectionLabel, getDataSelection, getDataSources, getDataTimeRange, getDataTimeRange, getDataTimeSet, getDebugDetails, getDefaultColorScaleInfo, getDefaultDisplayListTemplate, getDefaultDisplayListTemplateJPSS, getDefaultDisplayListTemplatePoint, 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, getInitialFastRendering, getInitialRange, getInitialZPosition, getInternalAnimation, getInternalAnimation, getIsProgressiveResolution, getIsRaster, getIsTimeDriver, getLabel, getLastFileMenuItems, getLatLonPoints, getLegendButtons, getLegendComponent, getLegendLabel, getLegendLabels, getLegendLabelTemplate, getLegendToolTip, getLineWidth, getLineWidthWidget, getLineWidthWidgetLabel, getLockVisibilityToggle, getLongParamName, getMacroNames, getMainPanel, getMainPanelSize, getMakeWindow, getMapDisplay, getMapViewManager, getMapViewProjection, getMatchDisplayRegion, 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, getShoulDoProgressiveResolution, 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, hasForecastHourMacro, hasMapProjection, hasTimeMacro, haveDataTimes, haveParameterDefaults, hide, hyperlinkUpdate, inGlobeDisplay, init, init, init, initAfterUnPersistence, initAfterUnPersistence, initAsPrototype, initAsTemplate, initBasic, initializeWithNewData, initWindow, isDisplay3D, isDisplayUnitAlsoColorUnit, isGuiShown, isInitDone, isInTransectView, isInViewManager, isRectBad, itemStateChanged, makeChangeColorMenuItems, makeLegendLabel, makeLockButton, makeMiscButton, makeRemoveButton, moveTo, notifyViewManagersOfChange, parseProperties, popup, popupDataDialog, popupDataDialog, popupDataDialog, processRequestProperties, projectionChanged, propertyChange, putTransientProperty, reallySetAttributeFlags, receiveShareData, redoGuiLayout, reloadDataSource, reloadDataSourceInThread, relocateDisplay, relocateDisplay, 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, setIsProgressiveResolution, setIsRaster, setIsTimeDriver, setLabelAsPreference, setLegendBackground, setLegendForeground, setLegendLabel, setLegendLabelTemplate, setLineWidth, setLockVisibilityToggle, setMainPanelDimensions, setMainPanelSize, setMakeWindow, setMatchDisplayRegion, 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, setViewManagerDisplayListColor, 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, updateMiscButton, 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 Details
-
FORMULA_IN_PROGRESS_FLAG
- See Also:
-
logger
-
imageDisplay
Displayable for the data -
displayMaster
-
redMap
-
grnMap
-
bluMap
-
redTable
float[][] redTable -
grnTable
float[][] grnTable -
bluTable
float[][] bluTable -
redRange
-
grnRange
-
bluRange
-
initRedRange
-
initGrnRange
-
initBluRange
-
imageField
-
mapProjection
-
DEFAULT_GAMMA
- See Also:
-
gamma
-
redGamma
-
grnGamma
-
bluGamma
-
matchFieldsCbox
-
gammaTxtFld
-
redGammaTxtFld
-
grnGammaTxtFld
-
bluGammaTxtFld
-
redLowTxtFld
-
redHighTxtFld
-
grnLowTxtFld
-
grnHighTxtFld
-
bluLowTxtFld
-
bluHighTxtFld
-
-
Constructor Details
-
RGBCompositeControl
public RGBCompositeControl()
-
-
Method Details
-
init
Description copied from class:ucar.unidata.idv.control.DisplayControlImpl
Initialize this instance according to a data choice. Subclasses should override this method. Overridding methods should probably invoke
DisplayControlImpl.setData(DataChoice)
as part of their initialization procedure -- although it is unclear when this is actually necessary.This implementation simply returns
true
.- Overrides:
init
in classDisplayControlImpl
- Parameters:
dataChoice
- A data choice ornull
.- Returns:
true
if and only if this instance was correctly initialized by the data choice.- Throws:
VisADException
- if a VisAD Failure occurs.RemoteException
- if a Java RMI failure occurs.
-
initDone
Description copied from class:ucar.unidata.idv.control.DisplayControlImpl
Called after all initialization has been done. A hook that allows derived classes to do any further initialization.- Overrides:
initDone
in classDisplayControlImpl
-
getDataProjection
Description copied from class:ucar.unidata.idv.control.DisplayControlImpl
get MapProjection of data to display- Specified by:
getDataProjection
in interfaceDisplayControl
- Overrides:
getDataProjection
in classDisplayControlImpl
- Returns:
- The native projection of the data
-
checkRange
boolean checkRange() -
updateRedRange
-
setRedRange
-
getRedRange
-
updateGrnRange
-
setGrnRange
-
getGrnRange
-
updateBluRange
-
setBluRange
-
getBluRange
-
setRedGamma
-
getRedGamma
-
setGrnGamma
-
getGrnGamma
-
setBluGamma
-
getBluGamma
-
setGamma
-
getGamma
-
correctRayleighVisible
public static FieldImpl correctRayleighVisible(FieldImpl visibleField, FieldImpl satelliteZenithField, FieldImpl solarZenithField, FieldImpl satelliteAzimuthField, FieldImpl solarAzimuthField, double wavelengthVisible, double atmosphericPressure) throws VisADException, RemoteException Computes a Rayleigh scattering corrected 2D grid for visible range data.- Parameters:
wavelengthVisible
- Wavelength of the visible band (in micrometers).atmosphericPressure
- Atmospheric pressure at the surface (in hPa).visibleDataGrid
- 2D grid of remote sensing data in the visible range (assuming it represents top-of-atmosphere radiance or reflectance).satelliteZenithGrid
- 2D grid of satellite zenith angles (in degrees).solarZenithGrid
- 2D grid of solar zenith angles (in degrees).satelliteAzimuthGrid
- 2D grid of satellite azimuth angles (in degrees).solarAzimuthGrid
- 2D grid of solar azimuth angles (in degrees).- Returns:
- A 2D grid representing the Rayleigh scattering corrected data.
- Throws:
IllegalArgumentException
- if input grid dimensions are inconsistent.VisADException
RemoteException
-
calculateRayleighReflectance
private static double calculateRayleighReflectance(double wavelength, double solarZenithRad, double satelliteZenithRad, double solarAzimuthRad, double satelliteAzimuthRad, double pressureHPa) -
applyRayleighCorrection
-
updateGamma
-
updateRedGamma
-
updateGrnGamma
-
updateBluGamma
-
getZeroOutArray
-
getInitialColorTable
Description copied from class:ucar.unidata.idv.control.DisplayControlImpl
A hook so derived classes can return a colortable. This method uses theDisplayConventions
to get the color table based on the paramName- Overrides:
getInitialColorTable
in classDisplayControlImpl
- Returns:
- The color table to use
-
setAllFields
-
doMakeContents
Description copied from class:ucar.unidata.idv.control.DisplayControlImpl
Make Gui contents- Overrides:
doMakeContents
in classDisplayControlImpl
- Returns:
- User interface contents
-