首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

施用KML作为Openlayers的底图

2012-07-01 
使用KML作为Openlayers的底图最近的项目对地图的精度要求不高,就不需要搭建Geoserver了,用Openlayers加载v

使用KML作为Openlayers的底图

最近的项目对地图的精度要求不高,就不需要搭建Geoserver了,用Openlayers加载vector做底图,比较了一下,使用了KML格式,找了一种shp转KML的方法

?

到http://arcscripts.esri.com/details.asp?dbid=14273下载?Export to KML 2.5.4 一款脚本,下载后安装,在arcgis(v9.3)里会出现一个Google Earth的图标的按钮悬浮在界面上,运行后可以选择图层进行转换。

?

Vector layer在Openlayers里只能作为overlay,不能作为baselayer,可以通过添加一个空白的Image layer作为baselayer,之后加载Vector layer。

代码示例:

?

?

function mapviewInit(){    var map = new OpenLayers.Map(    'mapdiv',     {maxResolution:0.703125,allOverlays: true});var bou = new OpenLayers.Layer.Vector("KML", {styleMap: new OpenLayers.StyleMap({                    pointRadius: 3,                    fillColor: "#ffcc66",                    strokeColor: "#ff9933",                    strokeWidth: 2}),strategies: [new OpenLayers.Strategy.Fixed()],protocol: new OpenLayers.Protocol.HTTP({url: "kml/bou2_4l.kml",format: new OpenLayers.Format.KML({                    extractStyles: false,                     extractAttributes: false,                    maxDepth: 2})})});map.addLayer(bou);map.setCenter(new OpenLayers.LonLat(112,36),8,false,true);}

?

PS:Esri官方网站的ArcScripts栏目里有不少实用脚本,需要时可以去搜搜,也许能省些力气(http://arcscripts.esri.com/)

?

?

附:中国地图 省界 省会 kml

热点排行