OpenLayer + Ags 综合应用(一)--OpenLayer 地图展现
2008-11-07 16:31
120 查看
作者:Flyingis
本文严禁用于商业目的,如需转载请注明作者及原文链接,其他疑问请联系:dev.vip#gmail.com
OpenLayer是一个用于浏览器地图展示的js库,用于构建基于网络的地理应用,OpenLayer使用Prototype.js和Rico作为核心库的基础,实现了工业标准的地理数据访问方法(OGC标准)。在企业级GIS应用中,能较好的作为客户端应用开发框架,消除和GIS服务层之间的耦合。
ArcGIS Server 9.3对OGC标准提供了更好的支持,OGC标准成为了OpenLayer和ArcGIS Server服务连接的桥梁,基于Ags服务进行OpenLayer开发,是除了adf、js/flex/silverlight api官方开发框架之外的新选择。
网上已经有很多OpenLayer开发的资源:
http://www.3snews.net/?uid-10624-action-spacelist-type-blog-itemtypeid-793
or Google Search "OpenLayer"
该系列文章会重复部分OpenLayer功能实现,但更重要的是和大家一起研究OpenLayer设计模式,及如何有效利用Ags服务进行OpenLayer开发。
准备工作:
1.下载OpenLayer 2.7
网址:http://openlayers.org/
2.成功安装ArcGIS Server 9.3
安装方法:http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=3891&extra=page%3D1
3.准备一套完整的Sample数据,可以从ArcGIS Tutor中copy一份,也可以使用自己已有的或从网站上下载数据。
暂时无法做好2、3准备工作没有关系,先从OpenLayer(简称OL)开始。
主体内容:
1.分析OL代码框架和构成请参考其他文章,从Sample示例中最简单的地图展现开始
还可以设置第四组参数{'displayInLayerSwitcher': false},layer服务将不显示在服务列表(上图中的蓝色面板)中,默认值为true。{'isBaseLayer': false},默认值为true,服务前显示单选框。这些都需要我们逐步去摸索。
5.OpenLayers.Layer.WMS
刚才提到过两个参数displayInLayerSwitcher、isBaseLayer,它们并没有在OpenLayers.Layer.WMS定义,而是在父类OpenLayers.Layer,中间还有OpenLayers.Layer.HTTPRequest、 OpenLayers.Layer.Grid,文档中没有详细说明,但可以从源码中获得更多信息。从这种继承关系中可以发现,OpenLayers继承全部通过prototype原型继承方式实现。
小结:
Map对象是地图展示的核心,一切和地图操作相关都要和Map打交道,里面的属性方法很多,可以去学习controls入手,之前我们都没有定义 controls,但还是可以通过鼠标操作地图,那是因为默认情况下,地图自动拥有Navigation、PanZoom、ArgParser、 Attribution四个controls。
本文严禁用于商业目的,如需转载请注明作者及原文链接,其他疑问请联系:dev.vip#gmail.com
OpenLayer是一个用于浏览器地图展示的js库,用于构建基于网络的地理应用,OpenLayer使用Prototype.js和Rico作为核心库的基础,实现了工业标准的地理数据访问方法(OGC标准)。在企业级GIS应用中,能较好的作为客户端应用开发框架,消除和GIS服务层之间的耦合。
ArcGIS Server 9.3对OGC标准提供了更好的支持,OGC标准成为了OpenLayer和ArcGIS Server服务连接的桥梁,基于Ags服务进行OpenLayer开发,是除了adf、js/flex/silverlight api官方开发框架之外的新选择。
网上已经有很多OpenLayer开发的资源:
http://www.3snews.net/?uid-10624-action-spacelist-type-blog-itemtypeid-793
or Google Search "OpenLayer"
该系列文章会重复部分OpenLayer功能实现,但更重要的是和大家一起研究OpenLayer设计模式,及如何有效利用Ags服务进行OpenLayer开发。
准备工作:
1.下载OpenLayer 2.7
网址:http://openlayers.org/
2.成功安装ArcGIS Server 9.3
安装方法:http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=3891&extra=page%3D1
3.准备一套完整的Sample数据,可以从ArcGIS Tutor中copy一份,也可以使用自己已有的或从网站上下载数据。
暂时无法做好2、3准备工作没有关系,先从OpenLayer(简称OL)开始。
主体内容:
1.分析OL代码框架和构成请参考其他文章,从Sample示例中最简单的地图展现开始
{ layers: "bathymetry,land_fn,park,drain_fn,drainage,prov_bound,fedlimit,rail,road,popplace", transparent: "true", format: "image/png" }
还可以设置第四组参数{'displayInLayerSwitcher': false},layer服务将不显示在服务列表(上图中的蓝色面板)中,默认值为true。{'isBaseLayer': false},默认值为true,服务前显示单选框。这些都需要我们逐步去摸索。
5.OpenLayers.Layer.WMS
刚才提到过两个参数displayInLayerSwitcher、isBaseLayer,它们并没有在OpenLayers.Layer.WMS定义,而是在父类OpenLayers.Layer,中间还有OpenLayers.Layer.HTTPRequest、 OpenLayers.Layer.Grid,文档中没有详细说明,但可以从源码中获得更多信息。从这种继承关系中可以发现,OpenLayers继承全部通过prototype原型继承方式实现。
小结:
Map对象是地图展示的核心,一切和地图操作相关都要和Map打交道,里面的属性方法很多,可以去学习controls入手,之前我们都没有定义 controls,但还是可以通过鼠标操作地图,那是因为默认情况下,地图自动拥有Navigation、PanZoom、ArgParser、 Attribution四个controls。
相关文章推荐
- OpenLayer加载常见在线地图案例
- openlayer 加载天地图为地图,同时加载arcgisserver发布的wms
- OpenLayers 3 之 地图矢量图层(ol.layer.Vector)详解,openlayersvector
- 用openlayer显示google地图
- 利用openstreetmap在android应用中添加地图
- OpenLayers 3 之 地图矢量图层(ol.layer.Vector)详解,openlayersvector
- [置顶] 基于OpenLayer的室内地图前端设计开发
- WebRTC VideoEngine综合应用示例(二)——集成OPENH264编解码器
- ArcGIS For JavaScript API OpenStreetMap Layer(打开街道地图层)————(九)
- 路径正确openLayer也无法获得发布地图
- AngularJs 中使用OpenLayer例子,手机端地图加载不显示问题
- openlayer调用geoserver发布的地图实现地图的基本功能
- WebRTC VideoEngine综合应用示例(二)——集成OPENH264编解码器
- Openjudge NOI题库1.13编程基础之综合应用12:分数求和
- Openjudge NOI题库1.13编程基础之综合应用17:文字排版
- noi题库(noi.openjudge.cn) 1.13编程基础之综合应用 T12 分数求和
- d3.js leaflet.js OpenStreetMap的综合应用
- [置顶] 开放式地图OpenStreeMap在安卓中的应用
- openlayer实现仿各大地图的标注点触碰样式变换
- 谷歌地图综合应用两例