float dashes[],
float dashphase)
{
FillAdapter filler = new FillAdapter();
PathStroker stroker = new PathStroker(filler);
PathDasher dasher = null;
try {
PathConsumer consumer;
stroker.setPenDiameter(width);
stroker.setPenT4(null);
stroker.setCaps(RasterizerCaps[caps]);
stroker.setCorners(RasterizerCorners[join], miterlimit);
if (dashes != null) {
dasher = new PathDasher(stroker);
dasher.setDash(dashes, dashphase);
dasher.setDashT4(null);
consumer = dasher;
} else {
consumer = stroker;
}
feedConsumer(consumer, src.getPathIterator(null));
} finally {
stroker.dispose();
if (dasher != null) {
dasher.dispose();
}
}
return filler.getShape();
}