展开全部
你的要求基本实现,不过由于swing中的位置确定的基本单位1长度单位,,由于三角函数使用,所以会32313133353236313431303231363533e78988e69d8331333332616335造成误差,但思路是这么个思路,如有不解可继续追问
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Point;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.event.*;
import java.util.Timer;
import java.util.TimerTask;
public class YuanYiDong extends JFrame {
private final static int SPEED= 50;// 控制移动速度
private static int BANJIN = 30;
private static Point newLocationPoint = new Point(0, 0);
private static Point oldLocationPoint = new Point(1, 1);
private static Point moveLocationPoint = new Point(50, 50);
private static double xielv = 0.0;
private static double W = 0.0, H