2

我正在为 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?
4

1 回答 1

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

于 2012-05-15T07:21:13.087 回答