Interface Outliner
-
- All Known Implementing Classes:
PixOutliner,PolygonOutliner,SizeForm.SizeOutliner,SizeXyForm.SizeXyOutliner
@Equality public interface Outliner
Paints the shape of per-point markers. When painting, this object will not manipulate the colours; any colouring is done externally.This interface provides two ways of drawing the same thing: with a
ShapePainter, which does it a point at a time, and with a BinPlan, which accumulates all the pixel values for the whole grid ready to paint in one go. They should represent the same data, it's up to the caller which it uses.- Since:
- 18 Feb 2013
- Author:
- Mark Taylor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.ObjectcalculateBinPlan(Surface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, DataStore dataStore, DataSpec dataSpec, java.lang.Object[] knownPlans)Calculates an opaque object which contains the drawing of this outliner represented as an array of bins, one per pixel.ShapePaintercreate2DPainter(Surface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, PaperType2D paperType)Creates a ShapePainter object for plotting onto 2-dimensional surfaces.ShapePaintercreate3DPainter(CubeSurface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, PaperType3D paperType)Creates a ShapePainter object for plotting onto 3-dimensional surfaces.java.util.Map<AuxScale,AuxReader>getAuxRangers(DataGeom geom)Defines what non-axis ranging information is required by this outliner.int[]getBinCounts(java.lang.Object binPlan)Returns the bin contents for a given bin plan produced by this object.javax.swing.IcongetLegendIcon()Returns an icon suitable for identifying points painted by this object in a plot legend.longgetPointCount(java.lang.Object binPlan)Returns the number of data positions which contributed to a BinPlan generated by this object.
-
-
-
Method Detail
-
getLegendIcon
javax.swing.Icon getLegendIcon()
Returns an icon suitable for identifying points painted by this object in a plot legend. The returned icon does not manipulate the colour of the graphics context it operates on.- Returns:
- legend icon for this outliner
-
getAuxRangers
java.util.Map<AuxScale,AuxReader> getAuxRangers(DataGeom geom)
Defines what non-axis ranging information is required by this outliner. The return value is a map in which the keys define the ranges that must be supplied to the painting methods, and the values are reader objects that can acquire these ranges from a dataset.- Parameters:
geom- data geometry- Returns:
- map of required scale keys to scale reader objects
-
create2DPainter
ShapePainter create2DPainter(Surface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, PaperType2D paperType)
Creates a ShapePainter object for plotting onto 2-dimensional surfaces.- Parameters:
surface- plot surfacegeom- coordinate geometryauxSpans- map of scale information required for plotpaperType- 2-d paper type- Returns:
- new 2-d painter
-
create3DPainter
ShapePainter create3DPainter(CubeSurface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, PaperType3D paperType)
Creates a ShapePainter object for plotting onto 3-dimensional surfaces.- Parameters:
surface- 3-d plot surfacegeom- coordinate geometryauxSpans- map of scale information required for plotpaperType- 3-d paper type- Returns:
- new 3-d painter
-
calculateBinPlan
java.lang.Object calculateBinPlan(Surface surface, DataGeom geom, java.util.Map<AuxScale,Span> auxSpans, DataStore dataStore, DataSpec dataSpec, java.lang.Object[] knownPlans)
Calculates an opaque object which contains the drawing of this outliner represented as an array of bins, one per pixel. To make sense of the returned object, use thegetBinCounts(java.lang.Object)andgetPointCount(java.lang.Object)methods.If one of the supplied knowPlans fits the bill, it will be returned without further calculation.
- Parameters:
surface- plot surfacegeom- coordinate geometryauxSpans- map of scale information required for plotdataStore- data storagedataSpec- coordinate specificationknownPlans- list of existing plans- Returns:
- bin plan, either newly calculated or taken from
knownPlans
-
getBinCounts
int[] getBinCounts(java.lang.Object binPlan)
Returns the bin contents for a given bin plan produced by this object.- Parameters:
binPlan- bin plan returned fromcalculateBinPlan- Returns:
- array of counts, one element per bin
-
getPointCount
long getPointCount(java.lang.Object binPlan)
Returns the number of data positions which contributed to a BinPlan generated by this object. This may or may not be the same as the sum of the pixel counts in the binCounts array; if each data position might contribute multiple pixel hits, the numbers will not be the same.- Parameters:
binPlan- bin plan returned fromcalculateBinPlan- Returns:
- number of data positions in plan
-
-