Java Shape .getPathIterator (AffineTransform at)
Syntax
Shape.getPathIterator(AffineTransform at) has the following syntax.
PathIterator getPathIterator(AffineTransform at)
Example
In the following code shows how to use Shape.getPathIterator(AffineTransform at) method.
import java.awt.Shape;
import java.awt.geom.PathIterator;
import java.awt.geom.Rectangle2D;
/* w w w .j a v a 2 s. c o m*/
public class Main {
public static void main(String[] args) throws Exception {
Shape s = new Rectangle2D.Double(0, 0, 72, 72);
PathIterator pi = s.getPathIterator(null);
while (pi.isDone() == false) {
describeCurrentSegment(pi);
pi.next();
}
}
public static void describeCurrentSegment(PathIterator pi) {
double[] coordinates = new double[6];
int type = pi.currentSegment(coordinates);
switch (type) {
case PathIterator.SEG_MOVETO:
System.out.println("move to " + coordinates[0] + ", " + coordinates[1]);
break;
case PathIterator.SEG_LINETO:
System.out.println("line to " + coordinates[0] + ", " + coordinates[1]);
break;
case PathIterator.SEG_QUADTO:
System.out.println("quadratic to " + coordinates[0] + ", " + coordinates[1] + ", "
+ coordinates[2] + ", " + coordinates[3]);
break;
case PathIterator.SEG_CUBICTO:
System.out.println("cubic to " + coordinates[0] + ", " + coordinates[1] + ", "
+ coordinates[2] + ", " + coordinates[3] + ", " + coordinates[4] + ", " + coordinates[5]);
break;
case PathIterator.SEG_CLOSE:
System.out.println("close");
break;
default:
break;
}
}
}
The code above generates the following result.
Home »
Java Tutorial »
java.awt »
Java Tutorial »
java.awt »