2

こんにちは。赤と黄色の2つのボールを持つアプリケーションを作成しました。ユーザーはそれをXY平面RED BALL上にドラッグアンドドロップする必要があります。次に、オーバーラップの精度を計算したいと思います。YELLOW BALLターゲットのXYがストライカーのXYと等しい場合、それは100%ですが、どのように計算しますか?赤いボールをさらに動かすと、ストライカーのXの値が大きくなり、パーセントが正確になりませんか?パーセント誤差の式を使用していますが、正確ではありません

   double percentErrorX =(CurrentX-targetX)*100/targetX;
            double percentErrorY = (CurrentY -targetY)*100/targetY;

ここに画像の説明を入力してください

4

4 に答える 4

4

パーセンテージ計算の最も直感的な形式は、重なっている各円の面積のパーセンテージを計算することから来ると思います。

どのような粒度を使用していますか?そして、あなたのxy座標は、各円の中心を何を表していますか?xy座標が中心の場合、距離の式を使用できます。

d = sqrt[ (x1-x2)^2 + (y1-y2)^2 ]

ここで、ターゲットのxy座標はx1、y1であり、ストライカーのxy座標はx2、y2です。

このdを使用すると、次のようなパーセンテージを計算できます。

Percent = (d / radius)
于 2011-06-14T21:00:48.130 に答える
2

Wolframのこの素晴らしいページをご覧ください

于 2011-06-14T21:09:25.047 に答える
0

衝突には多くの種類があります。サークル衝突の良い記事: http ://compsci.ca/v3/viewtopic.php?t = 14897

于 2011-06-14T21:04:28.780 に答える
0

正確な結果を計算するには数学が必要ですが、これが適切な近似値を与える食べる方法です。ボール間の距離をsqrt((x1-x2)^ 2 +(y1-y2)^ 2)で計算します。結果はおよそ(距離/半径* 2)^ 1.8です。このように式を試して、精度が十分かどうかを確認してください。

于 2011-06-14T21:05:58.010 に答える