我正在为iPhone做一个高尔夫gps应用程序。为此,我需要在iPhone设备上显示高尔夫球场地图。我在互联网上搜索过这个。有很多方法和服务提供商进行高尔夫球场测绘(航拍图像)。
供您参考:
http://sites.google.com/site/mapmakerpedia/maps-101/how-to-map-a-golf-course
有人说我们可以使用谷歌图像。但我的问题是
1. How we could bring that golf course map data into iPhone app?
2. Is there any API or method available for that?
3. In which format, that golf course map data file will be?
答案 0 :(得分:1)
首先,您需要为您的高尔夫球场收集纬度和经度点。怎么做取决于你,而不是真正的iPhone问题。根据您拥有的点数,定义球道和果岭(可能还有危险?),您可能希望将所有点存储在XML文件中,该文件将捆绑为应用程序中的资源。或者,如果内容需要定期更新,也许您可以将其存储在网络服务器上。或两者。但是,文件可能是这样的:
<golf-courses>
<golf-course>
<name>Pebble Peach</name>
<par>72</par>
<fee>$200</fee>
<holes>
<hole>
<number>1</number>
<par>4</par>
<fairway>
<points>
<point><lat>-122.1231231</lat><lon>36.0131231</lon></point>
<point><lat>-122.1231232</lat><lon>36.0131235</lon></point>
<point><lat>-122.1231237</lat><lon>36.0131235</lon></point>
...
</points>
</fairway>
<green>
...
</green>
</hole>
</holes>
</golf-course>
...
</golf-courses>
或者,您可以选择使用KML等格式,该格式专为地图叠加而设计。如果您能够获得已存储在KML中的现有高尔夫球场数据,那将特别有用。但是,从你的问题来看,这听起来像是你试图从一组航空地图中自己推断数据。
然后,您需要在启动时将XML数据(或KML或plist数据,或Core Data或您存储它)读入您的应用程序。
然后,您可能会有一个UIViewController迭代数据,并将路线绘制为多边形。为此,您的视图控制器将使用MapKit框架,您可能会使用MKPolygon
将路线绘制为一堆绿色阴影多边形。您可以在最简单的MKPolygon
示例中看到此other answer I posted。