一图胜千言
基于勾股定理
图中可以看出,如果o1的平方+o2的平方>o1o2的平方那么两个圆相离,反之两个圆相交。
核心代码
//判断一点是否在圆上,依据点与圆的位置关系,(x-a)^2+(y-b)^2=r^2 则该点在圆上,>r则在圆外,<r则在圆内
private bool checkPointIsInCircle(Point _clickPoint)
{
float tempR = (_clickPoint.X - c2.X) * (_clickPoint.X - c2.X) + (_clickPoint.Y - c2.Y) * (_clickPoint.Y - c2.Y);
if (tempR < r2 * r2)
{
return true;
}
return false;
}