我的iPad应用程序通过UIApplication:openURL:
弹出Google地球应用程序,并将其传递给要显示的文件的URL。该文件显示正常,但Camera
和LookAt
标记除外。似乎Camera
标记完全被忽略,而LookAt
被部分处理,使得视点移动到接近地面的点,远低于LookAt
规范。
为了调试这个,我创建了两个从Google的documentation复制的KML。内容由我的服务器上的查询生成。查询的网址会从我的应用程序传递到Google地球应用程序。
为了进行比较,我在Mac上运行的Google地球上打开了相同的数据。它在那里工作正常。
这个文件被GE视为无操作 - 它完全没有移动它的观点:
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Placemark>
<Camera>
<longitude>-122.4783</longitude>
<latitude>37.8120</latitude>
<altitude>100</altitude>
<heading>90</heading>
<tilt>90</tilt>
<altitudeMode>absolute</altitudeMode>
</Camera>
</Placemark>
</Document>
</kml>
以下 将视点移动到一般区域,但移动到距离地面正好500米的点,而不管range
值。
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Placemark>
<name>Machu Picchu, Peru</name>
<LookAt>
<longitude>-72.503364</longitude>
<latitude>-13.209676</latitude>
<altitude>0</altitude>
<range>14794.882995</range>
<tilt>66.768762</tilt>
<heading>71.131493</heading>
</LookAt>
<styleUrl>#msn_icon12</styleUrl>
<Point>
<coordinates>-72.516244,-13.162806,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
我在iPad上使用Google Earth 7.0.0.7455。
我传递给GE应用程序的任何其他标记,例如绘制多边形,都可以正常工作。我只是遇到了Camera
和LookAt
的问题。
我想知道这是我的错误,谷歌还是两者兼而有之。如果谷歌有,有解决方法 - 任何设置相机的方法吗?