ch13 - 图形 Java语言程序设计基础篇课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
绘制多边形
int[] x = {25, 216, 62, 121, 180}; int[] y = {80, 80, 191, 11, 191}; g.drawPolygon(x, y, x.length); g.drawPolyline(x, y, x.length);
(x[0],y[0])
(x[3],y[3]) (x[1],y[1])
fillRect(int x, int y, int w, int h); (x,y) h w
draw3DRect(int x, int y, int w, int h fillRoundRect(int x, int y, int w, int h,
Boolean raise);
int aw, int ah);
绘制字符串
drawString (String str, int x, int y);
(x,y)
绘制线段
drawLine(int x1, int y1, int x2, int y2);
(x1,y1)
(x2,y2)
绘制矩形
drawRect(int x, int y, int w, int h); (x,y) h w
Java程序设计
YANGLIN@BNUITC
第13章 图形
学习目标
理解Java的坐标系 使用Graphics类中的方法画图 使用paintComponent方法在面板中绘制图形
Java坐标系
y (x,y)
(0,0)
x
传统坐标系
(0,0) x
(x,y)
y Java坐标系
组件内部以组件左上角为坐标原点。 组件外部以组件所在容器的左上角为坐标原点。
(x,y) h
w
(x,y)
ah/2
aw/2
h
w
Example:DrawRectangles.java
绘制圆形
drawOval(int x, int y, int w, int h); fillOval(int x, int y, int w, int h);
(x,y) h
w
Example:DrawOvals.java
绘制圆弧
drawArc(int x, int y, int w, int h, int angle1, int angle2); fillArc(int x, int y, int w, int h, int angle1, int angle2);
(x,y) angle2 angle1 h
w
Example:DrawArcs.java
Example:DrawPolygon.java
例 绘制时钟
编写程序,绘制时钟
x = cx + r * sin(θ) y = cy - r * con(θ)
12 (x,y)
θr
9
(cx,cy) 3
6
Example:DisplayClock.java, StillClock.java, MessagePanel.java
例 显示图像
实现一个可缩放显示图像的的组件,。
Example: DisplayImage.java, ImageViewer.java, SixFlags.java
(x[0],y[0])
(x[3],y[3]) (x[1],y[1])(x[2Βιβλιοθήκη ,y[2]) (x[4],y[4])
(x[2],y[2]) (x[4],y[4])
使用Polygon绘制多边形
Polygon polygon = new Polygon(); polygon.addPoint(25, 80); polygon.addPoint(216, 80); polygon.addPoint(62, 191); polygon.addPoint(121, 11); polygon.addPoint(180, 191); g.drawPolygon(polygon);