您的位置:首页 > 编程语言 > Java开发

Java Graphics 图形绘制

2015-05-16 21:04 141 查看
Graphics类提供基本绘图方法,Graphics类提供基本的几何图形绘制方法,主要有:画线段、画矩形、画圆、画带颜色的图形、画椭圆、画圆弧、画多边形、画字符串等。

[b]画线段[/b]

drawLine

publicabstractvoiddrawLine(intx1,
inty1,
intx2,
inty2)

在此图形上下文的坐标系中,使用当前颜色在点
(x1,y1)
(x2,y2)
之间画一条线参数:
x1
-第一个点的x坐标。
y1
-第一个点的y坐标。
x2
-第二个点的x坐标。
y2
-第二个点的y坐标。

g.drawLine(10,50,100,100);


画矩形

drawRect

publicvoiddrawRect(intx,
inty,
intwidth,
intheight)


绘制指定矩形的边框。矩形的左边缘和右边缘分别位于
x
x+width
。上边缘和下边缘分别位于
y
y+height
。使用图形上下文的当前颜色绘制该矩形。

参数:
x
-要绘制矩形的x坐标。
y
-要绘制矩形的y坐标。
width
-要绘制矩形的宽度。
height
-要绘制矩形的高度。

g.drawRect(120,50,200,100);


画椭圆形

publicabstractvoiddrawOval(intx,
inty,
intwidth,
intheight)


绘制椭圆的边框。得到一个圆或椭圆,它刚好能放入由
x
y
width
height
参数指定的矩形中。
椭圆覆盖区域的宽度为
width+1
像素,高度为
height+1
像素。

参数:
x
-要绘制椭圆的左上角的x坐标。
y
-要绘制椭圆的左上角的y坐标。
width
-要绘制椭圆的宽度。
height
-要绘制椭圆的高度。

g.drawOval(160,160,200,100);


画带颜色的图形

setColor

publicabstractvoidsetColor(Colorc)

将此图形上下文的当前颜色设置为指定颜色。使用此图形上下文的所有后续图形操作均使用这个指定的颜色。

参数:
c
-新的呈现颜色。

g.setColor(Color.yellow);
g.fillRect(20,70,20,30);//画矩形着色块


画圆

drawRoundRect

publicabstractvoiddrawRoundRect(intx,
inty,
intwidth,
intheight,
intarcWidth,
intarcHeight)

用此图形上下文的当前颜色绘制圆角矩形的边框。矩形的左边缘和右边缘分别位于
x
x+width
。矩形的上边缘和下边缘分别位于
y
y+height


参数:
x
-要绘制矩形的x坐标。
y
-要绘制矩形的y坐标。
width
-要绘制矩形的宽度。
height
-要绘制矩形的高度。
arcWidth
-4个角弧度的水平直径。
arcHeight
-4个角弧度的垂直直径。

g.setColor(Color.red);g.fillRoundRect(80,100,100,100,100,100);//画圆块


画圆弧

drawArc

publicabstractvoiddrawArc(intx,
inty,
intwidth,
intheight,
intstartAngle,
intarcAngle)

绘制一个覆盖指定矩形的圆弧或椭圆弧边框。
得到的弧从
startAngle
开始跨越
arcAngle
度,并使用当前颜色。对角度的解释如下:0度角位于3点钟位置。正值指示逆时针旋转,负值指示顺时针旋转。

弧的中心是矩形的中心,此矩形的原点为(x,y),大小由
width
height
参数指定。

得到的弧覆盖
width+1
像素宽乘以
height+1
像素高的区域。

角度是相对于外接矩形的非正方形区域指定的,45度角始终落在从椭圆中心到外接矩形右上角的连线上。因此,如果外接矩形在一个轴上远远长于另一个轴,则弧段的起点和结束点的角度将沿边框长轴发生更大的偏斜。

参数:
x
-要绘制弧的左上角的x坐标。
y
-要绘制弧的左上角的y坐标。
width
-要绘制弧的宽度。
height
-要绘制弧的高度。
startAngle
-开始角度。
arcAngle
-相对于开始角度而言,弧跨越的角度。

g.drawArc(10,40,90,50,0,180);//画圆弧线

g.drawArc(100,40,90,50,180,180);//画圆弧线

g.setColor(Color.yellow);
g.fillArc(10,100,40,40,0,-270);//填充缺右上角的四分之三的椭圆

g.setColor(Color.green);
g.fillArc(60,110,110,60,-90,-270);//填充缺左下角的四分之三的椭圆


画多边形

/**
*绘制一个由x和y坐标数组定义的闭合多边形。每对(x,y)坐标定义一个点。
*/
publicabstractvoiddrawPolygon(int[]xPoints,int[]yPoints,intnPoints);

/**
*填充由x和y坐标数组定义的闭合多边形。
*/
publicabstractvoidfillPolygon(int[]xPoints,int[]yPoints,intnPoints)


intpx[]={210,220,270,250,240};
intpy[]={220,250,300,270,220};
g.drawPolygon(px,py,px.length);




画字符串

publicabstractvoiddrawString(Stringstr,
intx,
inty)

使用此图形上下文的当前字体和颜色绘制由指定string给定的文本。最左侧字符的基线位于此图形上下文坐标系的(x,y)位置处。

参数:
str
-要绘制的string。
x
-x坐标。
y
-y坐标。

g.setColor(Color.GREEN);
g.setFont(newFont("楷体",Font.BOLD,20));
g.drawString("使用画笔绘制的字符串内容",220,345);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: