Class ShapeRasterizer

java.lang.Object
org.esa.snap.core.util.ShapeRasterizer

public class ShapeRasterizer extends Object
Instances of this class are used to rasterize the outline of a java.awt.Shape.
Version:
$Revision$ $Date$
  • Constructor Details

    • ShapeRasterizer

      public ShapeRasterizer()
      Constructs a new rasterizer with a no affine transformation, a flatness of 1.0 and 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 be null.
      flatness - the flatness of the rasterized outlines to be created.
      lineRasterizer - the rasterizing algorithm
  • Method Details

    • getTransform

      public AffineTransform getTransform()
      Gets the affine transformation to be applied before a shape is rasterized.
      Returns:
      the affine transformation, can be null.
    • setTransform

      public void setTransform(AffineTransform transform)
      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 be null.
    • 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

      public ShapeRasterizer.LineRasterizer getLineRasterizer()
      Sets the rasterizing algorithm.
      Returns:
      the rasterizing algorithm
    • setLineRasterizer

      public void setLineRasterizer(ShapeRasterizer.LineRasterizer lineRasterizer)
      Sets the rasterizing algorithm.
      Parameters:
      lineRasterizer - the rasterizing algorithm
    • rasterize

      public Point2D[] rasterize(Shape shape)
      Rasterizes the given shape.
      Parameters:
      shape - the shape to be rasterized
      Returns:
      an array of points representing the rasterized shape outline
    • rasterize

      public Point2D[] rasterize(Point2D[] vertices)
      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

      public Point2D[] rasterize(Point2D[] vertices, int[] vertexIndexes)
      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 vertices
      vertexIndexes - if not null, the method stores the original vertex indices in this array
      Returns:
      an array of points representing the rasterized shape outline
    • getVertices

      public Point2D[] getVertices(Shape shape)
      Converts the given shape into an array of vertices.
      Parameters:
      shape - the shape
      Returns:
      the shape given as a vertices array