我正在尝试将地面叠加层添加到 Google 地球嵌入中。地面叠加层有一系列六个透明 gif 图像——它们的 URL 被动态添加到 KML 文件中。唯一的问题是——现在我如何在ge.createGroundOverlay('')
没有“图标”的情况下添加地面覆盖——这是一个 URL。尝试使用网络链接添加它,但所有六个图像都被扔在那里,并且没有滑块来为它们设置动画。
问问题
547 次
1 回答
0
看看教程和代码示例: https ://developers.google.com/earth/documentation/geometries#groundoverlay
为确保动画效果,您必须设置groundOverlay 的时间元素:timeSpan 或timeStamp。请参阅https://developers.google.com/earth/documentation/time
以下是在 Google Earth API 中使用 URL 创建地面叠加层的代码片段:
// Create the GroundOverlay
var groundOverlay = ge.createGroundOverlay('');
// Specify the image path and assign it to the GroundOverlay
var icon = ge.createIcon('');
icon.setHref("http://www.google.com/logos/earthday08.gif");
groundOverlay.setIcon(icon);
var timeSpan = ge.createTimeSpan('');
timeSpan.getBegin().set('2009-01-01T17:00:00Z');
timeSpan.getEnd().set('2009-01-01T18:00:00Z');
groundOverlay.setTimePrimitive(timeSpan)
// Specify the geographic location
var latLonBox = ge.createLatLonBox('');
latLonBox.setBox(48.80, 48.75, -121.77, -121.85, 0);
groundOverlay.setLatLonBox(latLonBox);
// Add the GroundOverlay to Earth
ge.getFeatures().appendChild(groundOverlay);
如果您通过 NetworkLink 添加 GroundOverlay,则 NetworkLink 的 URL 必须是 KML,其中包括 GroundOverlay 和覆盖图像的关联 URL。请参阅https://developers.google.com/earth/documentation/kml#kmlnetworklink
var link = ge.createLink('');
var href = 'http://code.google.com/'
+ 'apis/earth/documentation/samples/kml_example.kml'
link.setHref(href);
var networkLink = ge.createNetworkLink('');
networkLink.set(link, true, true); // Sets the link, refreshVisibility, and flyToView
ge.getFeatures().appendChild(networkLink);
于 2013-06-05T13:00:41.557 回答