Java 程序设计课程

15
Java 程程程程程程 清清清清清清清清清清 IT 清清清清清清

description

Java 程序设计课程. 清华大学继续教育学院 IT 学习认证中心. 图形和声音处理. Java 中使用 Graphics 和 Graphics2D 对象定义图形外观 本章学习要点 Graphics 的概念 绘制基本图形 填充各种基本图形 学习使用 java 的字体 学习使用颜色 声音处理. 屏幕坐标体系. 0. X 轴. (x,y). Y 轴. 图形类. 图形类 (java.awt.Graphics) 是一个抽象类,用于定义一个真正的工具,接受图形操作。 该类具有 47 个公共方法:用于显示图像和文本、绘制和填充形状、剪贴图像等 - PowerPoint PPT Presentation

Transcript of Java 程序设计课程

Page 1: Java 程序设计课程

Java 程序设计课程清华大学继续教育学院IT学习认证中心

Page 2: Java 程序设计课程

图形和声音处理 Java 中使用 Graphics 和 Graphics2D 对象定义图形外观 本章学习要点

Graphics 的概念 绘制基本图形 填充各种基本图形 学习使用 java 的字体 学习使用颜色 声音处理

Page 3: Java 程序设计课程

屏幕坐标体系0

Y 轴

X 轴(x,y)

Page 4: Java 程序设计课程

图形类 图形类 (java.awt.Graphics) 是一个抽象类,用于定义一个真正的工具,接受图形操作。 该类具有 47 个公共方法:用于显示图像和文本、绘制和填充形状、剪贴图像等 调用和返回 Graphics 的相关方法见教材 (P245 表

12-1 、 12-2)

Page 5: Java 程序设计课程

绘图和填充 Graphics 可以绘制以下图形:

直线 (Lines) 折线 (Polylines) 矩形 (Rectangles) 弧 (Arcs) 椭圆 (Ovals) 多边形 (Ploygons) 文本 (Text)

Page 6: Java 程序设计课程

画线 画直线

Graphics.drawLine(int x1,int y1 ,int x2,int y2); //x1 和 y1 为起点坐标; x2 和 y2 是终点坐标

画折线 Graphics.drawPolyline(int[] x,int[] y ,int num); // 数组 x 和 y 用于指定每个点的坐标, num 表示要画的折线的点数,折线的点数等于折线段数加 1 。曲线开闭由起终点的位置是否重合确定。

Page 7: Java 程序设计课程

绘制矩形 矩形的绘制填充的方法如下

Void clearRect(int x,int y,int w,int h); Void drawRect(int x,int y, int w, int h); Void drawRoundRect(int x,int y, int w, int h,int acrW,int acrH); Void draw3DRect(int x,int y, int w, int h, boolean raise); Void fillRoundRect(int x,int y,int w,int h, int acrW,int acrH); Void fillRect(int x,int y,int w,int h); Void fill3DDrect(int x, int y, int w, int h, boolean raise);

上面的参数 x,y,w,h 均为决定坐标的参数,绘制和填充3D 矩形的方法增加了一个 boolean 型的参数,指定凸(true) 凹 (false);acrW 为弧的水平直径, acrH 为弧的垂直直径

Page 8: Java 程序设计课程

绘制多边形 多边形的绘制方法:

drawPolygon(int[] x,int[] y,int n); fillPolygon(int[] x,int[] y,int n); //x,y 为顶点坐标, n 为顶点个数

Page 9: Java 程序设计课程

绘制圆弧 绘制弧形的方法:

drawArc(int x,int y,int w, int h, int starAngle,int arcAngle);

fillArc(int x,int y,int w,int h, int starAngle,int arcAngle);

//x,y 定义左上角的点;弧的宽度 (w) 和高度 (h) ;起始角度 (starAngle), 弧扫过的角度 (arcAngle)

Page 10: Java 程序设计课程

绘制椭圆 绘制椭圆的方法

drawOval(int x,int y,int w,int h);// 空心椭圆 fillOval(int x,int y,int w,int h);// 实心椭圆 X 、 y 表示椭圆的 x 、 y 轴的距离,单位是像素,

w 、 h 表示高和宽 当 w = h 时 画出来的就是圆

Page 11: Java 程序设计课程

文本和文字 字体是一个字符集,字体通过指定其逻辑字体名、字形和字体大小来实例化 Java 的 Font 类提供的一套基本字体和字型在应用中通常转换成本地平台支持的字体 创建 Font 对象

Font(String fontName,int fontStyle,int fontSize);参数的意义:字体名,字体样式,字体大小

绘制字符和字符串drawChars(char charArr[],int cc,int len,int x,int y);参数意义:字符数组,起始位置和长度,显示坐标 xydrawString(String str,int x,int y)// 字符,坐标 x , y

Page 12: Java 程序设计课程

查找字体信息 Font 类中的几个方法用于查找当前使用字体的信息

getFamily() // 字体名字 getName() // 字体名称 getStyle() // 字体样式 getSize() // 字体大小

Page 13: Java 程序设计课程

颜色( Color 类) Java 的颜色系统采用 RGB 标准系统

Color 类定义好的 13 种颜色 ( 见文档 Color 类说明 )

Page 14: Java 程序设计课程

测试和设置颜色 颜色类的构造方法

Color(float r,float g,float b); r,g,b 的值在 0.0 到 1.0 之间 Color(float r,float g,float b,float a); a 设置颜色的 alpha 值,在 0.0-1.0 之间 Color(int rgb); 三个 0-255 的二进制代码组合,可以使用 16 进制表示 Color(int r,int g,int b); r,g,b 的范围为 0-255 的整数 Color(int r,int g,int b,int a); 参数为 0-255 的整数

Page 15: Java 程序设计课程

Java 的简单声音处理 Applet 用于播放声音的静态方法:

newAudioClip(URL url,String Sname) getAudioClip(URL url,String Sname) 以上两个方法返回 AudioClip 对象,该对象具备以下方法:

play( ) 播放声音文件loop( ) 循环播放stop( ) 停止播放

支持的声音文件有:au , aiff , wav , midi , rfm 等