Class GenericDataPlotInfo

java.lang.Object
dataPlotsFX.data.TDDataInfoFX
dataPlotsFX.data.generic.GenericDataPlotInfo
Direct Known Subclasses:
CPODPlotInfoFX, DLGroupDetectionInfoFX, IshmaelDetPlotInfo, MarkDataPlotInfo, RavenDataPlotInfo, RawClipDataInfo, RWEDataPlotinfoFX

public class GenericDataPlotInfo extends TDDataInfoFX
Generic data plot info which can work for a wide variety of data types. May still need some data unit specific sub classing, but will hopefully reduce the need for quite so much data specific development.
Author:
Doug Gillespie
  • Field Details

  • Constructor Details

  • Method Details

    • drawDataUnit

      public javafx.scene.shape.Polygon drawDataUnit(int plotNumber, PamDataUnit pamDataUnit, javafx.scene.canvas.GraphicsContext g, double scrollStart, TDProjectorFX tdProjector, int type)
      Description copied from class: TDDataInfoFX
      Draw a data unit.
      Overrides:
      drawDataUnit in class TDDataInfoFX
      Parameters:
      pamDataUnit - data unit to draw
      g - graphicsContext handle to draw on
      type - flag for which type of symbol to draw. e.g normal or highlighted.
      Returns:
      polygon of area drawn on.
    • drawBoxData

      public javafx.scene.shape.Polygon drawBoxData(int plotNumber, PamDataUnit pamDataUnit, double[] f, javafx.scene.canvas.GraphicsContext g, double scrollStart, TDProjectorFX tdProjector, int type)
      Draw a data unit as a box.
      Parameters:
      plotNumber - - the pot number
      pamDataUnit - - the data unit that will be plotted
      f - - the y axis max and min values
      g - - the graphics context.
      scrollStart - - the scroll start in millis.
      tdProjector - - the graph projector.
      type - - the plot type.
      Returns:
      a polygon of the data unit.
    • drawFrequencyData

      public javafx.scene.shape.Polygon drawFrequencyData(int plotNumber, PamDataUnit pamDataUnit, javafx.scene.canvas.GraphicsContext g, double scrollStart, TDProjectorFX tdProjector, int type)
      Base class draws a simple frequency box. Easily overridden to draw something else, e.g. a contour.
      Parameters:
      plotNumber -
      pamDataUnit -
      g -
      scrollStart -
      tdProjector -
      type -
      Returns:
    • getGraphSettingsPane

      public TDSettingsPane getGraphSettingsPane()
      Description copied from class: TDDataInfoFX
      Return a hiding settings node which will get incorporated into a larger tabbed sliding pane.
      Overrides:
      getGraphSettingsPane in class TDDataInfoFX
      Returns:
      sliding dialog component.
    • getDataValue

      public Double getDataValue(PamDataUnit pamDataUnit)
      Description copied from class: TDDataInfoFX
      Gets a value for a specific data unit which should be in the same units as the scale information. This will then be converted into a plot position by the TDGraph.
      Specified by:
      getDataValue in class TDDataInfoFX
      Parameters:
      pamDataUnit -
      Returns:
      data value or null if this data point should not be plotted.
    • getBearingValue

      public Double getBearingValue(PamDataUnit pamDataUnit)
    • getSlantValue

      public Double getSlantValue(PamDataUnit pamDataUnit)
    • getAmplitudeValue

      public Double getAmplitudeValue(PamDataUnit pamDataUnit)
    • getSymbolChooser

      public TDSymbolChooserFX getSymbolChooser()
      Specified by:
      getSymbolChooser in class TDDataInfoFX
      Returns:
      a class containing functions to chose a symbol to plot.
    • createSymbolChooser

      public TDSymbolChooserFX createSymbolChooser()
    • getScaleInfos

      public ArrayList<TDScaleInfo> getScaleInfos()
      Description copied from class: TDDataInfoFX
      Get all TDScaleInfos for the TDDataInfo.
      Overrides:
      getScaleInfos in class TDDataInfoFX
      Returns:
      a list of TDScaleInfos.
    • updateAvailability

      protected void updateAvailability()
      Go through all the different scale types and check which ones are available. (only need to do this for ones associated with localisation data since that's the think likely to change dynamically ?). May have to also do some which may be associated with other annotations ?
    • getAmplitudeScaleInfo

      public GenericScaleInfo getAmplitudeScaleInfo()
      Get the amplitude scale info.
      Returns:
      the amplitude scale info.
    • getFrequencyScaleInfo

      public GenericScaleInfo getFrequencyScaleInfo()
      Get the frequency scale info.
      Returns:
      the frequency scale info.
    • getBearingScaleInfo

      public GenericScaleInfo getBearingScaleInfo()
      Get the frequency scale info.
      Returns:
      the frequency scale info.
    • getSlantScaleInfo

      public GenericScaleInfo getSlantScaleInfo()
      Get the frequency scale info.
      Returns:
      the frequency scale info.
    • setCurrentAxisName

      public boolean setCurrentAxisName(GeneralProjector.ParameterType dataType, GeneralProjector.ParameterUnits dataUnits)
      Called when the user selects a specific data line
      Overrides:
      setCurrentAxisName in class TDDataInfoFX
      Parameters:
      dataLine -
    • setDefaultOpacity

      protected void setDefaultOpacity(GeneralProjector.ParameterType dataType)