高さが 600 ピクセルで、それぞれ 50 ピクセル x 50 ピクセルの 12 個のボックスがあるビューがあります。ユーザーがクリックすると、重力に基づいて落下するボールを作成しました。私は物理学のデモンストレーションのためにこれを行っており、可能な限り正確にしようとしています。現在、私が取り組んでいるスケールでは、4 つのボックス (または 200 ピクセル) を 1 メートルとして使用しています。「y」位置を計算するメソッドは、毎秒 50 回 (50 fps) 呼び出されます。このコードを使用してプログラムを実行しようとすると、かなりの時間オフになります。
これは、位置を更新するために呼び出しているメソッドです。
public double calcY()
{
velocity += acceleration*200/2500;
return(getY()-velocity);
}
メートルをピクセルに変換するために 200 を掛けています。毎秒 50 回呼び出されるため、2500 で割ると、(50)^2 は 2500 になります。
今のところ、それほどずれていません。助けてくれてありがとう。