2 つのオブジェクト (画像またはボタン) が接触したかどうかを確認する方法を誰かが教えてくれたら本当に嬉しいです。
ありがとう!
2 つのオブジェクト (画像またはボタン) が接触したかどうかを確認する方法を誰かが教えてくれたら本当に嬉しいです。
ありがとう!
オブジェクトを回転させたことがない場合は、CoreGraphics関数を使用できます。
BOOL objectsTouch = CGRectIntersectsRect(object1.frame, object2.frame);
もちろん、これには2つのオブジェクトが同じスーパービューにある必要があります。それ以外の場合は、NSViewの機能を使用してフレームを変換する必要があります。
古典的なアプローチは、各オブジェクトを囲む最小の円を計算し、次に円の中心間の距離を計算し (ピタゴラスの定理)、R(object1 の円) + R(object2 の円) より小さいかどうかを確認することです。それ以下の場合は、ビット マッピングまたはその他のスキームを使用して処理を行う必要がありますが、それ以上の場合は、オブジェクトが接触していないと見なすことができます。