gpt4 book ai didi

ios - 将 CLLocation 对象转换为 MKMapPoint 结构

转载 作者:行者123 更新时间:2023-11-29 11:16:15 24 4
gpt4 key购买 nike

我想创建一个 MKPolygon 来显示在 MKMapView 上。我的问题是我不知道该怎么做。

我知道要创建一个 MKPolygon 我必须创建一堆 MKMapPoint 结构并将它们放入一个数组中并调用类方法 polygonWithPoints.

我的问题是我有一个 NSArray 包含 CLLocation 对象,这些对象有 coordinate.latitudecoordinate.longitude 属性。

如何将它一个一个地转换成一个MKMapPoint结构体?

最佳答案

如果你有一个 NSArray对于包含坐标的对象,使用 polygonWithCoordinates:count: 会更容易方法而不是 polygonWithPoints:count: .

polygonWithCoordinates:count:方法接受 CLLocationCoordinate2D 的 C 数组结构。 coordinate CLLocation 中的属性(property)对象也是一个 CLLocationCoordinate2D .

如果你还想用polygonWithPoints:count: , 您可以使用 MKMapPointForCoordinate函数转换 coordinate CLLocation中的属性(property)到MKMapPoint .

使用任何一种方法,您首先创建一个适当结构的 C 数组,循环遍历 NSArray设置 C 数组中的每个项目。然后调用polygonWithCoordinatespolygonWithPoints .

This answer有一个使用 polygonWithCoordinates 的代码示例.在该示例中,您将更改 for 中的两行循环到:

CLLocation *coordObj = (CLLocation *)[coordinateData objectAtIndex:i];
coords[i] = coordObj.coordinate;

不要忘记实现 viewForOverlay委托(delegate)方法(并确保 map View 的 delegate 属性已设置)。

关于ios - 将 CLLocation 对象转换为 MKMapPoint 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9309861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com