我正在尝试检测地图注释是否在 MKCircle 内。我不知疲倦地浏览了互联网,几乎没有找到关于 Swift 2.0 的可靠教程。所有教程或 Stack Overflow 问题都使用不推荐使用的代码或 Objective-C 来回答。不幸的是,我对 Swift 很陌生,所以翻译答案有点困难。
到目前为止我所拥有的:
到目前为止,我已经用 MKCircle 声明了一个圆圈,看起来像,
let location = CLLocationCoordinate2D(latitude: 36.9900,
longitude: -122.0605)
let circle = MKCircle(centerCoordinate: location, radius: 100)
我最终想使用 CGPathContainsPoint 来检测注释是否在这个圆圈内。CGPathContainsPoint 的定义看起来像,
CGPathContainsPoint(_ path: CGPath?, _ m: UnsafePointer<CGAffineTransform>, _ point: CGPoint, _ eoFill: Bool) -> Bool
其中,
路径 - 对照
m 检查点的路径 - 仿射变换(不确定这样做的目的,但大多数问题已将此参数设置为 nil)
点 - 有问题的点
eoFill - 使用奇偶填充(真或假,再次不确定,但大多数问题已设置为假)
我的问题:如何转换或翻译我的 MKCircle,使其表现为 CGPath,以便将其传递到 CGPathContainsPoint 并将我的 CLLocationCoordinate2D 转换为 CGPoint?