我没有运气找到例子。我在下面找到了类似的代码,但这是针对早期版本的。
shapeLayer = new VEShapeLayer();
shapeSpec = new VEShapeSourceSpecification(VEDataType.ImportXML, layer.url, shapeLayer);
veMap.ImportShapeLayerData(shapeSpec);
我没有运气找到例子。我在下面找到了类似的代码,但这是针对早期版本的。
shapeLayer = new VEShapeLayer();
shapeSpec = new VEShapeSourceSpecification(VEDataType.ImportXML, layer.url, shapeLayer);
veMap.ImportShapeLayerData(shapeSpec);
Answers:
如上所述,不支持GeoRSS和KML。但是,有人为Bing Maps v7 编写了GeoRSS解释器。由于KML文件和GeoRSS文件都是XML,因此您可以使用XSL在两者之间轻松转换。一些狩猎表明,很多人都在谈论它,但是我找不到任何实际的XSL文件。但是,我确实找到了相反的方法,将GeoRSS转换为KML,如果您编写了自己的书,这应该使您对从哪里开始有了一个很好的了解。
如果您只需要执行一次,则可以使用以下两个网站通过CSV将KML转换为GeoRSS:
最后一个选择就是简单地编写自己的KML解释器,就像每个@Derek 有人编写自己的GeoRSS解释器一样。
看起来答案是否定的。我说这是基于查看他们的SDK文档和以下线程: 在Bing Maps Ajax Control v7中查找KML或GeoRSS示例。
如果KML支持至关重要,则可以使用Esri的ArcGIS API for JavaScript,因为它支持可公开访问的KML图层。全面披露:我在Esri的JavaScript API团队工作。
Bing Maps 7.0不包含KML转换器。但是,因为它使用JavaScript对象在地图上显示数据(请参见Bing API),所以您可以手动解析kml并将其转换为相应的对象。
在此代码示例中,我使用JavaScript将KML多边形数据转换为新的Microsoft.Maps.Polygon对象。然后,我将使用下面的代码将多边形添加到我的Bing地图中。
// Initialize the Map.
var map = new Microsoft.Maps.Map(document.getElementById("mapDiv"), {credentials:"Bing Maps Key"});
// Insert your own code to get your KML string here.
// Parse the kml into Microsoft.Maps.Polygon objects and add them to the map.
var polygons = bingKmlParser.parsePolygons(kmlString);
map.entities.push(polygons);
使用Openlayers!您可以加载KML文件,并将Bing设置为基础地图图层。最重要的是,它是开源的,完全稳定的并且是一个非常活跃的项目。
http://dev.openlayers.org/sandbox/rdewit/kml/examples/kml_wmsc_ows5.html
正如大多数其他文章所提到的,Bing Maps Ajax控件v7似乎不直接支持KML。但是,我认为值得一提的是,正常的地图GUI支持它。在以下Bing博客文章中,它描述了如何将KML导入Bing Maps“我的位置”:
问题并不完全是寻找的内容,但对于这种情况可能很有用。
尝试使用此kml解析器获取bing地图。示例显示 https://github.com/koldyr/BingKmlParser