快速业务通道

[JAVA100例]027、控制波形图 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21

[JAVA100例]027、控制波形图

时间:2011-01-09

import java.awt.*; import javax.swing.*; public class Func extends JFrame{ /** *<br>方法说明:主方法 *<br>输入参数: *<br>返回类型: */  public static void main(String[] args){   Func db = new Func();   db.update();  } /** *<br>方法说明:构造器,显示窗体 *<br>输入参数: *<br>返回类型: */  Func(){   super("Function");   setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);   setSize(310,310);   show();  } /** *<br>方法说明:更新画面 *<br>输入参数: *<br>返回类型: */  public void update(){    repaint();  } /** *<br>方法说明:转换坐标点 *<br>输入参数: *<br>返回类型: */  double f(double x) {     return (Math.sin(2*x)+Math.cos(3*x));  } /** *<br>方法说明:绘制坐标图 *<br>输入参数: *<br>返回类型: */  public void paint(Graphics g) {     double x0,x1,y0,y1,xd,yd;     double max=5.0;     int w,h,hw,hh;     //获取屏幕的尺寸     w=getSize().width;     h=getSize().height;     hw=w/2; hh=h/2;     //在屏幕上输出字符     g.drawString("Sin[2x]+Cos[3x]",10,40);     g.setColor(Color.red);     g.drawString("0",hw+5,hh+12);     g.drawString(""+max,hw-20,40);     g.drawString(""+max,w-20,hh+12);     //绘制X轴坐标     g.drawLine(0,hh,w,hh);     //绘制Y轴坐标     g.drawLine(hw,0,hw,h);     xd=2*max/w;//计算X增量     yd=hh/max; //计算y增量     g.setColor(Color.blue);     //使用增量绘制一小段线,最终组成曲线图形。     for (int x=0 ; x<w-1; x++) {      x0=-max+x*xd; y0=f(x0)*yd;      x1=x0+xd;   y1=f(x1)*yd;      g.drawLine(x,(int)(hh-y0),x+1,(int)(hh-y1));     }  } } //end

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号