我正在使用一個計時器來動畫化一個對象以恆定速度移動。製作一個以恆定速度移動的對象
這裏是我的代碼:
Class class1 = new Class();
public int x;
public int y;
public Form1()
{
InitializeComponent();
}
protected override void OnPaint(PaintEventArgs e)
{
Graphics g = e.Graphics;
class1.Draw(g);
}
private void timer1_Tick(object sender, EventArgs e)
{
x += 1;
class1.Move(x/2, x/2);
Invalidate();
}
類:
class Class
{
private int x;
private int y;
public void Draw(Graphics g)
{
SolidBrush Brush = new SolidBrush(Color.White);
g.FillRectangle(Brush, x, y, 10, 10);
}
public void Move(int X, int Y)
{
x = x + X/3;
y = y + Y/3;
}
}
廣場正在加快,如何讓它以恆定速度行駛的任何想法?
選擇一些更好的名字,問題將變得更加清晰。 'x'是一個位置,'dx'是一個速度。 '移動(x/2,x/2);'看起來像加速遠離原點。 –
這是一個Windows窗體應用程序嗎? –