Applet 框架 hb4yqx_z.java

程序设计: 谢山水 2003.10.

// 换笔4叶曲线(带字) hb4yqx_z.java  程序设计: 2003.10.
// a, b : 背景颜色a 画笔颜色 b
// x, y : 水平移动图形 x=0--639 垂直移动图形 y=0--479
// r1,r2: 水平方向半径 r1=0--320 垂直方向半径 r2=0--240
// i, j : 心形曲线叶片 i=1--24 心形曲线弧度 j=0--2*PI


import java.applet.*; //导入java语言小程序applet包的所有类
import java.awt.*;

// 1.Applet 框架 hb4yqx_z 类继承Java小程序Applet类
public class hb4yqx_z extends Applet{ 
int i=2,h;
double PI=3.141596,j,j1=PI/5555;

// 2.定义求x,y轴投影和x,y轴坐标的方法
double fx(double j){ //x轴投影和坐标
return (Math.cos(i*j)*Math.cos(j)+1.3)*size().width*0.4;
}
double fy(double j){ //y轴投影和坐标
return (Math.cos(i*j)*Math.sin(j)+1.06)*size().height*0.45;
}

// 3.定义画图方法
public void paint(Graphics g){

// 4.输出文字
Font fnt20 = new Font("TimesRoman",Font.PLAIN,20);
Font fnt40 = new Font("宋体",Font.BOLD,40); // 创建字体对象

g.setFont(fnt20); // 设置当前字体
g.setColor(new Color(255,0,255));
g.drawString("Java TXCXSJ",185,55); // 紫字

g.setFont(fnt40); // 设置当前字体
g.setColor(new Color(0,0,255));
g.drawString("Java 语言图形程序设计",33,110);// 蓝字

g.setFont(fnt20); // 设置当前字体
g.setColor(new Color(0,133,0));
g.drawString("程序设计: 谢山水",160,240); // 绿字
g.drawString("2003年11月",340,390);

// 5.循环设置颜色
for(int i=0;i<3;i++){
switch((int) i){
case 0:
g.setColor(new Color(0,0,255)); //设置画笔为蓝色
setBackground(Color.yellow); //设置背景为黄色
break;
case 1:
g.setColor(new Color(255,255,0)); //设置画笔为黄色
setBackground(Color.orange); //设置背景为橙色
break;
case 2:
g.setColor(new Color(255,0,0)); //设置画笔为红色
setBackground(Color.green); //设置背景为绿色
break;
}

// 6.绘制4个花叶
for (j=0;j<=2*PI;j+=j1){
for (h=0;h<8;h++){
g.drawLine((int)fx(j),(int)fy(j)+h,(int)fx(j+j1),(int)fy(j+j1)+h);
}
}

}
}
}