Bing Maps & Bing Maps Silverlight Control中访问WMS笔记
来源:互联网 发布:庚phone.知乎 编辑:程序博客网 时间:2024/05/21 09:10
头疼了好几天,在网上找了不少关于的该方面的文章,终于搞定了。微软也真是让人火大,OGC WMS标准都出台几年了,应用也很广了,Bing Maps API也好,Bing Maps Silverlight Control也好,竟然都不支持对它的访问!!!
好不容易搞定了,还是记下来笔记。
一、Bing Maps API访问WMS
我用的是Bing Maps + OpenLayers,直接参照MSDN就可以搞定,地址如下:
Integrating OGC Web Mapping Services:http://msdn.microsoft.com/en-us/library/cc161076.aspx
前台JavaScript这样写即可:
var tileSourceSpec = new VETileSourceSpecification(
'WMSBavariaGeo',
'WMSTileServer.ashx?id=%4&layer=Countries,Rivers,Country labels');
tileSourceSpec.Bounds = bounds;
tileSourceSpec.MinZoomLevel = 0;
tileSourceSpec.MaxZoomLevel = 19;
tileSourceSpec.Opacity = 0.4;
map.AddTileLayer(tileSourceSpec);
二、Bing Maps Silverlight Control访问WMS
这个搞定起来曲折多了。
最先找到的一种方法能够访问,但是返回的图片位置在屏幕随着ZoomLevel的改变上下漂移。因为偶急需要软件界面样图,所以该方法也曾解了燃眉之急,呵呵!我最先找到这种方法的地址如下:
bing silverlight control and wms bounding box:http://cn.bing.com/community/forums/p/652190/9590047.aspx
虽然解了燃眉之急,但问题还是没有解决啊。继续搜索……,突然:
众里寻她千百度,蓦然回首,那人却在灯火阑珊处!!!
急度汗颜!!!………………
原来一直没有太注意的DeepEarth中就有类似的解决方案。原先总以为它跟微软的体系不同,应该不会兼容,所以没太在意。看了一个博客才知道,它现在正在逐渐改为对Bing Maps Silverlight Control的一种扩展,也颇好用!
最先找到的解决方案网址如下:
Overlay WMS on Google in Silverlight Bing:http://blog.sumbera.com/2010/02/25/overlay-wms-on-google-in-silverlight-bing/
然后直上CodePlex网址的DeepEarth WMS解决方案源码页:http://deepearth.codeplex.com/sourcecontrol/changeset/view/37324?projectName=deepearth#583728
修修改改,问题解决了,WMS返回的图像再也不发生“板块漂移”了,高兴啊!!!
进一步改进:因为上面的解决方案需要引用DeepEarth动态库,偶是追求完美的人,所以希望能将方案可以直接改写为独立的C#类,不用再引用其他动态库。因为一凡查找,让俺找到了有心人,人家早已经实现到了这一步。仔细一看网址,这就是偶最初参考的那个网址……
再次急度汗颜!!!………………
看样子最初还是没完全搞懂啊!!!
网址如下:Accessing WMS from Virtual Earth:http://vwl.nsquaredsolutions.com/Articles/VirtualEarth/AccessingWMSfromVirtualEarth.aspx
实现中还差一个函数,不要紧,MSDN上有:http://msdn.microsoft.com/en-us/library/bb259689.aspx
一切OK!淋浴中晨曦中一切看起来都那么的完美!^_^
感谢天!感谢地!感谢阳光照耀着大地!感谢明月让我们相遇!感谢所有先行的网友………………
- Bing Maps & Bing Maps Silverlight Control中访问WMS笔记
- Draggable Pushpins using Bing Maps Silverlight Control
- Bing Maps Silverlight Control离线开发
- 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图
- 【Silverlight】Bing Maps开发应用与技巧三:Bing Maps Silverlight Control的离线开发
- 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地
- 【Silverlight】Bing Maps开发应用与技巧三:Bing Maps Silverlight Control的离线开发
- 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图
- Bing Maps开发应用与技巧三:Bing Maps Silverlight Control的离线开发
- 【Silverlight】Bing Maps学习系列(八):使用Bing Maps Silverlight Control加载自己部署的Google Maps
- 【Silverlight】Bing Maps学习系列(八):使用Bing Maps Silverlight Control加载自己部署的Google Maps
- 【Bing Map学习系列】(2)——如何通过Bing Maps Silverlight Control显示地图
- 【Bing Map学习系列】(3)——如何通过Bing Maps Silverlight Control控制地图
- 【Bing Map学习系列】(6)——如何使用Bing Maps Silverlight Control绘制多边形
- 【Bing Map学习系列】(7)——如何使用Bing Maps Silverlight Control汇总
- 【Silverlight】Bing Maps系列文章目录
- 【Silverlight】Bing Maps系列文章目录
- 【Silverlight】Bing Maps系列文章汇总
- vim常用插件介绍
- Log4net创建日志及简单扩展
- cakephp中使用自定义验证码
- NSIS
- linq to sql Attach 不能添加其键已在使用中的实体
- Bing Maps & Bing Maps Silverlight Control中访问WMS笔记
- 电子表格的使用技巧
- js中的弹出确认取消的弹出框小技巧
- 60条令你大吃一惊的小常识
- 支持ie与FireFox的剪切板操作代码
- 真的很无聊!!!
- Silverlight4正式版开发工具整合下载(MIX2010 RC)
- 真假朋友
- 今天老毛病又犯了!慎记!!