public abstract class CrossSectionControl extends GridDisplayControl implements DisplayableData.DragAdapter
DisplayControlImpl.SideLegendLabel
Modifier and Type | Field and Description |
---|---|
protected visad.CoordinateSystem |
coordTrans
transform to altitude
|
protected CrossSectionViewManager |
crossSectionView
the control window's view manager
|
protected CrossSectionSelector |
csSelector
the cross section selector
|
protected boolean |
dataIs3D
flag for 3D data
|
protected boolean |
displayIs3D
flag for 3D display
|
protected Coord |
endCoord
ending coordinate for the cross section selector
|
protected visad.georef.EarthLocation |
endLocation
ending location in earth coordinates
|
static java.lang.String |
SHARE_XSLINE
Identifier for sharing cross-section position
|
protected int |
sizeX
X and Y size
|
protected int |
sizeY
X and Y size
|
protected Coord |
startCoord
starting coordinate for the cross section selector
|
protected visad.georef.EarthLocation |
startLocation
starting location in earth coordinates
|
protected DisplayableData |
vcsDisplay
Displayable for depicting cross section in the control window
|
protected DisplayableData |
xsDisplay
Displayable for depicting cross section in the main window
|
CMD_CONTOURDIALOG, CMD_SETLEVELS, gridDataInstance, INITIAL_PROBE_EARTHLOCATION, log_, settingLevel
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, contourWidget, controlContext, ctw, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayListTable, displayListUsesColor, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, isProgressiveResolution, matchDisplayRegion, noteTextArea, noteWrapper, paramName, reloadFromBounds, requestProperties, resolutionReadout, selectRangeWidget, settingVisibility, sharables, showNoteText, skipSlider, version, viewManagers, ZFUDGE
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, 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
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 and Description |
---|
CrossSectionControl()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addDisplaySettings(DisplaySettingsDialog dsd)
Add display settings for cross section controls
|
protected void |
addLabelMacros(java.lang.String template,
java.util.List patterns,
java.util.List values)
Add any macro name/value pairs.
|
void |
addPropertiesComponents(javax.swing.JTabbedPane jtp)
Add tabs to the properties dialog.
|
protected void |
addTopographyMap()
Wrapper around
GridDisplayControl.addTopographyMap(int) to allow subclasses
to set their own index. |
void |
applyPreferences()
Apply preferences to this control.
|
protected void |
applySmoothing()
Use the value of the smoothing type and weight to subset the data.
|
protected void |
applyZPosition()
Apply the Z position.
|
visad.georef.EarthLocation |
boxToEarth(visad.RealTuple tuple)
Transform VisAD box coordinates to and EarthLocation
|
boolean |
canExportData()
Can this display control write out data.
|
boolean |
constrainDragPoint(float[] position)
Constrain the drag point
|
Coord |
convertToDisplay(Coord from)
Convert a Coord (x, y, z) in grid index values
to a Coord in VisAD internal values; -1.0 to 1.0 in VisAD box.
|
protected void |
createCrossSectionSelector()
Make a Selector line which shows and controls where cross section is
|
protected void |
createCrossSectionSelector(visad.georef.EarthLocation loc1,
visad.georef.EarthLocation loc2)
Create the cross section selector
|
protected void |
createCrossSectionSelector1(visad.RealTuple start,
visad.RealTuple end)
Create the cross section selector
|
protected abstract DisplayableData |
createVCSDisplay()
Create the
DisplayableData that will be used
to depict the data in the control's display. |
protected float[] |
createXFromLatLon(float[][] latlon,
int numNeeded,
int lonIndex)
From an array of latitudes and longitudes, calculate an
array of distance (in km) that corresponds to the distance
from the first point to the numNeeded point.
|
protected abstract DisplayableData |
createXSDisplay()
Create the
DisplayableData that will be used
to depict the data in the main display. |
void |
crossSectionChanged()
Load or reload data for a cross section.
|
boolean |
doApplyProperties()
Apply the properties
|
void |
doExport(java.lang.String what,
java.lang.String filename)
Called by ISL.
|
java.awt.Container |
doMakeContents()
Called by doMakeWindow in DisplayControlImpl, which then calls its
doMakeMainButtonPanel(), which makes more buttons.
|
void |
doRemove()
Remove the cross section view component from the gui to fix the funny lock up problem on linux
|
boolean |
getAllowAutoScale()
Get the AutoScale property.
|
AnimationInfo |
getAnimationInfo()
Get the AnimationInfo property.
|
boolean |
getAutoScaleYAxis()
Get the AutoScale property.
|
boolean |
getAutoUpdate()
Get the AutoUpdate property.
|
void |
getControlWidgets(java.util.List controlWidgets)
Get the control widgets specific to this control
|
CrossSectionSelector |
getCrossSectionSelector()
Get the selector used to position the cross section.
|
Range |
getCrossSectionVerticalRange(visad.GriddedSet domainSet)
_more_
|
CrossSectionViewManager |
getCrossSectionView()
Get the CrossSectionView property.
|
protected java.lang.String |
getCrossSectionViewLabel()
Get the label for the CrossSectionView
|
protected CrossSectionViewManager |
getCrossSectionViewManager()
Get the view manager for the control window.
|
java.util.List |
getCursorReadoutInner(visad.georef.EarthLocation el,
visad.Real animationValue,
int animationStep,
java.util.List<ReadoutInfo> samples)
Get the cursor readout info
|
visad.georef.MapProjection |
getDataProjection()
Get the projection of the data.
|
Range |
getDataVerticalRange()
_more_
|
Range |
getDefaultVerticalRange()
_more_
|
protected visad.Data |
getDisplayedData()
Get the DisplayedData
|
protected javax.swing.JComponent |
getDisplayTabComponent()
Create the component that goes into the 'Display' tab
|
protected void |
getEditMenuItems(java.util.List items,
boolean forMenuBar)
Get edit menu item
|
visad.RealTuple |
getEndPoint()
Set the probe position property; used by XML persistence.
|
GridDisplayable |
getGridDisplayable()
Get the
GridDisplayable used for setting the
data. |
protected double |
getInitialZPosition()
Get the initial Z position
|
protected visad.georef.EarthLocation[] |
getLineCoords()
Get the line coordinates as an array of EarthLocations
|
Range |
getLineRange()
get line range -- should be overridden by sub classes that
actually set the value
|
boolean |
getLineVisible()
Get the LineVisible property.
|
protected void |
getMacroNames(java.util.List names,
java.util.List labels)
Add any macro name/label pairs
|
double |
getSelectorAltitude()
Get the selector altitude from the Z position
|
protected int |
getSelectorAttributeFlags()
Return the attribute flags to apply to the cross section selector.
|
visad.RealTuple |
getStartPoint()
Set the probe position property; used by XML persistence.
|
Range |
getVerticalAxisRange()
Get the range on the vertical Axis of the cross section
|
DisplayableData |
getVerticalCSDisplay()
Get the
DisplayableData used for depicting
data in the control's display. |
ViewManager |
getViewManagerForCapture(java.lang.String what)
Get the view manager for capture
|
protected void |
getViewMenuItems(java.util.List menus,
boolean forMenuBar)
Add the relevant view menu items into the list
|
DisplayableData |
getXSDisplay()
Get the
DisplayableData used for depicting
data in the main display. |
protected java.lang.String |
getZPositionSliderLabel()
Get the label for the Z position slider.
|
boolean |
handleAddPoint(float[] x)
Handle adding a point
|
boolean |
handleDragDirect(visad.VisADRay ray,
boolean first,
int mouseModifiers)
Implementation of the DisplayableData.DragAdapter
|
boolean |
init(DataChoice dataChoice)
Initialize the control using the data choice
|
void |
initAfterUnPersistence(ControlContext vc,
java.util.Hashtable properties,
java.util.List preSelectedDataChoices)
Called by the
IntegratedDataViewer to
initialize after this control has been unpersisted |
void |
initDone()
Called after all initialization is finished.
|
protected void |
load2DData(visad.FieldImpl twoDData)
Load the 2D data into the appropriate display(s)
|
protected void |
loadData(visad.FieldImpl fieldImpl)
Load the external display and the local display
with this data of a vertical cross section.
|
protected void |
loadDataFromLine()
Create and loads a 2D FieldImpl from the existing getGridDataInstance()
at the position indicated by the controlling Selector line end points;
|
protected visad.FieldImpl |
make2DData(visad.FieldImpl xsectSequence)
Make a FieldImpl suitable for the plain 2D vert cross section display;
of form (time -> ((x) -> parm));
new x axis positions are in distance along cross section from one end.
|
protected visad.GriddedSet |
make2DDomainSet(visad.GriddedSet domainSet)
Make the domain for the 2D grid
|
void |
projectionChanged()
Respond to a change in the display's projection.
|
void |
propertyChange(java.beans.PropertyChangeEvent evt)
Handle property change
|
void |
receiveShareData(Sharable from,
java.lang.Object dataId,
java.lang.Object[] data)
Called when shared data is received.
|
void |
relocateDisplay(ucar.unidata.geoloc.LatLonRect originalBounds,
ucar.unidata.geoloc.LatLonRect newBounds,
boolean useDataProjection)
When we relocate a bundle this gets called to relocate the display
This method gets overwritten by the probe and cross section displays
so they can move their selection points to a new location
|
protected void |
reScale()
Call to reScale the display.
|
void |
setAllowAutoScale(boolean value)
Set the AutoScale property.
|
void |
setAnimationInfo(AnimationInfo value)
Set the AnimationInfo property.
|
void |
setAutoScaleYAxis(boolean value)
Set the AutoScale property.
|
void |
setAutoUpdate(boolean value)
Set the AutoUpdate property.
|
void |
setBackground(java.awt.Color color)
Deprecated.
Keep this around for old bundles
|
void |
setCrossSectionView(CrossSectionViewManager value)
Set the CrossSectionView property.
|
protected boolean |
setData(DataChoice dataChoice)
Called when the user asked for a new kind of parameter to be displayed
in a pre-existing display of this class, with other kind of data
already displayed there.
|
void |
setDisplayMatrix(double[] value)
Deprecated.
Keep this around for old bundles
|
void |
setEndCoord(Coord c)
Set the ending coordinate of the cross section selector.
|
void |
setEndPoint(visad.RealTuple p)
Set the probe position property; used by XML persistence.
|
void |
setForeground(java.awt.Color color)
Deprecated.
Keep this around for old bundles
|
void |
setInitAlt(double value)
_more_
|
void |
setInitLat1(double value)
Set the InitLat1 property.
|
void |
setInitLat2(double value)
Set the Lat2 property.
|
void |
setInitLon1(double value)
Set the Lon1 property.
|
void |
setInitLon2(double value)
Set the Lon2 property.
|
void |
setLineVisible(boolean value)
Set the LineVisible property.
|
protected void |
setPosition(visad.georef.EarthLocation startLoc,
visad.georef.EarthLocation endLoc)
Set the position of the selector
|
void |
setStartCoord(Coord c)
Set the starting coordinate of the cross section selector.
|
void |
setStartPoint(visad.RealTuple p)
Set the probe position property; used by XML persistence.
|
void |
setVerticalAxisRange(Range range)
Set the range on the Y Axis of the cross section
|
protected void |
setYAxisRange(XSDisplay display,
Range range)
Methods to do the things that need to be done when the data range
changes.
|
protected boolean |
shouldAddControlListener()
A hook to allow derived classes to tell us to add this
as a control listener
|
void |
transectChanged()
Method called when a transect changes.
|
protected void |
updateLocationLabel()
Called when a change in position occurs
|
protected void |
updateViewParameters()
This method is used to update anything that needs to be updated
in the CrossSectionViewManager.
|
void |
viewpointChanged()
Noop for the ControlListener interface
|
actionPerformed, addTopographyMap, addTopographyMap, applyForecastHourMacro, canDoProgressiveResolution, convertColorRange, doMakeContourLevelControl, doMakeDataInstance, doMakeLevelControl, doMakeLevelControl, exportDisplayedData, getColorParamName, getColorRangeFromData, getColorRangeIndex, getColorUnit, getContourInfo, getCursorReadoutData, getDataRangeInColorUnits, getDefaultContourInfo, getDisplayUnit, getGridDataInstance, getInitialColorTable, getInitialRange, getRawDataUnit, haveMultipleFields, initializeDefaultContourInfo, isDisplayUnitAlsoColorUnit, normalizeRectangle, setLevel, setLevel, setLevelFromUser, shouldAddDisplayListener
activateDisplays, addAttributedDisplayable, addAttributedDisplayable, addAttributedDisplayable, addAttributeFlags, addCheckBoxSettings, addDataChoice, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayMaster, addNewData, addNoteText, addPropertyChangeListener, addRemovable, addSharable, addTimeModeWidget, addToControlContext, addToRangeMenu, addToRangeMenu, addToRangeMenu, addViewManager, appendDataChoices, applyAttributesToDisplayables, applyColor, applyColorScaleInfo, applyColorTable, applyColorUnit, applyContourInfo, applyDisplaySetting, applyDisplayUnit, applyLineWidth, applyProperties, applyProperties, applyPropertyValues, applyRange, applySelectRange, applySkipFactor, applyTextureQuality, applyTimeRange, boundsClose, canBeDocked, canSaveDataInCache, captureWindow, centerOnDisplay, changeColorUnit, changeDisplayUnit, checkBoundsChange, checkFlag, checkIfDataOk, checkImageSize, clearDataInstance, clearPrototype, clearViewManagers, close, colorUnitChanged, controlChanged, convertColorRange, convertRange, createDisplayListDisplayable, createIdvWindow, dataChanged, deactivateDisplays, debug, displayableToFront, displayChanged, displayControlFailed, displayUnitChanged, doInitialUpdateLegendAndList, doMakeBottomLegendComponent, doMakeChangeColorMenu, doMakeChangeColorMenu, doMakeChangeParameterMenuItem, doMakeColorControl, doMakeColorControl, doMakeColorScales, doMakeMenuBar, doMakeMenuBarMenus, doMakePointSizeWidget, doMakeRemoveControl, doMakeSideLegendComponent, doMakeSkipFactorSlider, doMakeTextureSlider, doMakeVisibilityControl, doMakeWidgetComponent, doMakeWindow, doMakeZPositionSlider, findDisplayInfo, findDisplays, findDisplays, firePropertyChangeEvent, firstFrameDone, formatForCursorReadout, getActive, getAnimation, getAnimation, getAnimation, getAnimation, getAnimationWidget, getAttributeFlags, getCachedData, getCanDoRemoveAll, getCategories, getChangeParameterLabel, getCollapseLegend, getColor, getColorDimness, getColorScaleInfo, getColorTable, getColorTableForDisplayable, getColorTableToApply, getColorTableWidget, getColorUnitName, getColorWidgetLabel, getComponentHolder, getContents, getControlChangeSleepTime, getControlContext, getControlMenus, getCursorReadout, getCursorReadoutInner, getData, getDataChoice, getDataChoices, getDataForDisplayList, getDataInstance, getDataInstance, getDataProjectionForMenu, getDataProjectionLabel, getDataSelection, getDataSources, getDataTimeRange, getDataTimeRange, getDataTimeSet, getDebugDetails, getDefaultColorScaleInfo, getDefaultDisplayListTemplate, getDefaultDistanceUnit, getDefaultFastRendering, getDefaultSamplingMode, getDefaultSamplingModeValue, getDefaultView, getDefaultViewDescriptor, getDefaultViewManager, getDetailsContents, getDisplayAltitudeType, getDisplayCategory, getDisplayCenter, getDisplayConventions, getDisplayId, getDisplayInfos, getDisplayListColor, getDisplayListData, getDisplayListDisplayable, getDisplayListTemplate, getDisplayMaster, getDisplayName, getDisplayScale, getDisplayUnit, getDisplayUnitName, getDisplayVisibility, getDoCursorReadout, getEditMenuItems, getExpandedInTabs, getExtraLabelTemplate, getExtraLegendComponent, getExtraMenus, getFileMenuItems, getFileMenuItems, getGraphicsConfiguration, getGrid, getGrid, getHadDataChoices, getHaveInitialized, getHelpIds, getHelpMenuItems, getId, getIdv, getImage, getImage, getInitDataChoices, getInitialFastRendering, getInternalAnimation, getInternalAnimation, getIsProgressiveResolution, getIsRaster, getIsTimeDriver, getLabel, getLastFileMenuItems, getLatLonPoints, getLegendButtons, getLegendComponent, getLegendLabel, getLegendLabels, getLegendLabelTemplate, getLegendToolTip, getLineWidth, getLineWidthWidget, getLineWidthWidgetLabel, getLockVisibilityToggle, getLongParamName, getMainPanel, getMainPanelSize, getMakeWindow, getMapDisplay, getMapViewManager, getMapViewProjection, getMatchDisplayRegion, getMenuLabel, getMyDataChoices, getNavigatedDisplay, getNoteText, getObjectStore, getOkToFireEvents, getOldColorTableOrInitialColorTable, getOriginalDataChoicesLabel, getOuterContents, getPointSize, getProperty, getProperty, getPropertyDisplayName, getRange, getRangeForColorTable, getRangeToApply, 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, getViewManagers, getViewMenuItems, getVisbilityAnimationPause, getWasUnPersisted, getWindow, getWindowSize, getWindowVisible, getWindowX, getWindowY, getZPosition, guiExported, guiImported, handleDisplayChanged, handleWindowClosing, hasForecastHourMacro, hasMapProjection, hasTimeMacro, haveDataTimes, haveParameterDefaults, hide, hyperlinkUpdate, inGlobeDisplay, init, init, init, initAfterUnPersistence, initAsPrototype, initAsTemplate, initBasic, initializeWithNewData, initWindow, isDisplay3D, isGuiShown, isInitDone, isInTransectView, isInViewManager, itemStateChanged, loadDataFromViewBounds, makeChangeColorMenuItems, makeLegendLabel, makeLockButton, makeRemoveButton, moveTo, notifyViewManagersOfChange, parseProperties, popup, popupDataDialog, popupDataDialog, popupDataDialog, processRequestProperties, putTransientProperty, reallySetAttributeFlags, redoGuiLayout, reloadDataSource, reloadDataSourceInThread, relocateDisplay, removeDataChoice, removeDisplayable, removeDisplayables, removeDisplayables, removeOnWindowClose, removePropertyChangeListener, resetData, resetDimness, resetViewManager, revertToDefaultColorTable, revertToDefaultColorTable, revertToDefaultRange, revertToDefaultRange, saveAsFavorite, saveAsParameterDefaults, saveAsPrototype, saveAsTemplate, saveDataChoiceInCache, saveImage, saveProjection, selectDataChoices, 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, setDisplayAreaSubset, setDisplayCategory, setDisplayId, setDisplayInactive, setDisplayListColor, setDisplayListColor, setDisplayListProperties, setDisplayListTemplate, setDisplayListTimeZone, 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, 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, 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, updateAnimation, updateDataInstance, updateDataSelection, updateDisplayList, updateGridDataInstance, updateLegendAndList, updateLegendLabel, updateLockButton, useSmoothingFactor, useZPosition, viewManagerChanged, viewManagerDestroyed, writeTestArchive, xxxsetDisplayActive, zSliderChanged
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
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialog
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getTmpProperty, putTmpProperty, removeTmpProperty
getReceiveShareTime, getShareGroup, getSharing, getUniqueId, setReceiveShareTime
public static final java.lang.String SHARE_XSLINE
protected DisplayableData vcsDisplay
protected DisplayableData xsDisplay
protected CrossSectionSelector csSelector
protected CrossSectionViewManager crossSectionView
protected visad.CoordinateSystem coordTrans
protected int sizeX
protected int sizeY
protected boolean displayIs3D
protected boolean dataIs3D
protected Coord startCoord
protected Coord endCoord
protected visad.georef.EarthLocation startLocation
protected visad.georef.EarthLocation endLocation
public CrossSectionControl()
protected abstract DisplayableData createXSDisplay() throws visad.VisADException, java.rmi.RemoteException
DisplayableData
that will be used
to depict the data in the main display.visad.VisADException
- unable to create depictorjava.rmi.RemoteException
- unable to create depictor (shouldn't happen)protected abstract DisplayableData createVCSDisplay() throws visad.VisADException, java.rmi.RemoteException
DisplayableData
that will be used
to depict the data in the control's display.visad.VisADException
- unable to create depictorjava.rmi.RemoteException
- unable to create depictor (shouldn't happen)public GridDisplayable getGridDisplayable()
GridDisplayable
used for setting the
data.GridDisplayable
public DisplayableData getVerticalCSDisplay()
DisplayableData
used for depicting
data in the control's display.public DisplayableData getXSDisplay()
DisplayableData
used for depicting
data in the main display.public CrossSectionSelector getCrossSectionSelector()
public void initAfterUnPersistence(ControlContext vc, java.util.Hashtable properties, java.util.List preSelectedDataChoices)
IntegratedDataViewer
to
initialize after this control has been unpersistedinitAfterUnPersistence
in interface DisplayControl
initAfterUnPersistence
in class DisplayControlImpl
vc
- The context in which this control existsproperties
- Properties that may hold thingspreSelectedDataChoices
- set of preselected data choicesprotected CrossSectionViewManager getCrossSectionViewManager()
public ViewManager getViewManagerForCapture(java.lang.String what) throws java.lang.Exception
getViewManagerForCapture
in class DisplayControlImpl
what
- the namejava.lang.Exception
- problem getting the view managerpublic boolean init(DataChoice dataChoice) throws visad.VisADException, java.rmi.RemoteException
init
in class DisplayControlImpl
dataChoice
- choice specifying the datajava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void addDisplaySettings(DisplaySettingsDialog dsd)
addDisplaySettings
in class DisplayControlImpl
dsd
- the dialog to add topublic java.util.List getCursorReadoutInner(visad.georef.EarthLocation el, visad.Real animationValue, int animationStep, java.util.List<ReadoutInfo> samples) throws java.lang.Exception
getCursorReadoutInner
in class GridDisplayControl
el
- earth locationanimationValue
- animation valueanimationStep
- animation stepsamples
- the list of samplesjava.lang.Exception
- problem reading the dataprotected int getSelectorAttributeFlags()
public visad.georef.MapProjection getDataProjection()
getDataProjection
in interface DisplayControl
getDataProjection
in class GridDisplayControl
public void initDone()
initDone
in class DisplayControlImpl
public boolean handleDragDirect(visad.VisADRay ray, boolean first, int mouseModifiers)
handleDragDirect
in interface DisplayableData.DragAdapter
ray
- the view rayfirst
- if this is the first timemouseModifiers
- the mouse modifierspublic boolean handleAddPoint(float[] x)
handleAddPoint
in interface DisplayableData.DragAdapter
x
- the coordspublic void doExport(java.lang.String what, java.lang.String filename) throws java.lang.Exception
doExport
in class GridDisplayControl
what
- What is to be written outfilename
- To what filejava.lang.Exception
- _more_public visad.georef.EarthLocation boxToEarth(visad.RealTuple tuple) throws java.rmi.RemoteException, visad.VisADException
tuple
- the tuple of VisAD coordinatesjava.rmi.RemoteException
- Java RMI Exceptionvisad.VisADException
- VisAD Exceptionpublic boolean constrainDragPoint(float[] position)
constrainDragPoint
in interface DisplayableData.DragAdapter
position
- the positionprotected void getMacroNames(java.util.List names, java.util.List labels)
getMacroNames
in class DisplayControlImpl
names
- List of macro nameslabels
- List of macro labelsprotected void addLabelMacros(java.lang.String template, java.util.List patterns, java.util.List values)
addLabelMacros
in class DisplayControlImpl
template
- The template to usepatterns
- The macro namesvalues
- The macro valuespublic void propertyChange(java.beans.PropertyChangeEvent evt)
propertyChange
in interface java.beans.PropertyChangeListener
propertyChange
in class DisplayControlImpl
evt
- The eventpublic void doRemove() throws java.rmi.RemoteException, visad.VisADException
doRemove
in interface DisplayControl
doRemove
in class DisplayControlImpl
java.rmi.RemoteException
- On badnessvisad.VisADException
- On badnesspublic void addPropertiesComponents(javax.swing.JTabbedPane jtp)
addPropertiesComponents
in class DisplayControlImpl
jtp
- the JTabbedPane to add topublic boolean doApplyProperties()
doApplyProperties
in class DisplayControlImpl
public java.awt.Container doMakeContents()
doMakeContents
in class DisplayControlImpl
protected void getEditMenuItems(java.util.List items, boolean forMenuBar)
getEditMenuItems
in class DisplayControlImpl
items
- list of items to add toforMenuBar
- for the menu barprotected javax.swing.JComponent getDisplayTabComponent()
public void getControlWidgets(java.util.List controlWidgets) throws visad.VisADException, java.rmi.RemoteException
getControlWidgets
in class DisplayControlImpl
controlWidgets
- list of widgets to add to.java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected boolean setData(DataChoice dataChoice) throws visad.VisADException, java.rmi.RemoteException
setData
in class DisplayControlImpl
dataChoice
- specification of the datajava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void updateViewParameters() throws visad.VisADException, java.rmi.RemoteException
java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorpublic void setStartCoord(Coord c)
c
- starting coordinatepublic void setEndCoord(Coord c)
c
- ending coordinatepublic void relocateDisplay(ucar.unidata.geoloc.LatLonRect originalBounds, ucar.unidata.geoloc.LatLonRect newBounds, boolean useDataProjection)
relocateDisplay
in class DisplayControlImpl
originalBounds
- The original bounds of the datasourcenewBounds
- The relocated bounds of the datasourceuseDataProjection
- _more_protected void createCrossSectionSelector() throws visad.VisADException, java.rmi.RemoteException
java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void createCrossSectionSelector(visad.georef.EarthLocation loc1, visad.georef.EarthLocation loc2) throws visad.VisADException, java.rmi.RemoteException
loc1
- the starting locationloc2
- the ending locationjava.rmi.RemoteException
- Java RMI Exceptionvisad.VisADException
- VisAD Exceptionprotected void createCrossSectionSelector1(visad.RealTuple start, visad.RealTuple end) throws visad.VisADException, java.rmi.RemoteException
start
- the starting locationend
- the ending locationjava.rmi.RemoteException
- Java RMI Exceptionvisad.VisADException
- VisAD Exceptionpublic Coord convertToDisplay(Coord from) throws visad.VisADException, java.rmi.RemoteException
from
- a Coord (x, y, z) in grid index values.java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorpublic void receiveShareData(Sharable from, java.lang.Object dataId, java.lang.Object[] data)
receiveShareData
in interface Sharable
receiveShareData
in class DisplayControlImpl
from
- object sharing datadataId
- type of data being shareddata
- the sharable dataprotected void applyZPosition() throws visad.VisADException, java.rmi.RemoteException
applyZPosition
in class DisplayControlImpl
java.rmi.RemoteException
- Java RMI Exceptionvisad.VisADException
- VisADExceptionprotected void setPosition(visad.georef.EarthLocation startLoc, visad.georef.EarthLocation endLoc) throws visad.VisADException, java.rmi.RemoteException
startLoc
- Start locationendLoc
- End locationjava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorpublic double getSelectorAltitude()
public void crossSectionChanged()
public void projectionChanged()
projectionChanged
in interface DisplayControl
projectionChanged
in class DisplayControlImpl
public void viewpointChanged()
viewpointChanged
in class DisplayControlImpl
protected void getViewMenuItems(java.util.List menus, boolean forMenuBar)
getViewMenuItems
in class DisplayControlImpl
menus
- List of menu itemsforMenuBar
- Is this for the menu in the window's menu bar or
for a popup menu in the legendprotected java.lang.String getCrossSectionViewLabel()
protected boolean shouldAddControlListener()
shouldAddControlListener
in class GridDisplayControl
public void transectChanged()
transectChanged
in interface DisplayControl
transectChanged
in class DisplayControlImpl
protected visad.georef.EarthLocation[] getLineCoords() throws visad.VisADException, java.rmi.RemoteException
java.rmi.RemoteException
- Java RMI Exceptionvisad.VisADException
- Problem creating EarthLocationsprotected void loadDataFromLine() throws visad.VisADException, java.rmi.RemoteException
visad.VisADException
- VisAD failure.java.rmi.RemoteException
- Java RMI failure.protected void loadData(visad.FieldImpl fieldImpl) throws visad.VisADException, java.rmi.RemoteException
fieldImpl
- the data for the depictionjava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void load2DData(visad.FieldImpl twoDData) throws visad.VisADException, java.rmi.RemoteException
twoDData
- cross section slice converted to 2Djava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void applySmoothing() throws visad.VisADException, java.rmi.RemoteException
applySmoothing
in class DisplayControlImpl
java.rmi.RemoteException
- Java RMI problemvisad.VisADException
- VisAD problemprotected void reScale() throws visad.VisADException, java.rmi.RemoteException
java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorpublic void setVerticalAxisRange(Range range)
range
- Range of values in units of Y Axis. May be nullpublic Range getVerticalAxisRange()
protected void setYAxisRange(XSDisplay display, Range range) throws visad.VisADException, java.rmi.RemoteException
display
- the display to modifyrange
- Range of values in units of Y Axis. May be nulljava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected visad.FieldImpl make2DData(visad.FieldImpl xsectSequence) throws visad.VisADException, java.rmi.RemoteException
xsectSequence
- the time sequence of cross section datajava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorpublic Range getCrossSectionVerticalRange(visad.GriddedSet domainSet) throws visad.VisADException
domainSet
- _more_visad.VisADException
- _more_public Range getDefaultVerticalRange()
public Range getDataVerticalRange()
protected visad.GriddedSet make2DDomainSet(visad.GriddedSet domainSet) throws visad.VisADException, java.rmi.RemoteException
domainSet
- the domain to be 2D'izedjava.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected java.lang.String getZPositionSliderLabel()
getZPositionSliderLabel
in class DisplayControlImpl
public void setAnimationInfo(AnimationInfo value)
setAnimationInfo
in class DisplayControlImpl
value
- The new value for AnimationInfopublic AnimationInfo getAnimationInfo()
getAnimationInfo
in class DisplayControlImpl
protected float[] createXFromLatLon(float[][] latlon, int numNeeded, int lonIndex)
latlon
- array of lat lon values in degrees (order doesn't matter)numNeeded
- number of distances to calculatelonIndex
- which of the indices in latlon is longitudepublic void applyPreferences()
applyPreferences
in interface DisplayControl
applyPreferences
in class DisplayControlImpl
protected void addTopographyMap() throws visad.VisADException, java.rmi.RemoteException
GridDisplayControl.addTopographyMap(int)
to allow subclasses
to set their own index.java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD errorprotected void updateLocationLabel()
public void setAllowAutoScale(boolean value)
value
- The new value for AutoScalepublic boolean getAllowAutoScale()
public void setAutoScaleYAxis(boolean value)
value
- The new value for AutoScalepublic boolean getAutoScaleYAxis()
public Range getLineRange()
public void setAutoUpdate(boolean value)
value
- The new value for AutoUpdatepublic boolean getAutoUpdate()
public void setCrossSectionView(CrossSectionViewManager value)
value
- The new value for CrossSectionViewpublic CrossSectionViewManager getCrossSectionView()
public void setForeground(java.awt.Color color)
color
- new colorpublic void setBackground(java.awt.Color color)
color
- new colorpublic void setDisplayMatrix(double[] value)
value
- The new value for DisplayMatrixpublic boolean canExportData()
canExportData
in class DisplayControlImpl
protected visad.Data getDisplayedData() throws visad.VisADException, java.rmi.RemoteException
getDisplayedData
in class DisplayControlImpl
java.rmi.RemoteException
- problem reading remote datavisad.VisADException
- problem gettting dataprotected double getInitialZPosition()
getInitialZPosition
in class DisplayControlImpl
public void setStartPoint(visad.RealTuple p)
p
- probe positionpublic visad.RealTuple getStartPoint() throws visad.VisADException, java.rmi.RemoteException
null
.java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD Errorpublic void setEndPoint(visad.RealTuple p)
p
- probe positionpublic visad.RealTuple getEndPoint() throws visad.VisADException, java.rmi.RemoteException
null
.java.rmi.RemoteException
- Java RMI errorvisad.VisADException
- VisAD Errorpublic void setLineVisible(boolean value)
value
- The new value for LineVisiblepublic boolean getLineVisible()
public void setInitAlt(double value)
value
- _more_public void setInitLat2(double value)
value
- The new value for Lat2public void setInitLon2(double value)
value
- The new value for Lon2public void setInitLat1(double value)
value
- The new value for InitLat1public void setInitLon1(double value)
value
- The new value for Lon1