搜索地标Google Earth API

时间:2013-11-17 17:18:22

标签: google-earth google-earth-plugin

我知道在Google地球客户端中,您可以搜索地标是否有办法为API实现此类功能。我们有不同的地标,用户想要搜索然后飞往。

由于

2 个答案:

答案 0 :(得分:1)

是的,有很多方法可以搜索地标,实际上这取决于你如何定义或创建地标。

例如,它们是在KML文件中定义的,还是通过API创建的?此外,他们是否定义了abstract view,或者他们只是基于点几何?

最简单的方法之一是使用various accessors查找地标。例如,如果地标有ID,您可以使用getElementById()并假设地标有一个抽象视图,您可以使用它来查看或飞到它。

var placemark = ge.getElementById('MyPlacemark');
if (placemark.getAbstractView()) {
   ge.getView().setAbstractView(placemark.getAbstractView());
}

否则,如果您通过其URL加载KML,例如

// loaded via KML
var placemark = ge.getElementByUrl('http://yoursite.com/foo.kml#MyPlacemark');
if (placemark.getAbstractView()) {
   ge.getView().setAbstractView(placemark.getAbstractView());
}

如果地标没有抽象视图,您仍然可以使用访问者找到正确的地标,然后从中提取几何图形以创建外观。

var placemark = ge.getElementByUrl('http://yoursite.com/foo.kml#MyPlacemark');
var point = placemark.getGeometry();
var lat = point.getLatitude();
var lng = point.getLongitude();

如果没有关于如何定义地标的更多信息,则很难更具体。

答案 1 :(得分:0)

KmlObjectList GEPlugin.getElementsByType?

怎么样?