Java图像处理技术之一

来源:互联网 发布:notepad sql 编辑:程序博客网 时间:2024/06/08 06:22
<script type="text/javascript">google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//</script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>基本技术:在Java中实现动画有很多种办法,但它们实现的基本原理是一样的,即在屏幕上画出一系列的帧来造成运动的感觉。我们先构造一个程序的框架,再慢慢扩展,使之功能比较齐备。使用线程:为了每秒中多次更新屏幕,必须创建一个线程来实现动画的循环,这个循环要跟踪当前帧并响应周期性的屏幕更新要求。实现线程的方法有两种,你可以创建一个类Thread的派生类,或附和在一个Runnable的界面上。一个容易犯的错误是将动画循环放在paint()中,这样占据了主AWT线程,而主线程将负责所有的绘图和事件处理。一个框架applet如下:publicclass Animator1 extends java.applet.Applet implements Runnable {int frame;int delay;Thread animator;public void init() {String str = getParameter("fps");int fps = (str != null) ? Integer.parseInt(str) : 10;delay = (fps > 0) ? (1000 / fps) : 100;}public vois start() {animator = new Thread(this);animator.start();}public void run() {while (Thread.currentThread() == animator) {repaint();try {Thread.sleep(delay);} catch (InterruptedException e) {break;}frame ;}}public void stop() {animator = null;}}在你的HTML文件中这样引用:applet code=Animator1.class width=200 height=200>/applet上面的参数fps表示每秒的帧数保持恒定的帧速度:上例中,applet只是在每两帧之间休眠一个固定的时间,但这有些缺点,有时你会等很长时间,为了每秒显示十帧图象,不应该休眠100毫秒,因为在运行当中也耗费了时间。这里有一个简单的补救方法:public void run() {long tm = System.currentTimeMillis();while (Thread.currentThread() == animator) {repaint();try {tm = delay;Thread.sleep(Math.max(0,tm -System.currentTimeMillis()));} catch (InterruptedException e) {break;}frame ;}} Java图像处理技术之一 Java图像处理技术之二 Java图像处理技术之三 Java图像处理技术之四
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 金甲战士北极雪 金甲是什么意思 金甲战士全集 金甲战士图片 金申 300443金雷风电 金雷风电 金时捷锂电48v电池价格 金彭电三轮款式价格 金利华电股吧 金皓 脔皇by金盈 脔皇 金盈 金益 金益科技 金益新村 金盏花 金盏菊 金盏银盘 金盏花图片 金盏花水 金盏花面霜 金盏 金盏菊价格 金盏花茶 科颜氏金盏花水 加州宝宝金盏花面霜 菲诗小铺金盏花精华乳 科颜氏的金盏花水 菲诗小铺金盏花水 菲诗小铺金盏花怎么样 科颜氏金盏花系列 加州宝宝金盏花面霜成分 金盏花爽肤水的功效与作用 科颜氏金盏花爽肤水怎么样 英国aa网金盏花面霜 科颜氏金盏花水怎么辨别真假 契尔氏金盏花水 boiron金盏花面霜 金盛丸 金盛