判断一个点是否在指定的圆内
最新推荐文章于 2025-08-01 09:43:21 发布
原创
最新推荐文章于 2025-08-01 09:43:21 发布
·
2.2w 阅读
·
8
·
25
·
CC 4.0 BY-SA版权
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
文章标签:
#点
#圆
#c#
C#
专栏收录该内容
4 篇文章
订阅专栏
本文介绍了一种简单有效的算法,用于判断一个给定点是否位于指定圆的内部。该算法通过计算点到圆心的距离并与圆的半径进行比较来实现。
public static bool IsPointInCircle(myPoint p, myCircle circle)
{
//到圆心的距离 是否大于半径。半径是R
//如O(x,y)点圆心,任意一点P(x1,y1) (x-x1)*(x-x1)+(y-y1)*(y-y1)>R*R 那么在圆外 反之在圆内
int x = circle.Center().X;
int y = circle.Center().Y;
int r = circle.R();
int x1 = p.X();
int y1 = p.Y();
if (!((x - x1)*(x - x1) + (y - y1)*(y - y1) > r*r))
{
return true; //当前点在圆内
}
else
{
return false; //当前点在圆外
}
}