Jbox2D プログラムで作業して、(0,10) メートル、幅 10 メートル、幅 1 メートルの長方形の 2 つのオブジェクトと、半径 0.5f メートルの (1,0) のボールを作成しました。
//in RectangleObject Class
PolygonShape cs = new PolygonShape();
cs.setAsBox(width, height);
//In CircleObject Class
CircleShape cs = new CircleShape();
cs.m_radius = radius;
プログラムを実行すると、ボールはプラットフォームに向かって移動し、予想どおりに長方形に当たりますが、返される数値は期待したものではありません
BallX[0] : 1
BallY[0] : 7.9964995
RectX[0] : 1
RectY[0] : 10
X と Y がボールの中心から計算される場合、ボールは Y = 9.5 でボックスから 0.5 しか離れていないはずです。直径を使用する場合でも、Y = 9 で最大 1 メートル離れている必要があります。
半径が 0.5 しかないのに Y が 2 メートル離れていると計算する理由を知っている人はいますか?