return SEG_QUADTO; } throw new NoSuchElementException("quad iterator out of bounds");
return result;
	public PathIterator getPathIterator(final AffineTransform at) {		return new PathIterator() {			/** Current coordinate. */			private int current;			public int getWindingRule() {				return WIND_NON_ZERO;			}			public boolean isDone() {				return current < 2;			}			public void next() {				current++;			}			public int currentSegment(float[] coords) {				if (current == 0) {					coords[0] = (float) getX1();					coords[1] = (float) getY1();					if (at != null)						at.transform(coords, 0, coords, 0, 1);					return SEG_MOVETO;				}				if (current == 1) {					coords[0] = (float) getCtrlX();					coords[1] = (float) getCtrlY();					coords[2] = (float) getX2();					coords[3] = (float) getY2();					if (at != null)						at.transform(coords, 0, coords, 0, 2);					return SEG_QUADTO;				}				throw new NoSuchElementException("quad iterator out of bounds");			}			public int currentSegment(double[] coords) {				if (current == 0) {					coords[0] = getX1();					coords[1] = getY1();					if (at != null)						at.transform(coords, 0, coords, 0, 1);					return SEG_MOVETO;				}				if (current == 1) {					coords[0] = getCtrlX();					coords[1] = getCtrlY();					coords[2] = getX2();					coords[3] = getY2();					if (at != null)						at.transform(coords, 0, coords, 0, 2);					return SEG_QUADTO;				}				throw new NoSuchElementException("quad iterator out of bounds");			}		};	}