我正在寻找一种方法来使用bingmaps api 7.0的自定义WMS服务,但我无法找到任何关于它的好教程。
我有一个简单的javascript演示,可以显示bing地图。
<script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0"></script>
<script type="text/javascript">
var map = null;
function GetMap() {
// Initialize the map and set the view to a specific location
map = new Microsoft.Maps.Map(document.getElementById("mapDiv"), {
credentials: "YOUR_BING_MAPS_KEY",
center: new Microsoft.Maps.Location(47.6, -122.3),
zoom: 11
});
Microsoft.Maps.loadModule('Microsoft.Maps.VenueMaps', { callback: function () {
venueMapFactory = new Microsoft.Maps.VenueMaps.VenueMapFactory(map);
venueMapFactory.create({ venueMapId: 'bingmapsteam-bellevuesquare',
success: function (vm, args) { venueMap = vm; venueMap.show(); map.setView(venueMap.bestMapView); }
});
}
});
}
</script>
但是,如果我想使用这张美国国家航空航天局的地图,那就是bings当前的地图
http://neowms.sci.gsfc.nasa.gov/wms/wms?version=1.3.0&service=WMS&request=GetCapabilities
如何在ASP.NET中使用不同来源的简单Web应用程序?这甚至是可能的,还是应该使用Sharpmap,gmaps.net或其他内容? 任何人都可以指出我正确的方向吗?
答案 0 :(得分:2)
您可以在以下位置找到有关在Bing地图中使用WMS图层的教程:http://alastaira.wordpress.com/2011/01/07/accessing-a-wms-tile-server-from-bing-maps-v7/
它基本上包括向地图添加自定义切片图层,该图层由ASP.NET处理程序提供,包含从Bing Maps四元组转换为WMS逻辑的所有逻辑。
然后,要使基本地图默认不显示,您需要使用以下选项初始化Bing地图:
mapTypeId: Microsoft.Maps.MapTypeId.mercator
然后所有将显示的是您的WMS图层。