繪製簡單映像
// draw Line2D.Doubleg2.draw(new Line2D.Double(x, y+rectHeight-1, x + rectWidth, y));
// draw Rectangle2D.Doubleg2.setStroke(stroke);g2.draw(new Rectangle2D.Double(x, y, rectWidth, rectHeight));
// draw RoundRectangle2D.Doubleg2.setStroke(dashed);g2.draw(new RoundRectangle2D.Double(x, y, rectWidth, rectHeight, 10, 10));
// draw Arc2D.Doubleg2.setStroke(wideStroke);g2.draw(new Arc2D.Double(x, y, rectWidth, rectHeight, 90, 135, Arc2D.OPEN));
// draw Ellipse2D.Doubleg2.setStroke(stroke);g2.draw(new Ellipse2D.Double(x, y, rectWidth, rectHeight));
// draw GeneralPath (polygon)int x1Points[] = {x, x+rectWidth, x, x+rectWidth};int y1Points[] = {y, y+rectHeight, y+rectHeight, y};GeneralPath polygon = new GeneralPath(GeneralPath.WIND_EVEN_ODD, x1Points.length);polygon.moveTo(x1Points[0], y1Points[0]);for (int index = 1; index < x1Points.length; index++) { polygon.lineTo(x1Points[index], y1Points[index]);};polygon.closePath();g2.draw(polygon);
// draw GeneralPath (polyline)int x2Points[] = {x, x+rectWidth, x, x+rectWidth};int y2Points[] = {y, y+rectHeight, y+rectHeight, y};GeneralPath polyline = new GeneralPath(GeneralPath.WIND_EVEN_ODD, x2Points.length);polyline.moveTo (x2Points[0], y2Points[0]);for (int index = 1; index < x2Points.length; index++) { polyline.lineTo(x2Points[index], y2Points[index]);};g2.draw(polyline);
// fill Rectangle2D.Double (red)g2.setPaint(red);g2.fill(new Rectangle2D.Double(x, y, rectWidth, rectHeight));
// fill RoundRectangle2D.Doubleg2.setPaint(redtowhite);g2.fill(new RoundRectangle2D.Double(x, y, rectWidth, rectHeight, 10, 10));
// fill Arc2Dg2.setPaint(red);g2.fill(new Arc2D.Double(x, y, rectWidth, rectHeight, 90, 135, Arc2D.OPEN));
// fill Ellipse2D.Doubleg2.setPaint(redtowhite);g2.fill (new Ellipse2D.Double(x, y, rectWidth, rectHeight));
// fill and stroke GeneralPathint x3Points[] = {x, x+rectWidth, x, x+rectWidth};int y3Points[] = {y, y+rectHeight, y+rectHeight, y};GeneralPath filledPolygon = new GeneralPath(GeneralPath.WIND_EVEN_ODD, x3Points.length);filledPolygon.moveTo(x3Points[0], y3Points[0]);for (int index = 1; index < x3Points.length; index++) {filledPolygon.lineTo(x3Points[index], y3Points[index]);};filledPolygon.closePath();g2.setPaint(red);g2.fill(filledPolygon);以上就是簡單的api和效果
Stroke
簡單說就是定義線寬/線類型用的