Tag: 计算几何

检查CGRect是否包含在另一个(已转换的)矩形中

我正在实现裁剪function,并试图弄清楚如何testing裁剪矩形是否完全包含在转换后的图像视图中。 即在图像的裁剪部分中不应该有空格。 我试图复制在这个组件中实现的行为: https : //github.com/heitorfr/ios-image-editor ,它实现了类似的检查(见下文),但我不能得到它的工作我的情况。 – (void)checkBoundsWithTransform:(CGAffineTransform)transform { CGRect r1 = [self boundingBoxForRect:self.preview.cropRect rotatedByRadians:[self imageRotation]]; Rectangle r2 = [self applyTransform:transform toRect:self.preview.initialImageFrame]; CGAffineTransform t = CGAffineTransformMakeTranslation(CGRectGetMidX(self.preview.cropRect), CGRectGetMidY(self.preview.cropRect)); t = CGAffineTransformRotate(t, -[self imageRotation]); t = CGAffineTransformTranslate(t, -CGRectGetMidX(self.preview.cropRect), – CGRectGetMidY(self.preview.cropRect)); Rectangle r3 = [self applyTransform:t toRectangle:r2]; if(CGRectContainsRect([self CGRectFromRectangle:r3],r1)) { self.validTransform = transform; } }

iOS:派生出一个圆圈的点的angular度

我有一个UIImageView显示一个圆分成六个相等的三angular形对应于: area1在0-60度之间 area2在60-120度之间 区域3在120-180度之间 面积在180-240度之间 面积在240-300度之间 面积在300-360度之间 这个圈子和下面的相似(请原谅我的坏图): 我想从触摸点的哪个区域得到点击。 例如,如果用户点击圆圈的右上angular,则区域应该是区域2:“> 60-120”。 我得到的input数据是: 包含圆的框架的宽度和高度(例如200像素宽,200像素高) 分接点坐标 有关如何根据上述input数据推断抽头点落在哪个区域的任何build议?