Class PointCloudControl

All Implemented Interfaces:
ActionListener, ItemListener, PropertyChangeListener, EventListener, HyperlinkListener, Sharable, DataChangeListener, DisplayControl, Prototypable, ControlListener, DisplayListener

public class PointCloudControl extends DrawingControl
A display control for volume rendering of a 3D grid
Author:
IDV Development Team
  • Field Details

    • filters

      protected List filters
      filters for showing data
  • Constructor Details

    • PointCloudControl

      public PointCloudControl()
      Default constructor; does nothing.
  • Method Details

    • getInitialZPosition

      protected double getInitialZPosition()
      Get the initial z position
      Overrides:
      getInitialZPosition in class DrawingControl
      Returns:
      the Z position
    • canHandleEvents

      protected boolean canHandleEvents()
      Can we handle events?
      Overrides:
      canHandleEvents in class DrawingControl
      Returns:
      true or false
    • getSaveMenuItems

      protected void getSaveMenuItems(List items, boolean forMenuBar)
      Add export points menu tiem
      Overrides:
      getSaveMenuItems in class DisplayControlImpl
      Parameters:
      items - menu items to add to
      forMenuBar - for menubar
    • getViewMenuItems

      protected void getViewMenuItems(List items, boolean forMenuBar)
      add view menu items
      Overrides:
      getViewMenuItems in class DrawingControl
      Parameters:
      items - menu items to add to
      forMenuBar - for menubar
    • addFileMenuItems

      protected void addFileMenuItems(List items, boolean forMenuBar)
      noop so the drawing control doesn't add its items
      Overrides:
      addFileMenuItems in class DrawingControl
      Parameters:
      items - menu items to add to
      forMenuBar - for menubar
    • shouldAddAnimationListener

      protected boolean shouldAddAnimationListener()
      get animation time changes
      Overrides:
      shouldAddAnimationListener in class DisplayControlImpl
      Returns:
      true
    • timeChanged

      protected void timeChanged(Real time)
      handle when the animation changes. If this is a time sequence and followTimeStep is true then center the display
      Overrides:
      timeChanged in class DrawingControl
      Parameters:
      time - current time
    • exportKml

      public void exportKml(String filename) throws Exception
      Export to KML
      Parameters:
      filename - the file name
      Throws:
      Exception - problem exporting
    • exportPoints

      public void exportPoints() throws Exception
      write out the points
      Throws:
      Exception - on badness
    • getShapeCommands

      protected List getShapeCommands()
      Define the shapes to use for the drawing
      Overrides:
      getShapeCommands in class DrawingControl
      Returns:
      shapes
    • getColorRangeIndex

      public int getColorRangeIndex()
      Get the color range index
      Returns:
      the index for the color range
    • setColorRangeIndex

      public void setColorRangeIndex(int index)
      Set the color range index
      Parameters:
      index - the index for getting the color range
    • getColorRangeFromData

      public Range getColorRangeFromData()
      Get the color range from the data
      Returns:
      the range of the data for coloring
    • getInitialRange

      protected Range getInitialRange() throws RemoteException, VisADException
      Hook method to allow derived classes to return a different initial Range
      Overrides:
      getInitialRange in class DrawingControl
      Returns:
      The initial range to use
      Throws:
      RemoteException - Java RMI problem
      VisADException - VisAD problem
    • getDataProjection

      public MapProjection getDataProjection()
      Get the data projection
      Specified by:
      getDataProjection in interface DisplayControl
      Overrides:
      getDataProjection in class DisplayControlImpl
      Returns:
      the data projection
    • init

      public boolean init(DataChoice dataChoice) throws VisADException, RemoteException
      Call to help make this kind of Display Control; also calls code to made the Displayable (empty of data thus far). This method is called from inside DisplayControlImpl.init(several args).
      Overrides:
      init in class DrawingControl
      Parameters:
      dataChoice - the DataChoice of the moment.
      Returns:
      true if successful
      Throws:
      RemoteException - Java RMI error
      VisADException - VisAD Error
    • getFilterNames

      protected List getFilterNames()
      _more_
      Returns:
      _more_
    • showLocationWidgets

      protected boolean showLocationWidgets()
      Show the location widgets
      Overrides:
      showLocationWidgets in class DrawingControl
      Returns:
      false
    • initDisplayUnit

      protected void initDisplayUnit()
      Initialize the display unit
      Overrides:
      initDisplayUnit in class DrawingControl
    • getDistanceUnit

      public Unit getDistanceUnit()
      Get the distance unit
      Overrides:
      getDistanceUnit in class DrawingControl
      Returns:
      the distance unit
    • showTimeWidgets

      protected boolean showTimeWidgets()
      Show the time widget
      Overrides:
      showTimeWidgets in class DrawingControl
      Returns:
      false
    • doMakeContents

      protected Container doMakeContents() throws VisADException, RemoteException
      Make the UI contents
      Overrides:
      doMakeContents in class DrawingControl
      Returns:
      the UI contents
      Throws:
      RemoteException - Java RMI exception
      VisADException - Problem creating the VisAD data
    • getControlWidgets

      public void getControlWidgets(List controlWidgets) throws VisADException, RemoteException
      Add in any special control widgets to the current list of widgets.
      Overrides:
      getControlWidgets in class DisplayControlImpl
      Parameters:
      controlWidgets - list of control widgets
      Throws:
      VisADException - VisAD error
      RemoteException - RMI error
    • doMakeFilterGui

      protected JComponent doMakeFilterGui()
      _more_
      Returns:
      _more_
    • initFilters

      public void initFilters()
      Init the vis filters
    • applyFilters

      public void applyFilters()
      Apply the vis filters
    • setPointSize

      public void setPointSize(float value)
      set the point size
      Overrides:
      setPointSize in class DisplayControlImpl
      Parameters:
      value - the point size
    • setData

      protected boolean setData(DataChoice choice) throws VisADException, RemoteException
      Set the data in this control.
      Overrides:
      setData in class DisplayControlImpl
      Parameters:
      choice - data description
      Returns:
      true if successful
      Throws:
      RemoteException - Java RMI error
      VisADException - VisAD Error
    • processData

      protected void processData(Data data)
      Process the visad data object.
      Overrides:
      processData in class DrawingControl
      Parameters:
      data - The data object
    • reloadPointData

      public void reloadPointData() throws Exception
      Reload the point data
      Throws:
      Exception - something bad happened
    • clippingData

      protected FieldImpl clippingData(FieldImpl obs, List<Shape> shapes, int[] scales, int lonIndex, int latIndex) throws Exception
      _more_
      Parameters:
      obs - _more_
      shapes - _more_
      scales - _more_
      lonIndex - _more_
      latIndex - _more_
      Returns:
      _more_
      Throws:
      Exception - _more_
    • filterData

      protected FieldImpl filterData(FieldImpl obs) throws Exception
      Apply the filters to the given data
      Parameters:
      obs - The data
      Returns:
      The filtered data.
      Throws:
      Exception - When bad things happen.
    • getIsRaster

      public boolean getIsRaster()
      Is this a raster display
      Overrides:
      getIsRaster in class DisplayControlImpl
      Returns:
      true
    • setShowInside

      public void setShowInside(boolean value)
      Set the ShowInside property.
      Parameters:
      value - The new value for ShowInside
    • getShowInside

      public boolean getShowInside()
      Get the ShowInside property.
      Returns:
      The ShowInside
    • setDoClip

      public void setDoClip(boolean value)
      Set the DoClip property.
      Parameters:
      value - The new value for DoClip
    • getDoClip

      public boolean getDoClip()
      Get the DoClip property.
      Returns:
      The DoClip
    • setDoFilter

      public void setDoFilter(boolean value)
      Set the DoFilter property.
      Parameters:
      value - The new value for DoClip
    • getFilters

      public List getFilters()
      Get the filters property.
      Returns:
      The filters
    • setFilters

      public void setFilters(List value)
      Set the filters property.
      Parameters:
      value - The new value for filters
    • getDoFilter

      public boolean getDoFilter()
      Get the DoFilter property.
      Returns:
      The DoFilter
    • setFollowTimeStep

      public void setFollowTimeStep(boolean value)
      Set the FollowTimeStep property.
      Parameters:
      value - The new value for FollowTimeStep
    • getFollowTimeStep

      public boolean getFollowTimeStep()
      Get the FollowTimeStep property.
      Returns:
      The FollowTimeStep