## com.lowagie.text.pdf.internal
Class PolylineShape

    java.lang.Object
      com.lowagie.text.pdf.internal.PolylineShape

All Implemented Interfaces:
  java.awt.Shape

    public class PolylineShape

extends java.lang.Object
implements java.awt.Shape

Class that defines a Polyline shape. This class was originally written by wil - amristar.com.au and integrated into iText by Bruno.

Field Summary
`protected int` `np` The total number of points.
`protected int[]` `x` All the X-values of the coordinates in the polyline.
`protected int[]` `y` All the Y-values of the coordinates in the polyline.

Constructor Summary
`PolylineShape(int[] x, int[] y, int nPoints)` Creates a PolylineShape.

Method Summary
`boolean` `contains(double x, double y)` A polyline can't contain a point.
`boolean` `contains(double x, double y, double w, double h)` A polyline can't contain a point.
`boolean` `contains(java.awt.geom.Point2D p)` A polyline can't contain a point.
`boolean` `contains(java.awt.geom.Rectangle2D r)` A polyline can't contain a point.
`java.awt.Rectangle` `getBounds()` Returns the bounding box of this polyline.
`java.awt.geom.Rectangle2D` `getBounds2D()` Returns the bounding box of this polyline.
`java.awt.geom.PathIterator` `getPathIterator(java.awt.geom.AffineTransform at)` Returns an iteration object that defines the boundary of the polyline.
`java.awt.geom.PathIterator` `getPathIterator(java.awt.geom.AffineTransform at, double flatness)` There's no difference with getPathIterator(AffineTransform at); we just need this method to implement the Shape interface.
`boolean` `intersects(double x, double y, double w, double h)` Checks if one of the lines in the polyline intersects with a given rectangle.
`boolean` `intersects(java.awt.geom.Rectangle2D r)` Checks if one of the lines in the polyline intersects with a given rectangle.
`private int[]` `rect()` Calculates the origin (X, Y) and the width and height of a rectangle that contains all the segments of the polyline.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### x

    protected int[] x

  All the X-values of the coordinates in the polyline.

### y

    protected int[] y

  All the Y-values of the coordinates in the polyline.

### np

    protected int np

  The total number of points.

Constructor Detail

### PolylineShape

    public PolylineShape(int[] x,
                         int[] y,
                         int nPoints)

  Creates a PolylineShape.

Method Detail

### getBounds2D

    public java.awt.geom.Rectangle2D getBounds2D()

  Returns the bounding box of this polyline.

  Specified by:
    `getBounds2D` in interface `java.awt.Shape`
  Returns:
    a `Rectangle2D` that is the high-precision bounding box of this line.
  See Also:
    `Shape.getBounds2D()`

### getBounds

    public java.awt.Rectangle getBounds()

  Returns the bounding box of this polyline.

  Specified by:
    `getBounds` in interface `java.awt.Shape`
  See Also:
    `Shape.getBounds()`

### rect

    private int[] rect()

  Calculates the origin (X, Y) and the width and height of a rectangle that contains all the segments of the polyline.

### contains

    public boolean contains(double x,
                            double y)

  A polyline can't contain a point.

  Specified by:
    `contains` in interface `java.awt.Shape`
  See Also:
    `Shape.contains(double, double)`

### contains

    public boolean contains(java.awt.geom.Point2D p)

  A polyline can't contain a point.

  Specified by:
    `contains` in interface `java.awt.Shape`
  See Also:
    `Shape.contains(java.awt.geom.Point2D)`

### contains

    public boolean contains(double x,
                            double y,
                            double w,
                            double h)

  A polyline can't contain a point.

  Specified by:
    `contains` in interface `java.awt.Shape`
  See Also:
    `Shape.contains(double, double, double, double)`

### contains

    public boolean contains(java.awt.geom.Rectangle2D r)

  A polyline can't contain a point.

  Specified by:
    `contains` in interface `java.awt.Shape`
  See Also:
    `Shape.contains(java.awt.geom.Rectangle2D)`

### intersects

    public boolean intersects(double x,
                              double y,
                              double w,
                              double h)

  Checks if one of the lines in the polyline intersects with a given rectangle.

  Specified by:
    `intersects` in interface `java.awt.Shape`
  See Also:
    `Shape.intersects(double, double, double, double)`

### intersects

    public boolean intersects(java.awt.geom.Rectangle2D r)

  Checks if one of the lines in the polyline intersects with a given rectangle.

  Specified by:
    `intersects` in interface `java.awt.Shape`
  See Also:
    `Shape.intersects(java.awt.geom.Rectangle2D)`

### getPathIterator

    public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform at)

  Returns an iteration object that defines the boundary of the polyline.

  Specified by:
    `getPathIterator` in interface `java.awt.Shape`
  Parameters:
    `at` - the specified `AffineTransform`
  Returns:
    a `PathIterator` that defines the boundary of this polyline.
  See Also:
    `Shape.intersects(java.awt.geom.Rectangle2D)`

### getPathIterator

    public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform at,
                                                      double flatness)

  There's no difference with getPathIterator(AffineTransform at); we just need this method to implement the Shape interface.

  Specified by:
    `getPathIterator` in interface `java.awt.Shape`

Hosted by Hostbasket