Package com.itextpdf.awt.geom
Class GeneralPath
- java.lang.Object
-
- com.itextpdf.awt.geom.GeneralPath
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classGeneralPath.Iterator
-
Field Summary
Fields Modifier and Type Field Description private static intBUFFER_CAPACITYThe buffers capacityprivate static intBUFFER_SIZEThe buffers size(package private) float[]pointsThe points buffer(package private) static int[]pointShiftThe space amount in points buffer for different segmenet's types(package private) intpointSizeThe points buffer size(package private) intruleThe path rule(package private) byte[]typesThe point's types buffer(package private) inttypeSizeThe point's type buffer sizestatic intWIND_EVEN_ODDstatic intWIND_NON_ZERO
-
Constructor Summary
Constructors Constructor Description GeneralPath()GeneralPath(int rule)GeneralPath(int rule, int initialCapacity)GeneralPath(Shape shape)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappend(PathIterator path, boolean connect)voidappend(Shape shape, boolean connect)(package private) voidcheckBuf(int pointCount, boolean checkMove)Checks points and types buffer size to add pointCount points.java.lang.Objectclone()voidclosePath()booleancontains(double px, double py)booleancontains(double rx, double ry, double rw, double rh)booleancontains(Point2D p)booleancontains(Rectangle2D r)ShapecreateTransformedShape(AffineTransform t)voidcurveTo(float x1, float y1, float x2, float y2, float x3, float y3)RectanglegetBounds()Rectangle2DgetBounds2D()Point2DgetCurrentPoint()PathIteratorgetPathIterator(AffineTransform t)PathIteratorgetPathIterator(AffineTransform t, double flatness)intgetWindingRule()booleanintersects(double rx, double ry, double rw, double rh)booleanintersects(Rectangle2D r)(package private) booleanisInside(int cross)Checks cross count according to path rule to define is it point inside shape or not.voidlineTo(float x, float y)voidmoveTo(float x, float y)voidquadTo(float x1, float y1, float x2, float y2)voidreset()voidsetWindingRule(int rule)voidtransform(AffineTransform t)
-
-
-
Field Detail
-
WIND_EVEN_ODD
public static final int WIND_EVEN_ODD
- See Also:
- Constant Field Values
-
WIND_NON_ZERO
public static final int WIND_NON_ZERO
- See Also:
- Constant Field Values
-
BUFFER_SIZE
private static final int BUFFER_SIZE
The buffers size- See Also:
- Constant Field Values
-
BUFFER_CAPACITY
private static final int BUFFER_CAPACITY
The buffers capacity- See Also:
- Constant Field Values
-
types
byte[] types
The point's types buffer
-
points
float[] points
The points buffer
-
typeSize
int typeSize
The point's type buffer size
-
pointSize
int pointSize
The points buffer size
-
rule
int rule
The path rule
-
pointShift
static int[] pointShift
The space amount in points buffer for different segmenet's types
-
-
Constructor Detail
-
GeneralPath
public GeneralPath()
-
GeneralPath
public GeneralPath(int rule)
-
GeneralPath
public GeneralPath(int rule, int initialCapacity)
-
GeneralPath
public GeneralPath(Shape shape)
-
-
Method Detail
-
setWindingRule
public void setWindingRule(int rule)
-
getWindingRule
public int getWindingRule()
-
checkBuf
void checkBuf(int pointCount, boolean checkMove)Checks points and types buffer size to add pointCount points. If necessary realloc buffers to enlarge size.- Parameters:
pointCount- - the point count to be added in buffer
-
moveTo
public void moveTo(float x, float y)
-
lineTo
public void lineTo(float x, float y)
-
quadTo
public void quadTo(float x1, float y1, float x2, float y2)
-
curveTo
public void curveTo(float x1, float y1, float x2, float y2, float x3, float y3)
-
closePath
public void closePath()
-
append
public void append(Shape shape, boolean connect)
-
append
public void append(PathIterator path, boolean connect)
-
getCurrentPoint
public Point2D getCurrentPoint()
-
reset
public void reset()
-
transform
public void transform(AffineTransform t)
-
createTransformedShape
public Shape createTransformedShape(AffineTransform t)
-
getBounds2D
public Rectangle2D getBounds2D()
- Specified by:
getBounds2Din interfaceShape
-
isInside
boolean isInside(int cross)
Checks cross count according to path rule to define is it point inside shape or not.- Parameters:
cross- - the point cross count- Returns:
- true if point is inside path, or false otherwise
-
contains
public boolean contains(double rx, double ry, double rw, double rh)
-
intersects
public boolean intersects(double rx, double ry, double rw, double rh)- Specified by:
intersectsin interfaceShape
-
contains
public boolean contains(Rectangle2D r)
-
intersects
public boolean intersects(Rectangle2D r)
- Specified by:
intersectsin interfaceShape
-
getPathIterator
public PathIterator getPathIterator(AffineTransform t)
- Specified by:
getPathIteratorin interfaceShape
-
getPathIterator
public PathIterator getPathIterator(AffineTransform t, double flatness)
- Specified by:
getPathIteratorin interfaceShape
-
clone
public java.lang.Object clone()
- Overrides:
clonein classjava.lang.Object
-
-