Ios 相交圆框

Ios 相交圆框,ios,frame,geometry,Ios,Frame,Geometry,我想知道如何判断我的两个圆框是否相交。因为它们是圆的,我不能用CGRECT,也不知道该怎么做。是否有cgframeintersectsframe或类似的东西 就我的观点而言,我做到了 circle1 = [[uiimageview alloc] initwithframe:cgrectmake (100,100,50,50); circle1.layer.cornerradius = 25; circle1.clipstobounds = yes; [self.view addsubview:c

我想知道如何判断我的两个圆框是否相交。因为它们是圆的,我不能用CGRECT,也不知道该怎么做。是否有cgframeintersectsframe或类似的东西

就我的观点而言,我做到了

circle1 = [[uiimageview alloc] initwithframe:cgrectmake (100,100,50,50);
circle1.layer.cornerradius = 25;
circle1.clipstobounds = yes;
[self.view addsubview:circle1];
另一个圆基本上也是这样,只是x和y原点不同
我还经常导入quartzcore

只需计算圆心之间的距离,并检查它是否小于半径:

float distanceBetweenCenters = sqrt(pow(circle1.center.x - circle2.center.x, 2) + 
                                   pow(circle1.center.y - circle2.center.y, 2));
BOOL isIntersecting = distanceBetweenCenters <= 2 * radius;
float distance betweencenters=sqrt(功率(圆圈1.center.x-圆圈2.center.x,2)+
pow(圆圈1.center.y-圆圈2.center.y,2));

BOOL isIntersecting=中心之间的距离如果它是完全圆的并且大小相同,那么两个中心之间的距离就足够了。后面的数学很简单(类似于sqrt((center1.x-center2.x)*(center1.x-center2.x)+(center1.y-center2.y)*(center1.y-center2.y))。距离必须小于2*半径(在圆1的情况下为50*2)。