Package org.esa.snap.core.util
Class ShapeRasterizer
java.lang.Object
org.esa.snap.core.util.ShapeRasterizer
Instances of this class are used to rasterize the outline of a
java.awt.Shape.- Version:
- $Revision$ $Date$
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classThe Bresenham Algorithm is the default algorithm used to rasterize lines.static interfaceVisits each pixel of a rasterized line.static interfaceAn abstract representation of an algorithm used to rasterize lines. -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new rasterizer with a no affine transformation, a flatness of1.0and a bresenham line rasterizer.ShapeRasterizer(AffineTransform transform, double flatness, ShapeRasterizer.LineRasterizer lineRasterizer) Constructs a new rasterizer with the specified affine transformation, flatness and line rasterizer. -
Method Summary
Modifier and TypeMethodDescriptiondoubleGets the flatness of the of the rasterized outlines to be created.Sets the rasterizing algorithm.Gets the affine transformation to be applied before a shape is rasterized.Point2D[]getVertices(Shape shape) Converts the given shape into an array of vertices.Point2D[]Rasterizes the given shape given as a vertices array.Point2D[]Rasterizes the given shape given as a vertices array.Point2D[]Rasterizes the given shape.voidsetFlatness(double flatness) Sets the flatness of the of the rasterized outlines to be created.voidsetLineRasterizer(ShapeRasterizer.LineRasterizer lineRasterizer) Sets the rasterizing algorithm.voidsetTransform(AffineTransform transform) Sets the affine transformation to be applied before a shape is rasterized.
-
Constructor Details
-
ShapeRasterizer
public ShapeRasterizer()Constructs a new rasterizer with a no affine transformation, a flatness of1.0and a bresenham line rasterizer.- See Also:
-
ShapeRasterizer
public ShapeRasterizer(AffineTransform transform, double flatness, ShapeRasterizer.LineRasterizer lineRasterizer) Constructs a new rasterizer with the specified affine transformation, flatness and line rasterizer.- Parameters:
transform- the affine transformation to be applied before a shape is rasterized. Can benull.flatness- the flatness of the rasterized outlines to be created.lineRasterizer- the rasterizing algorithm
-
-
Method Details
-
getTransform
Gets the affine transformation to be applied before a shape is rasterized.- Returns:
- the affine transformation, can be
null.
-
setTransform
Sets the affine transformation to be applied before a shape is rasterized.- Parameters:
transform- the affine transformation to be applied before a shape is rasterized. Can benull.
-
getFlatness
public double getFlatness()Gets the flatness of the of the rasterized outlines to be created.- Returns:
- the flatness.
-
setFlatness
public void setFlatness(double flatness) Sets the flatness of the of the rasterized outlines to be created.- Parameters:
flatness- the flatness.
-
getLineRasterizer
Sets the rasterizing algorithm.- Returns:
- the rasterizing algorithm
-
setLineRasterizer
Sets the rasterizing algorithm.- Parameters:
lineRasterizer- the rasterizing algorithm
-
rasterize
Rasterizes the given shape.- Parameters:
shape- the shape to be rasterized- Returns:
- an array of points representing the rasterized shape outline
-
rasterize
Rasterizes the given shape given as a vertices array.- Parameters:
vertices- the shape to be rasterized given as vertices- Returns:
- an array of points representing the rasterized shape outline
-
rasterize
Rasterizes the given shape given as a vertices array. The method also stores the indeices of the original vertices in the given index array.- Parameters:
vertices- the shape to be rasterized given as verticesvertexIndexes- if notnull, the method stores the original vertex indices in this array- Returns:
- an array of points representing the rasterized shape outline
-
getVertices
Converts the given shape into an array of vertices.- Parameters:
shape- the shape- Returns:
- the shape given as a vertices array
-