📄 name2.java
字号:
import java.awt.*;
import java.applet.*;
public class name2 extends java.applet.Applet implements Runnable{
int width=400;
int height=200;
int r=60; //radius
int d; //offset
double alfa=-0.5;//rotating angle
double ratio;
Thread runner;
Image offscreenImage;
Graphics offscreenG;
public void init(){
offscreenImage = createImage(width,height);
offscreenG = offscreenImage.getGraphics();
}
public void start(){
if(runner == null){
runner = new Thread(this);
runner.start();
}
}
public void stop(){
if (runner != null){
runner.stop();
runner = null;
}
}
public void run(){
while(true){
alfa=alfa+0.5;
ratio=1-0.5*Math.sin(0.5*alfa*Math.PI/180);
d=(int)Math.ceil(r*Math.sin(alfa*Math.PI/180));
repaint();
try{
Thread.sleep(3);
}catch(InterruptedException e){}
if (alfa>360) alfa=0;
}
}
public void update(Graphics g){
paint(g);
}
public void paint(Graphics g){
offscreenG.setColor(Color.green);
offscreenG.fillRect(0,0,width,height);
offscreenG.setColor(Color.black);
offscreenG.drawLine(
(int)Math.ceil(-80*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(52*ratio),
(int)Math.ceil(-70*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(72*ratio));
offscreenG.drawLine(
(int)Math.ceil(-80*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio),
(int)Math.ceil(-70*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio));
offscreenG.drawLine(
(int)Math.ceil(-80*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(145*ratio),
(int)Math.ceil(-65*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(110*ratio));
offscreenG.drawLine(
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(52*ratio),
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(62*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(65*ratio),
(int)Math.ceil(-40*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(70*ratio));
offscreenG.drawLine(
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(65*ratio),
(int)Math.ceil(-30*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(70*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(75*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(75*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(90*ratio),
(int)Math.ceil(-40*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio));
offscreenG.drawLine(
(int)Math.ceil(-30*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(90*ratio));
offscreenG.drawLine(
(int)Math.ceil(-35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(65*ratio),
(int)Math.ceil(-35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(95*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(140*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(140*ratio));
offscreenG.drawLine(
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio),
(int)Math.ceil(-60*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(140*ratio));
offscreenG.drawLine(
(int)Math.ceil(-35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio),
(int)Math.ceil(-35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(140*ratio));
offscreenG.drawLine(
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio),
(int)Math.ceil(-10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(140*ratio));
offscreenG.drawLine(
(int)Math.ceil(10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio),
(int)Math.ceil(25*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio));
offscreenG.drawLine(
(int)Math.ceil(10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio),
(int)Math.ceil(25*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(100*ratio));
offscreenG.drawLine(
(int)Math.ceil(10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio),
(int)Math.ceil(25*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio));
offscreenG.drawLine(
(int)Math.ceil(10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio),
(int)Math.ceil(10*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio));
offscreenG.drawLine(
(int)Math.ceil(25*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(80*ratio),
(int)Math.ceil(25*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio));
offscreenG.drawLine(
(int)Math.ceil(35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(55*ratio),
(int)Math.ceil(35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(65*ratio));
offscreenG.drawLine(
(int)Math.ceil(35*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(55*ratio),
(int)Math.ceil(75*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(55*ratio));
offscreenG.drawLine(
(int)Math.ceil(75*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(55*ratio),
(int)Math.ceil(75*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(65*ratio));
offscreenG.drawLine(
(int)Math.ceil(37*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(70*ratio),
(int)Math.ceil(73*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(70*ratio));
offscreenG.drawLine(
(int)Math.ceil(39*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(95*ratio),
(int)Math.ceil(71*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(95*ratio));
offscreenG.drawLine(
(int)Math.ceil(33*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio),
(int)Math.ceil(77*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(120*ratio));
offscreenG.drawLine(
(int)Math.ceil(55*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(70*ratio),
(int)Math.ceil(55*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(145*ratio));
offscreenG.drawLine(
(int)Math.ceil(55*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(60*ratio),
(int)Math.ceil(39*Math.cos(alfa*Math.PI/180)*ratio+d+width/2),
(int)Math.ceil(95*ratio));
g.drawImage(offscreenImage,0,0,this);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -