円・円当たり判定計算機

2つの円の衝突を判定し、めり込み量と押し戻しベクトルを計算します。

判定—

中心間の距離—
半径の和—
めり込み量—
円2を押し戻すベクトル—

計算式

使い方のヒント

距離の平方根を取らず、距離の2乗と(r1+r2)の2乗を比べれば、判定だけは高速にできます。2つの円の中心が完全に重なっている場合は、押し戻しの方向が決まりません。

計算例

初期値(円1の中心X 0、円1の中心Y 0、円1の半径 20、円2の中心X 30、円2の中心Y 10、円2の半径 15)のままで計算すると、判定は 衝突している、中心間の距離は 31.6228、半径の和は 35、めり込み量は 3.3772、円2を押し戻すベクトルは (3.204, 1.068) になります。まずはこの値を基準に、自分の数値へ置き換えて確認してください。

たとえば「円1の半径」だけを 40 に変えると、判定は 衝突している、中心間の距離は 31.6228、半径の和は 55、めり込み量は 23.3772、円2を押し戻すベクトルは (22.178, 7.393) になります。結果がどの入力にどれだけ敏感かを見るときは、入力を1つずつ動かして比べるとわかりやすくなります。

関連ツール

よくある質問

円・円当たり判定計算機では何がわかりますか?

2つの円の衝突を判定し、めり込み量と押し戻しベクトルを計算します。

何を入力すればいいですか?

次の項目を入力します: 円1の中心X、円1の中心Y、円1の半径、円2の中心X、円2の中心Y、円2の半径。内容を変えると、結果もそれに合わせて変わります。

結果にはどんな項目が表示されますか?

「判定」「中心間の距離」「半径の和」「めり込み量」「円2を押し戻すベクトル」などが表示されます。

どんな計算式を使っていますか?

ページ内の「計算式」にまとめています。たとえば「中心間の距離 d = √((x2−x1)² + (y2−y1)²)」のような式です。

結果はどのくらい正確ですか?

計算式はゲームでよく使われるものです。実際の作品では丸め方(切り捨て・四捨五入)や上限値が違うことがあるので、最後はテストプレイで確認してください。

同じカテゴリ(当たり判定)の他のツールはありますか?

はい。レイキャスティング計算機、AABB当たり判定計算機、円・矩形当たり判定計算機、当たり判定可視化などがあります。

スマホでの利用、入力内容の扱い、結果のコピー、印刷など、全ツールに共通する質問は共通のよくある質問にまとめています。

関連記事