- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java语言程序设计 本章内容提要 1、图形与图像描绘 2、数字图像处理 3、java 3D基础 6.1 图形与图形的描绘 任何一个图形对象(java.awt.Component的子类)使用java.awt.Grephics类提供的绘图方法就可以画出线条、矩形、圆形等图形。该方法为: public void paint(Graohics g); 6.1.1 Graphics类 Graphics类常用的绘图方法 图像的加载和显示是异步进行的,图像的生产者(ImageProducer)传递给图像的消费者(ImageConsumer)一个与图像相关的位,因为图像的生产过程是一个异步行为,所以 AWT 也提供一个图像观察(ImageObserver),用来监视图像生产者的图像生产过程。因为 java.awt.Component 实现 ImageObserver 接口,所以 AWT 中每个构件都是ImageObserver ,当一个给定的 ImageProducer 采取异步操作时,这个 ImageObserver 可以选择是否被更新 Graphics类的Set/get方法 【例6-2】 绘制用色彩填充的笑脸图形。 6.1.2 Java 2D 绘制时,只要将Graphics 对象强制转化为Graphics 2D对象就行。 【例6-3】设置线条粗细 线段端点修饰风格简介 常 量 名 称常 量 值修 饰 办 法 BasicStroke.CAP_BUTT0对线段端点不加任何修饰 BasicStroke.CAP_ROUND1在线段端点加半圆进行修饰,半圆的直径为线段的宽度 BasicStroke.CAP_SQUARE2在线段端点加矩形进行修饰,矩形的宽度为线段宽度的一半,矩形的高度为线段的宽度 线段折点修饰风格简介 常 量 名 称常 量 值修 饰 办 法 BasicStroke.JOIN_MITER0对线段折点不加任何修饰 BasicStroke.JOIN_ROUND1在折线段的两端加半圆进行修饰,半圆的直径为线段的宽度 BasicStroke.JOIN_BEVEL2将组成折点的两条线段的外侧延长至相交,然后填充被包的区域 【例6-4】填充图形 GradientPaint类 构造函数GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2,boolean cyclic) 即从点(x1,y1)到点(x2,y2)进行渐变 Cyclic为true时,为循环模式。 6.1.3 画布Canvas 1、创建 Canvas的构造方法没参数,所以使用简单的语句就可以创建一个画布对象: Canvas canvas1=new Canvas(); 在创建了 Canvas对象后,一定要调用setSize()方法确定这个画布的大小。 Canvas具有自己的坐标系统,使用布局管理器可以确定它在其他组件中的位置,并且可以用布局管理器来进行版面布局。 2、常用方法 我们在进行程序设计时,经常把要实现的功能单独设计为一个类,而把显示这个功能设计成另一个,我们把实现功能的类称为业务逻辑层,而显示功能的类称为表现层。这样,把逻辑层和表现层分开,有利于实现代码重用。看下面的示例。 【例6-5】通过一个窗体的文本框输入圆的半径及坐标位置,在画布上绘制一个圆。以此例说明,逻辑层和表现层间的数据传递。 (b) 在画布上绘制圆形 图6.6 逻辑层与表现层的设计模式示例 6.2 数字图像处理 数字图像处理技术就是将图像信号转换成数字格式并利用计算机进行处理的过程。 我们要用到awt的Image类和java.awt.image包,awt的抽象类Image所有图形图像类的父类,java.awt.image包为创建和修改图像提供了技术支持。 6.2.1 图像文件 例:(1) 单一灰色 (2)渐变灰度。 6.2.2 图像的基本操作 图像最基本的操作有三种,它们是创建图像、加载图像和显示图像。 1、 创建图像对象 由于图像最终要在屏幕中显示出来,java.awt的Component类提供了一个createImage()方法来生成Image图像对象。 CreateImage()方法有两种形式: Image createImage(ImageProducer imgProd) ; Image createImage(int width, int height) ; 2、 加载图像 获得图像的另一种方法是加载图像
您可能关注的文档
- 《FoxitPDFEditor简单使用教程.ppt
- 《FMEA讲义.ppt
- 《fortran逻辑运算和选择结构4.ppt
- 《Flash脚本基础实例导航条及MC.ppt
- 《FreeKaoYan关于考研英语单词讲解前缀.ppt
- 《Fries重排反应.ppt
- 《Friends蛋挞的广告策划.ppt
- 《FPGA设计与应用课程说明.ppt
- 《F教案结构力学宋岩升901矩阵位移法概述力学.ppt
- 《Frontpage2003教程.ppt
- 【深交所-2024研报】谱尼测试:谱尼测试集团股份有限公司2024年第三季度报告(更新稿).pdf
- 【中州国际证券-2024研报】中州国际证券港股晨报.pdf
- 【中国人民银行-2024研报】高盛集团:万字长文,展望中国2025年,勇者逆风而行.pdf
- 【港交所-2024研报】金慧科技 2024年中期报告.pdf
- 【港交所-2024研报】超智能控股 2024/25 中期报告.pdf
- 【民银证券-2024研报】联合解读2024年USCC年度报告:美国国会如何看待中国竞争.pdf
- 【光大证券-2024研报】《大国博弈》系列第七十一篇:特朗普第一任期,中美交锋全复盘.pdf
- 【德邦证券-2024研报】食品饮料板块2025年度策略:拐点之年,孕育新周期.pdf
- 【国联证券-2024研报】固态电池系列报告一:硫化物固态电池产业化提速.pdf
- 【港交所-2024研报】滔搏 2024/25 中期报告.pdf
文档评论(0)