半径内のオブジェクトを見つけるための軽量な方法を探しています。
これまでのところ、私にとって明らかな答えは、各オブジェクトを調べて、その x および y 位置を半径の中心と比較することです。
例:
Turret
- 半径内のターゲットを探しています。
TargetArray
- 可能なターゲットの配列。
WithinRangeArray
- 該当するターゲットをプッシュする配列
Distance^2 = (TargetArray[n].x - Turret.x)^2 + (TargetArray[n].y - Turret.y)^2
if( Distance^2 < maxRadius^2 ){
WithinRangeArray.push(TargetArray[n])
}
平方根を回避すると、処理能力がいくらか節約されます。しかし、より良い(より軽量な)他のアルゴリズム/理論/方法があるかもしれないと感じています。
TargetArray の理想的な長さ: 一度に 500 未満のターゲット。