0
私は2つのダイナミックな円をとり、接触点を返すアルゴリズムを探しています。何らかの理由でこれを検索しようとすると、結果の速度を返すアルゴリズムを記述するhttp://ericleong.me/research/circle-circle/のようなリソースしか見つけることができません。タッチポイントを返すサークルとサークルスイープテスト
私は2つのダイナミックな円をとり、接触点を返すアルゴリズムを探しています。何らかの理由でこれを検索しようとすると、結果の速度を返すアルゴリズムを記述するhttp://ericleong.me/research/circle-circle/のようなリソースしか見つけることができません。タッチポイントを返すサークルとサークルスイープテスト
あなたはよく問題を定義していません。
は、円の中心が式cx1_0は、第一円のX座標開始さ
cx1 = cx1_0 + t * vx1
cx2 = cx2_0 + t * vx2
cy1 = cy1_0 + t * vy1
cy2 = cy2_0 + t * vy2
で移動さう、VX1は、その速度のx成分です。
円は、中心間距離が半径の合計に等しいときに互いに接触します。
上記の置換式、未知パラメータtの2次方程式を解くことができます。 0,1または2の解を得ることができます(交互作用なし、1回の接触、交差期間が存在します)。その後、センターを計算すると、タッチした瞬間の座標と外部触れるためのタッチポイントを得る:内部感動が発生する場合がありますので、私は外部強調
x_touch = (cx1 * r1 + cx2 * r2)/(r1 + r2)
similar for y
注(その場合には距離が半径の差に等しいですが、私
これは非常に基本的なもののようですので、私はおそらく何かを見逃しているか、間違った名前で探しています。これが重複してマークされているとき、私は緩めるだろうカルマをリッピング:( – Julian