2つの重なっている要素を確認するためにこの関数を書いた
(長方形です)、
下の最初の図に示すとおりです。javascriptを使用して重複する円の要素をチェックする関数ですか?
問題は、私は円形elelemtsを使用したい、 以下の2番目の図に示すように。
だから、私は は、任意のヘルプをお願い申し上げ、一部にMath.PIと半径の計算を追加する必要があると思います...
var checkOverlap = function (a, b) {
if (
((a.left < b.left && a.left + a.width > b.left) ||
(a.left > b.left && a.left + a.width < b.left + b.width) ||
(a.left > b.left && a.left + a.width > b.left + b.width)) &&
((a.top < b.top && a.top + a.height > b.top) ||
(a.top > b.top && a.top + a.height > b.top) ||
(a.top > b.top && a.top < b.top + b.height)) &&
(a.left < b.left + b.width) &&
(a.top < b.top + b.height)
) {
return true;
}
};
右:
あなたは楕円を扱っていないと仮定すると、あなただけのそれらの中心(Pythagoras theorem)の間の距離がその半径の和よりも小さい場合、計算する必要があります。 –