我有一个UIView可以在给定旋转角度时旋转。我尝试使用该框架和另一个视图作为hitTest-但如您所见,这不起作用。
我相信在旋转之后,将针对旋转后的视图重新计算hitTesting的框架-产生与UI中表示的框架不同的框架(即使我在该视图的框架周围有边框,实际框架不同)。
user.transform = CGAffineTransform(rotationAngle: CGFloat(user.userData.heading))
self.hitTestView.transform = CGAffineTransform(rotationAngle: CGFloat(user.userData.heading))
//hitTestView is the "cone" uiview with an image in it representing a cone.
//myTestZone is the purple box.
if self.hitTestView.frame.intersects(self.myTestZone.frame) {
self.hitTestView.showRed(bValue: true)
} else {
self.hitTestView.showRed(bValue: false)
}
现在,我知道我不应该在这里使用带有框架的hitTest-我在寻找附近的东西-我应该使用数学确定“圆锥”是否与紫色框相交。但是,我不确定如何最好地做到这一点。
我正在寻找数学上的帮助,以计算圆锥(饼图切片)是否与另一视图(平稳)的任何部分重叠。希望也能找到一些可行的代码。