确定点是否位于特定几何区域内

Jam*_*ead 3 math geometry graph

画一个圆圈.现在将圆圈垂直和水平分成四个区域.采取左上角的区域.如果你在它周围画一个盒子,你就会有一个圆角向东的盒子.

给定单个左上区域的那个框中的X和Y坐标,如何判断一个点是在圆的左边还是在右边?

Mar*_*iot 5

您可以通过实现以下方法解决问题:

  • 圆圈的中心是盒子的东南角
  • 圆圈包含r该点半径内的所有点

所以你可以解决这个问题,给定圆圈的中心(a,b)并知道方框的尺寸有侧面r... 框内的任何给定点(x,y)也在圆圈内,当且仅当:

((b-y)^2 + (a-x)^2) < r^2
Run Code Online (Sandbox Code Playgroud)

当且仅当此条件为假时,这样的点位于圆外或恰好在圆上.

正如Derek E.在评论中建议的那样,在实施此解决方案时,最好比较平方距离以避免sqrt函数的近似值.