1

我通过使用带有 javascript 的按钮向谷歌地球添加了一个 kml。如何使用另一个按钮删除该 kml 或清除所有 kml?谢谢

4

3 回答 3

3

要删除所有功能,您可以使用以下方法。它假定“ge”引用了您的插件对象。

function RemoveAllFeatures()
{
  var features = ge.getFeatures();
  while (features.getLastChild() != null)
  {
    features.removeChild(features.getLastChild());
  }
}
于 2010-07-19T02:58:45.613 回答
2

你的意思是你添加了一个KML文件?我猜您是通过使用以下功能添加“网络链接”来做到这一点的

var networkLink = ge.createNetworkLink('ID_MyNetworkLink');
var link = ge.createLink('MyHREF');
link.setHref('http://bla.bla.bla.kml');
networkLink.setLink(link);
ge.getFeatures().appendChild(networkLink);

因此,您的“文件”是 ID 为“ID_MyNetworkLink”的整个 KML 树的子级。您可以通过以下方式将其删除

ge.getFeatures().removeChild(ge.getElementById('ID_MyNetworkLink'));

希望有帮助

于 2010-05-28T11:18:15.450 回答
0

虽然不是您可能正在寻找的东西,但您可以使用 NetworkLink 加载带有 NetworkLinkController 的 kml 来改变事情。查看文档

于 2010-07-08T20:06:44.107 回答