【发布时间】:2016-09-19 16:54:25
【问题描述】:
我想围绕一个角旋转矩形,但我现在不知道如何确定角的新坐标。旋转可以在任何角落。 是否存在另一种旋转方式?
有人可以帮我吗?
import java.applet.*;
import java.awt.*;
public class MainApplet extends Applet implements Runnable {
int width, height;
int i = 0;
Thread t = null;
boolean threadSuspended;
public void init() {
width = getSize().width;
height = getSize().height;
setBackground(Color.black);
}
public void destroy() {}
public void start() {
if (t == null) {
t = new Thread(this);
threadSuspended = false;
t.start();
} else {
if (threadSuspended) {
threadSuspended = false;
synchronized (this) {
notify();
}
}
}
}
public void stop() {
threadSuspended = true;
}
public void run() {
try {
while (true) {
++i;
if (i == 359) {
i = 0;
}
showStatus("i is " + i);
if (threadSuspended) {
synchronized (this) {
while (threadSuspended) {
wait();
}
}
}
repaint();
t.sleep(100); // interval given in milliseconds
}
} catch (InterruptedException e) {
}
}
public void paint(Graphics g) {
g.setColor(Color.green);
g.drawRect(200,150, (int) (50*Math.cos(i)-100*Math.sin(i)+200-200*Math.cos(i)+150*Math.sin(i)),
(int) (50*Math.sin(i)+100*Math.cos(i)+150-200*Math.sin(i)-150*Math.cos(i)));
}
}
【问题讨论】:
-
1) 为什么要编写小程序?如果是老师指定的,请参考Why CS teachers should stop teaching Java applets。 2) 为什么使用 AWT?请参阅this answer,了解许多放弃 AWT 使用支持 Swing 的组件的充分理由。
-
这是老师的任务。
-
“这是老师的任务。”好的。给他们那个链接..
标签: java animation graphics awt java-2d