public class ArrayShapePlotter extends ShapePlotter
This plotter does not report positions and point clouds in the usual way, since each row typically corresponds to a large region of the plot surface, and reporting a single point is not very helpful. Instead, the PlotLayers it supplies are doctored to adjust the coordinate ranges to cover the whole of the relevant area for the plotted rows.
ModePlotter.Form, ModePlotter.Mode| Constructor and Description |
|---|
ArrayShapePlotter(String name,
ShapeForm form,
ShapeMode mode)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
static ArrayShapePlotter[] |
createArrayShapePlotters(ShapeForm[] forms,
ShapeMode[] modes)
Creates an array of ArrayShapePlotters, using all combinations of the
specified list of ShapeForms and ShapeModes.
|
PlotLayer |
createLayer(DataGeom pointDataGeom,
DataSpec dataSpec,
ShapeStyle style)
Creates a PlotLayer based on the given geometry, data and style.
|
static java.util.function.Function<Tuple,XYArrayData> |
createXYArrayReader(FloatingArrayCoord xsCoord,
FloatingArrayCoord ysCoord,
int icXs,
int icYs,
DataSpec dataSpec)
Returns a reader for matched X/Y array data for use with array plotters.
|
int |
getModeCoordsIndex(DataGeom geom)
Returns the index into a dataspec used by this plotter at which the
first of its ShapeMode's "extra" coordinates is found.
|
static boolean |
matchesAxis(String axName,
Input input)
Utility method that identifies whether an Input corresponds to a
named axis.
|
createFlat2dPlotter, createShapePlotters, createStyle, getForm, getMode, getPlotterDescription, getStyleKeysgetCoordGroup, getPlotterIcon, getPlotterName, getRangeStyleKey, hasReportsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetCoordGroup, getPlotterIcon, getPlotterName, getRangeStyleKey, hasReportspublic int getModeCoordsIndex(DataGeom geom)
ShapePlottergetModeCoordsIndex in class ShapePlottergeom - data position coordinate descriptionpublic PlotLayer createLayer(DataGeom pointDataGeom, DataSpec dataSpec, ShapeStyle style)
PlotterThe style parameter is the result of a call to
Plotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap).
The dataSpec parameter must contain the coordinates
defined by this plotter's CoordGroup.
The pointDataGeom
parameter is only used if the
CoordGroup.getBasicPositionCount()
or
CoordGroup.getExtraPositionCount()
method from this plotter's CoordGroup return a non-zero value,
otherwise the plot does not have point positions.
It is legal to supply null for any of the parameters; if insufficient data is supplied to generate a plot, then the method should return null.
Creating a layer should be cheap; layers may be created and not used.
createLayer in interface Plotter<ShapeStyle>createLayer in class ShapePlotterpointDataGeom - indicates base position coordinates and their
mapping to points in the data spacedataSpec - specifies the data required for the plotstyle - data style as obtained from createStylepublic static ArrayShapePlotter[] createArrayShapePlotters(ShapeForm[] forms, ShapeMode[] modes)
ModePlotter interface,
other parts of the UI may be able to group them.forms - array of shape formsmodes - array of shape modesforms.length*modes.length-element array of plotterspublic static boolean matchesAxis(String axName, Input input)
axName - geometric axis name, e.g. "X"input - coordinate input specificationpublic static java.util.function.Function<Tuple,XYArrayData> createXYArrayReader(FloatingArrayCoord xsCoord, FloatingArrayCoord ysCoord, int icXs, int icYs, DataSpec dataSpec)
xsCoord - coordinate for X arrayysCoord - coordinate for Y arrayicXs - X array coordinate index in groupicYs - Y array coordinate index in groupdataSpec - data specificationCopyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.