|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Plotter<S extends Style>
A Plotter can produce PlotLayers given data and appropriate configuration. It can also report what data coordinates and style configuration information are needed for the plot. This self-describing nature means that a plotting framework can largely build a user interface automatically from a Plotter instance.
A Plotter also acts as part of an identifier for the type of plot being performed, which is necessary for determining PlotLayer equality; two PlotLayers are equivalent if they match in point of DataSpec, Style and Plotter.
Method Summary | |
---|---|
PlotLayer |
createLayer(DataGeom pointDataGeom,
DataSpec dataSpec,
S style)
Creates a PlotLayer based on the given geometry, data and style. |
S |
createStyle(ConfigMap config)
Creates a style that can be used when creating a plot layer. |
CoordGroup |
getCoordGroup()
Returns an object describing which data coordinates are used for this plotter and how they are arranged in supplied DataSpec objects. |
String |
getPlotterDescription()
Returns an XML description of this plotter. |
Icon |
getPlotterIcon()
Returns an icon for this plotter for use in user interface. |
String |
getPlotterName()
Returns the name of this plotter for use in user interface. |
ConfigKey[] |
getStyleKeys()
Returns the configuration keys used to configure style for this plotter. |
boolean |
hasReports()
Indicates whether the drawings produced by this plotter will return general interest report information to upstream plotting code. |
Method Detail |
---|
String getPlotterName()
Icon getPlotterIcon()
String getPlotterDescription()
Note: really this should appear at the LayerType level.
CoordGroup getCoordGroup()
ConfigKey[] getStyleKeys()
createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap)
method.
S createStyle(ConfigMap config) throws ConfigException
getStyleKeys()
.
The return value can be used as input to createLayer(uk.ac.starlink.ttools.plot2.DataGeom, uk.ac.starlink.ttools.plot2.data.DataSpec, S)
.
config
- map of style configuration items
ConfigException
boolean hasReports()
Drawing.getReport(java.lang.Object)
PlotLayer createLayer(DataGeom pointDataGeom, DataSpec dataSpec, S style)
The style
parameter is the result of a call to
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
getCoordGroup()
.
getPositionCount
returns 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.
pointDataGeom
- indicates base position coordinates and their
mapping to points in the data space;
if non-null, the data geom's
DataGeom.hasPosition()
method will return truedataSpec
- specifies the data required for the plotstyle
- data style as obtained from createStyle
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |