2D空間に、回転できるオブジェクトがあり、その回転角に従って移動する必要があるとします。
例えば:
角度が0(上向き)の場合、on_timer
Yで1移動し、Xで0移動する必要があります。
角度が45の場合、1 x Y、1 xX移動する必要があります。
90度を指している場合は、Yが0、Xが1です。
135度を指している場合は、Yで-1、Xで+1など。
これを計算するための関数を知っていますか?
まあ、それはさまざまな角度でさまざまな速度で動くようです。
0度(真上)の場合は1移動しましたが、45度の場合はsqrt(1 ^ 2 + 1 ^ 2)= 1.41移動しました。
Sin andCosを見たいと思います。
X += Speed * Math.Cos(angle);
Y += speed * Math.Sin(angle);
よろしくGert-Jan
これをチェックしてください: http://msdn.Microsoft.com/en-us/library/system.drawing.drawing2d.matrix.aspx (ページ下部の例)