1

我正在尝试Google Earth API为 javascript 插件创建搜索框我能够KMLFile在 GE API 中解析和加载,现在我必须通过 KML 加载的 Placemarker 名称嵌入搜索

使用纬度和经度的代码

var lookAt = ge.createLookAt('');
lookAt.set(point.y, point.x, 600, ge.ALTITUDE_RELATIVE_TO_GROUND, 0, 00, 0);
ge.getView().setAbstractView(lookAt);

除了使用 LAT、LONG 之外,是否有LookAt使用 Placemarker Name 的可能性?

4

1 回答 1

0

是的,有很多方法可以查看地标。最简单的方法是如果地标已定义抽象视图。例如

if (placemark.getAbstractView()) {
   ge.getView().setAbstractView(placemark.getAbstractView());
}

您还可以使用各种访问器来引用地标。例如,如果地标有 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://site.com/foo.kml#MyPlacemark');
if (placemark.getAbstractView()) {
   ge.getView().setAbstractView(placemark.getAbstractView());
}

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

var placemark = ge.getElementByUrl('http://site.com/foo.kml#MyPlacemark');
var point = placemark.getGeometry();
var lat = point.getLatitude();
var lng = point.getLongitude();
于 2013-11-01T11:50:37.633 回答