我正在尝试为Google Earth API
JavaScript插件创建搜索框
我能够解析KMLFile
并加载到GE API中,现在我必须按KML加载的地标名称嵌入搜索
使用纬度和经度编码
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
是否可以使用? 最佳答案
是的,有很多方法可以查看地标。最简单的方法是定义地标和抽象视图。例如
if (placemark.getAbstractView()) {
ge.getView().setAbstractView(placemark.getAbstractView());
}
您还可以使用各种访问器来引用地标。例如,如果地标具有ID,则可以使用getElementById。
var placemark = ge.getElementById('MyPlacemark');
if (placemark.getAbstractView()) {
ge.getView().setAbstractView(placemark.getAbstractView());
}
否则,如果您要通过其网址加载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();
关于javascript - 通过地标名称搜索Google Earth API,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15925803/