com.itextpdf.text.pdf.internal
Class PolylineShape

java.lang.Object
  extended by com.itextpdf.text.pdf.internal.PolylineShape
All Implemented Interfaces:
Shape

public class PolylineShape
extends Object
implements 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(Point2D p)
          A polyline can't contain a point.
 boolean contains(Rectangle2D r)
          A polyline can't contain a point.
 Rectangle getBounds()
          Returns the bounding box of this polyline.
 Rectangle2D getBounds2D()
          Returns the bounding box of this polyline.
 PathIterator getPathIterator(AffineTransform at)
          Returns an iteration object that defines the boundary of the polyline.
 PathIterator getPathIterator(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(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 Rectangle2D getBounds2D()
Returns the bounding box of this polyline.

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

getBounds

public Rectangle getBounds()
Returns the bounding box of this polyline.

Specified by:
getBounds in interface 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 Shape
See Also:
Shape.contains(double, double)

contains

public boolean contains(Point2D p)
A polyline can't contain a point.

Specified by:
contains in interface 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 Shape
See Also:
Shape.contains(double, double, double, double)

contains

public boolean contains(Rectangle2D r)
A polyline can't contain a point.

Specified by:
contains in interface 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 Shape
See Also:
Shape.intersects(double, double, double, double)

intersects

public boolean intersects(Rectangle2D r)
Checks if one of the lines in the polyline intersects with a given rectangle.

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

getPathIterator

public PathIterator getPathIterator(AffineTransform at)
Returns an iteration object that defines the boundary of the polyline.

Specified by:
getPathIterator in interface 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 PathIterator getPathIterator(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 Shape

Hosted by Hostbasket