Package com.macrofocus.high_d.scatterplot

# Class AbstractScatterPlotView<Component,Color,Font,Row,Column>

java.lang.Object
com.macrofocus.high_d.scatterplot.AbstractScatterPlotView<Component,Color,Font,Row,Column>

All Implemented Interfaces:
  `ScatterPlotView<Component,Color,Font,Row,Column>`

Direct Known Subclasses:
  `JavaFXScatterPlotView`

public abstract class AbstractScatterPlotView<Component,Color,Font,Row,Column> extends Object implements ScatterPlotView<Component,Color,Font,Row,Column>

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `class`
  `AbstractScatterPlotView.AbstractVisualLayerIDrawing`

  ## Nested classes/interfaces inherited from interface com.macrofocus.high_d.scatterplot.ScatterPlotView

  `ScatterPlotView.PropertyType`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected com.macrofocus.crossplatform.CPCanvas<Component>`
  `canvas`
  `protected ScatterPlotModel<Color,Row,Column>`
  `model`
  `protected final MutableProperties<ScatterPlotView.PropertyType>`
  `properties`
  `protected RangesScreenTransformCoordinator`
  `rangesScreenTransformCoordinator`
  `protected final com.macrofocus.transform.twod.MutableTwoDScreenTransform`
  `screenTransform`
  `protected final CPTimer`
  `timer`
  `protected com.macrofocus.plot.guide.Guide<Component,Color,Font>`
  `xGuide`
  `protected com.macrofocus.plot.guide.Guide<Component,Color,Font>`
  `yGuide`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractScatterPlotView(com.macrofocus.crossplatform.CPCanvas canvas, com.macrofocus.crossplatform.CPFactory<?,?,?,Color> factory)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addKeyListener(com.macrofocus.crossplatform.CPCanvas.KeyListener listener)`
  `void`
  `addMouseListener(com.macrofocus.crossplatform.CPCanvas.MouseListener l)`
  `void`
  `addMouseMotionListener(com.macrofocus.crossplatform.CPCanvas.MouseMotionListener l)`
  `void`
  `addMouseWheelListener(com.macrofocus.crossplatform.CPCanvas.MouseWheelListener l)`
  `void`
  `createOverplots()`
  `MutableProperty<Boolean>`
  `getAntialiasing()`
  `Row`
  `getClosestRow(int x, int y)`
  `MutableProperty<com.macrofocus.igraphics.colortheme.ColorTheme<Color>>`
  `getColorTheme()`
  Returns the color theme to use.
  `MutableProperty<Boolean>`
  `getDisplayLabels()`
  `MutableProperty<Float>`
  `getGridThickness()`
  `protected abstract int`
  `getHeight()`
  `MutableProperty<Integer>`
  `getMarkerExtraSizeHighlight()`
  `MutableProperty<Double>`
  `getMarkerSize()`
  `ScatterPlotModel`
  `getModel()`
  Returns the ScatterPlotModel that provides the data displayed by this ScatterPlotView.
  `MutableProperty<Boolean>`
  `getRegression()`
  `MutableProperty<com.macrofocus.crossplatform.CPCanvas.Rendering>`
  `getRendering()`
  `List<Row>`
  `getRows(com.macrofocus.geom.Rectangle2D rect)`
  Returns the nodes overlapping the specified rectangle.
  `com.macrofocus.rubberband.RubberBand`
  `getRubberBand()`
  `com.macrofocus.transform.twod.MutableTwoDScreenTransform`
  `getScreenTransform()`
  `MutableProperty<com.macrofocus.igraphics.CPColor<Color>>`
  `getShowColor()`
  `MutableProperty<Boolean>`
  `getShowFiltered()`
  `MutableProperty<Boolean>`
  `getShowGrid()`
  `MutableProperty<SizeProportion>`
  `getSizeProportion()`
  `protected abstract int`
  `getWidth()`
  `com.macrofocus.plot.guide.Guide<Component,Color,Font>`
  `getXGuide()`
  `MutableBoundedInterval`
  `getXRangeModel()`
  `com.macrofocus.plot.guide.Guide<Component,Color,Font>`
  `getYGuide()`
  `MutableBoundedInterval`
  `getYRangeModel()`
  `boolean`
  `isSelectionMode()`
  `protected void`
  `populateOverplots()`
  `protected abstract void`
  `refresh()`
  `protected abstract void`
  `repaint()`
  `void`
  `resetXAxis()`
  `void`
  `resetYAxis()`
  `protected abstract void`
  `scheduleUpdate()`
  `void`
  `setAntialiasing(MutableProperty<Boolean> antialiasing)`
  `void`
  `setColorTheme(MutableProperty<com.macrofocus.igraphics.colortheme.ColorTheme<Color>> colorTheme)`
  Sets the color theme to use.
  `void`
  `setModel(ScatterPlotModel model)`
  Sets the data model and registers with it for listener notifications from the new data model.
  `void`
  `setRendering(MutableProperty<com.macrofocus.crossplatform.CPCanvas.Rendering> rendering)`
  `void`
  `setSelectionMode(boolean value)`
  `void`
  `setShowFiltered(MutableProperty<Boolean> showFiltered)`
  `protected abstract void`
  `updateAxisType()`
  `protected void`
  `updateIntervals()`
  `void`
  `zoom(boolean animate, double x1, double x2, double y1, double y2)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface com.macrofocus.high_d.scatterplot.ScatterPlotView

  `getNativeComponent, getProperties, isMaintainAspectRatio, isShowTiming, setLicenseModel, setMaintainAspectRatio, setShowTiming`

- ## Field Details

  - ### model

    protected ScatterPlotModel<Color,Row,Column> model

  - ### properties

    protected final MutableProperties<ScatterPlotView.PropertyType> properties

  - ### canvas

    protected com.macrofocus.crossplatform.CPCanvas<Component> canvas

  - ### timer

    protected final CPTimer timer

  - ### screenTransform

    protected final com.macrofocus.transform.twod.MutableTwoDScreenTransform screenTransform

  - ### rangesScreenTransformCoordinator

    protected RangesScreenTransformCoordinator rangesScreenTransformCoordinator

  - ### xGuide

    protected com.macrofocus.plot.guide.Guide<Component,Color,Font> xGuide

  - ### yGuide

    protected com.macrofocus.plot.guide.Guide<Component,Color,Font> yGuide

- ## Constructor Details

  - ### AbstractScatterPlotView

    public AbstractScatterPlotView(com.macrofocus.crossplatform.CPCanvas canvas, com.macrofocus.crossplatform.CPFactory<?,?,?,Color> factory)

- ## Method Details

  - ### getXGuide

    public com.macrofocus.plot.guide.Guide<Component,Color,Font> getXGuide()
    Specified by:
      `getXGuide` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getYGuide

    public com.macrofocus.plot.guide.Guide<Component,Color,Font> getYGuide()
    Specified by:
      `getYGuide` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getWidth

    protected abstract int getWidth()

  - ### getHeight

    protected abstract int getHeight()

  - ### refresh

    protected abstract void refresh()

  - ### repaint

    protected abstract void repaint()

  - ### scheduleUpdate

    protected abstract void scheduleUpdate()

  - ### addMouseListener

    public void addMouseListener(com.macrofocus.crossplatform.CPCanvas.MouseListener l)
    Specified by:
      `addMouseListener` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### addMouseMotionListener

    public void addMouseMotionListener(com.macrofocus.crossplatform.CPCanvas.MouseMotionListener l)
    Specified by:
      `addMouseMotionListener` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### addMouseWheelListener

    public void addMouseWheelListener(com.macrofocus.crossplatform.CPCanvas.MouseWheelListener l)
    Specified by:
      `addMouseWheelListener` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### addKeyListener

    public void addKeyListener(com.macrofocus.crossplatform.CPCanvas.KeyListener listener)
    Specified by:
      `addKeyListener` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### createOverplots

    public void createOverplots()

  - ### populateOverplots

    protected void populateOverplots()

  - ### setModel

    public void setModel(ScatterPlotModel model)
    Sets the data model and registers with it for listener notifications from the new data model.
    Specified by:
      `setModel` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`
    Parameters:
      `model` - the new data model
    See Also:
      - `ScatterPlotView.getModel()`

  - ### getModel

    public ScatterPlotModel getModel()
    Returns the ScatterPlotModel that provides the data displayed by this ScatterPlotView.
    Specified by:
      `getModel` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`
    Returns:
      the ScatterPlotModel that provides the data displayed by this ScatterPlotView
    See Also:
      - `ScatterPlotView.setModel(com.macrofocus.high_d.scatterplot.ScatterPlotModel)`

  - ### getXRangeModel

    public MutableBoundedInterval getXRangeModel()
    Specified by:
      `getXRangeModel` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getYRangeModel

    public MutableBoundedInterval getYRangeModel()
    Specified by:
      `getYRangeModel` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getScreenTransform

    public com.macrofocus.transform.twod.MutableTwoDScreenTransform getScreenTransform()
    Specified by:
      `getScreenTransform` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getRubberBand

    public com.macrofocus.rubberband.RubberBand getRubberBand()
    Specified by:
      `getRubberBand` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### resetXAxis

    public void resetXAxis()

  - ### resetYAxis

    public void resetYAxis()

  - ### zoom

    public void zoom(boolean animate, double x1, double x2, double y1, double y2)
    Specified by:
      `zoom` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### updateIntervals

    protected void updateIntervals()

  - ### updateAxisType

    protected abstract void updateAxisType()

  - ### getClosestRow

    public Row getClosestRow(int x, int y)
    Specified by:
      `getClosestRow` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getRows

    public List<Row> getRows(com.macrofocus.geom.Rectangle2D rect)
    Description copied from interface: `ScatterPlotView`
    Returns the nodes overlapping the specified rectangle.
    Specified by:
      `getRows` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`
    Parameters:
      `rect` - the rectangle in screen coordinates
    Returns:
      the list of nodes

  - ### getShowFiltered

    public MutableProperty<Boolean> getShowFiltered()
    Specified by:
      `getShowFiltered` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getShowGrid

    public MutableProperty<Boolean> getShowGrid()
    Specified by:
      `getShowGrid` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getAntialiasing

    public MutableProperty<Boolean> getAntialiasing()
    Specified by:
      `getAntialiasing` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getRendering

    public MutableProperty<com.macrofocus.crossplatform.CPCanvas.Rendering> getRendering()
    Specified by:
      `getRendering` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getGridThickness

    public MutableProperty<Float> getGridThickness()
    Specified by:
      `getGridThickness` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getShowColor

    public MutableProperty<com.macrofocus.igraphics.CPColor<Color>> getShowColor()
    Specified by:
      `getShowColor` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getRegression

    public MutableProperty<Boolean> getRegression()
    Specified by:
      `getRegression` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getMarkerSize

    public MutableProperty<Double> getMarkerSize()
    Specified by:
      `getMarkerSize` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getMarkerExtraSizeHighlight

    public MutableProperty<Integer> getMarkerExtraSizeHighlight()
    Specified by:
      `getMarkerExtraSizeHighlight` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getColorTheme

    public MutableProperty<com.macrofocus.igraphics.colortheme.ColorTheme<Color>> getColorTheme()
    Description copied from interface: `ScatterPlotView`
    Returns the color theme to use.
    Specified by:
      `getColorTheme` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`
    Returns:
      the color theme

  - ### getDisplayLabels

    public MutableProperty<Boolean> getDisplayLabels()
    Specified by:
      `getDisplayLabels` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### getSizeProportion

    public MutableProperty<SizeProportion> getSizeProportion()
    Specified by:
      `getSizeProportion` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### setShowFiltered

    public void setShowFiltered(MutableProperty<Boolean> showFiltered)
    Specified by:
      `setShowFiltered` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### setRendering

    public void setRendering(MutableProperty<com.macrofocus.crossplatform.CPCanvas.Rendering> rendering)
    Specified by:
      `setRendering` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### setAntialiasing

    public void setAntialiasing(MutableProperty<Boolean> antialiasing)
    Specified by:
      `setAntialiasing` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### setColorTheme

    public void setColorTheme(MutableProperty<com.macrofocus.igraphics.colortheme.ColorTheme<Color>> colorTheme)
    Description copied from interface: `ScatterPlotView`
    Sets the color theme to use.
    Specified by:
      `setColorTheme` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`
    Parameters:
      `colorTheme` - the color theme to use

  - ### isSelectionMode

    public boolean isSelectionMode()
    Specified by:
      `isSelectionMode` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`

  - ### setSelectionMode

    public void setSelectionMode(boolean value)
    Specified by:
      `setSelectionMode` in interface `ScatterPlotView<Component,Color,Font,Row,Column>`