Ellipse2D.Double ellipse = new Ellipse2D.Double(xMin, yMin, xMax - xMin, yMax - yMin);
Ellipse2D.Double ellipse = new Ellipse2D.Double(xCenter - xDiameter / 2, yCenter - yDiameter / 2, xDiameter, yDiameter); if (rotation != 0) {  GeneralPath g = new GeneralPath(ellipse); AffineTransform affine = AffineTransform.getRotateInstance(rotation, xCenter, yCenter); g.transform(affine); mPath.append(g, false); pt = g.getCurrentPoint(); } else { mPath.append(ellipse, false); pt = new Point2D.Float((float)(xCenter + xDiameter), (float)yCenter); }
	public void ellipseTo(double xMin, double yMin, double xMax, double yMax)	{		Point2D pt;		pt = new Point2D.Float((float)xMax, (float)((yMin + yMax) / 2));		mMoveTos.add(pt);		/*		 * Create elliptical shape and add it to path.		 */		Ellipse2D.Double ellipse = new Ellipse2D.Double(xMin, yMin,			xMax - xMin, yMax - yMin);		mPath.append(ellipse, false);		mNLineTos++;	}