Class PointSelectionEvent

java.lang.Object
java.util.EventObject
uk.ac.starlink.ttools.plot2.task.PointSelectionEvent
All Implemented Interfaces:
Serializable

public class PointSelectionEvent extends EventObject
Describes the result of an attempt to select a data point on a plot. This is usually the result of a user click action.
Since:
21 Nov 2014
Author:
Mark Taylor
See Also:
  • Constructor Details

    • PointSelectionEvent

      public PointSelectionEvent(Object source, Point point, int isurf, long[] closestRows)
      Constructor.
      Parameters:
      source - event source
      point - point indicated by the user
      isurf - numeric label of surface to which this event applies
      closestRows - array of dataset row index for each plotted layer
  • Method Details

    • getPoint

      public Point getPoint()
      Returns the point indicated by the user.
      Returns:
      indicated point
    • getSurfaceIndex

      public int getSurfaceIndex()
      Returns the index of the surface to which this event applies.
      Returns:
      numeric label of surface
    • getClosestRows

      public long[] getClosestRows()
      Returns an array of row indices, one for each plotted layer. Each element contains the index of of the data point plotted in the corresponding PlotLayer closest to the indicated graphics position. If that layer contains no data point within a few pixels of the given position, the corresponding value is -1. For layers without data positions, the corresponding value is always -1.

      The close-enough threshold for a point to be included is given by PlotUtil.NEAR_PIXELS (4.0).

      Note the event may represent no successful selections (all elements of the returned array equal to -1).

      Returns:
      array of data point indices, one for each plotted layer