[JAVA100例]027、控制波形图

李李程912

李李程912

2016-02-19 15:38

今天图老师小编要向大家分享个[JAVA100例]027、控制波形图教程,过程简单易学,相信聪明的你一定能轻松get!
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 ; xw-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
展开更多 50%)
分享

猜你喜欢

[JAVA100例]027、控制波形图

编程语言 网络编程
[JAVA100例]027、控制波形图

[JAVA100例]002、Java流程控制

编程语言 网络编程
[JAVA100例]002、Java流程控制

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

[JAVA100例]066、线程控制

编程语言 网络编程
[JAVA100例]066、线程控制

[JAVA100例]060、继承Thread

编程语言 网络编程
[JAVA100例]060、继承Thread

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

[JAVA100例]001、Hello,Java

编程语言 网络编程
[JAVA100例]001、Hello,Java

[JAVA100例]011、按钮

编程语言 网络编程
[JAVA100例]011、按钮

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

divcss表单布局五个小技巧控制表单更灵活

divcss表单布局五个小技巧控制表单更灵活

Linux ls命令操作实例汇总

Linux ls命令操作实例汇总
下拉加载更多内容 ↓