Class PaperTypeSelector
- java.lang.Object
-
- uk.ac.starlink.ttools.plot2.paper.PaperTypeSelector
-
public abstract class PaperTypeSelector extends java.lang.Object
Provides interface and logic for determining what PaperType (rendering machinery) to use to render a given selection of plot layers to a given output medium. APlotType
provides an instance of this class.- Since:
- 14 Feb 2013
- Author:
- Mark Taylor
-
-
Field Summary
Fields Modifier and Type Field Description static PaperTypeSelector
SELECTOR_2D
Default selector for 2d output.static PaperTypeSelector
SELECTOR_3D
Default selector for 3d output.
-
Constructor Summary
Constructors Constructor Description PaperTypeSelector()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static PaperTypeSelector
createSingleSelector(PaperType ptype)
Returns a selector which always returns a fixed paper type.static LayerOpt[]
getOpts(PlotLayer[] layers)
Returns an array of layer options corresponding to an array of layers.abstract PaperType
getPixelPaperType(LayerOpt[] opts, Compositor compositor, java.awt.Component component)
Supplies a PaperType appropriate for rendering to a bitmap (pixellated) output medium.abstract PaperType
getVectorPaperType(LayerOpt[] opts)
Supplies a PaperType appropriate for rendering to a vector (non-pixellated) output medium.
-
-
-
Field Detail
-
SELECTOR_2D
public static PaperTypeSelector SELECTOR_2D
Default selector for 2d output.
-
SELECTOR_3D
public static PaperTypeSelector SELECTOR_3D
Default selector for 3d output.
-
-
Method Detail
-
getVectorPaperType
public abstract PaperType getVectorPaperType(LayerOpt[] opts)
Supplies a PaperType appropriate for rendering to a vector (non-pixellated) output medium.- Parameters:
opts
- layer options- Returns:
- paper type
-
getPixelPaperType
public abstract PaperType getPixelPaperType(LayerOpt[] opts, Compositor compositor, java.awt.Component component)
Supplies a PaperType appropriate for rendering to a bitmap (pixellated) output medium.If a component is supplied, it indicates the component on which this paper will be rendered. It is legal to supply a null component if the destination component is unavailable (including if it is headless). Note the supplied component need not be the actual one it's going to be rendered on, but it should be similar in terms of graphics configuration, background colour etc.
- Parameters:
opts
- layer optionscompositor
- compositor for combining colours (relevant only if some transparency is present)component
- destination component, or component similar to destination component, or null- Returns:
- paper type
-
createSingleSelector
public static PaperTypeSelector createSingleSelector(PaperType ptype)
Returns a selector which always returns a fixed paper type. This is only useful for debugging.- Parameters:
ptype
- fixed paper type- Returns:
- selector
-
-