OpenLayers项目分析——(一)项目介绍

OpenLayers 是由MetaCarta公司开发的,用于WebGIS客户端的JavaScript包,目前的最高版本是2.7 V,通过BSD License 发行。它实现访问地理空间数据的方法都符合行业标准,比如OpenGIS的WMS和WFS规范, OpenLayers采用纯面向对象的JavaScript方式开发,同时借用了Prototype框架和Rico库的一些组件。

  采用OpenLayers作为客户端不存在浏览器依赖性。由于OpenLayers采用JavaScript语言实现,而应用于Web浏览器中的DOM(文档对象模型)由JavaScript实现,同时,Web浏览器(比如IE,FF等)都支持DOM 。

  OpenLayers APIs采用动态类型脚本语言JavaScript编写,实现了类似与Ajax功能的无刷新更新页面,能够带给用户丰富的桌面体验(它本身就有一个Ajax类,用于实现Ajax功能)。

  目前,OpenLayers所能够支持的Format有:XMLGML、GeoJSONGeoRSS、JSON、KML、WFS、WKT(Well-Known Text)。在OPenlayers.Format名称空间下的各个类里,实现了具体读/写这些Format的解析器。

  OpenLayers所能够利用的地图数据资源“丰富多彩”,在这方面提供给拥护较多的选择,比如WMS、WFSGoogleMap、KaMap、MSVirtualEarth、WorldWind等等。当然,也可以用简单的图片作为源。

第一次使用OpenLayers:

  到它的官方网站http://www.openlayers.org下载他的压缩包,解压后可以看到其中的一些目录和文件,拷贝目录下的OpenLayer.js、根目录下的lib目录、根目录下的img目录到你网站的Scripts目录下(当然,这个只是例子,您网站的目录结构您自己说得算,只要保证OpenLayers.js,/lib,/img在同一目录中即可)。 然后,创建一个index.html作为查看地图的页面,导入OpenLayers.js和你将要创建的js

  我们以加载WMS和GML文件为例。 

  

  <script src="../lib/OpenLayers.js"></script>
  <script type="text/javascript">
        var lon = 5;    //x-axis coodinate in map units
        var lat = 40;   //y-axis coordinate in map units
        var zoom = 5;   //number of zoom levels
        var map, layer; 
    //声明变量map、layer;等同于 var map = null; var layer = null;
        map = new OpenLayers.Map('map');
        //实例化一个地图类OpenLayers.Map
        layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
                    "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
        //以WMS的格式实例化图层类OpenLayers.Layer
        map.addLayer(layer);
        map.zoomToExtent(new  OpenLayers.Bounds(-3.922119,44.335327,
        4.866943,49.553833));
    //在Map对象上加载Layer对象,并用map.zoomToExtent函数使地图合适地显示
    map.addLayer(new OpenLayers.Layer.GML("GML", "gml/polygon.xml"));

    //再在刚加载的WMS文件上,加载一GML文件

  剩下的工作就是,加上一些控件OpenLayers.Control之类的东西,比如LayerSwitcher等。它们会在地图浏览的“窗口”上增加一些工具栏或是“按钮”,增加互动性和功能性。

   例如:

   map.addControl(new OpenLayers.Control.LayerSwitcher());                                 

  当然,Openlayers中的东西远不止这些,至于它的框架分析、APIs实现机制,会在后续文章中说出。写这个的过程,也是一个学习的过程,其中难免有不妥之处,热烈欢迎大家批评指正,相互交流

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
通过该课程的学习,主要掌握地理信息系统(GIS)概念,空间分析功能;开源GIS及内容;了解常见开源桌面、Web和移动GIS等各种平台软件功能和设计;学习开源开发方法和开源GIS项目设计。达到以下教学目的: 1、了解开源精神——自由、开放、共享,树立开源学习理念。掌握开源GIS设计方法和技术,重点掌握开源GIS软件的基本应用 2、通过对典型开源GIS项目分析,重点学习GIS设计的基本内容:项目规划,组织管理,系统设计,编码技能和系统测试与维护 3、通过典型模式分析,掌握设计模式在GIS项目中的使用原则和方法以及技巧,难点是分析设计模式在GIS设计中应用 4、了解GIS应用性框架、插件式GIS、通用GIS解决方案设计等内容 课时1:试听 课时2:付费学员服务指引 课时3:1.GIS空间分析 课时4:2.开源软件 课时5:3.开源GIS课程 课时6:4.开源GIS实验环境 课时7:课件资料 课时8:1.PostgreSQL简介 课时9:2.空间数据库概述 课时10:3.PostGIS简介 课时11:4.PostGIS实践操作 课时12:课件资料 课时13:1.PostgreSQL扩展 课时14:2.PostgreSQL索引和PG的GIST注意事项 课时15:3.PostGIS raster 课时16:4.PostGIS开源开发 课时17:5.PostGIS栅格操作 课时18:6.实践操作 课时19:课件资料 课时20:1.PG企业应用 课时21:2.其他开源空间数据库 课时22:课件资料 课时23:1.QGIS简介 课时24:2.地图配准 课时25:3.GRASS TSP分析 课时26:4.实践操作 课时27:课件资料 课时28:1.GRASS栅格分析和影像分析 课时29:2.GRASS地图动画 课时30:3.GRASS TSP分析 课时31:课件资料 课时32:1.GRASS与PG的互链 课时33:2.GRASS开源开发 课时34:3.实践操作 课时35:课件资料 课时36:1.WEBGIS简述 课时37:2.WEBGIS模式和开源WEBGIS简介 课时38:3.CGI原理和编程 课时39:4.CGI模式WEBGIS-中国WEB地图 课时40:5.CGI模式WEBGIS-GeoMoose项目 课时41:课件资料 课时42:1.Mapserver项目(MIT) 课时43:2.Mapserver发布数据(1) 课时44:3.Mapserver发布数据(2) 课时45:4.Mapserver开发:两种开发方式 课时46:5.Mapserver应用 课时47:课件资料 课时48:1.GeoServer项目(GPL) 课时49:2.GeoServer体系特点(JavaServlet) 课时50:3.GeoServer体系特点和GeoServer发布数据 课时51:4.实践操作 课时52:课件资料 课时53:1.OGC OpenGIS 课时54:2.OGC OWS 课时55:3.SOA WEBGIS 课时56:4.实际操作 课时57:课件资料 课时58:1.开源移动GIS简介 课时59:2.gvSIG Mobile GIS 课时60:3.移动GIS开发模式 课时61:4.实践操作 课时62:《开源GIS》课程总结 课时63:课件资料 本课程为开源GIS视频课程的优化版(经改良过的完整版)。因此部分课程与该目录有出入,但是出入不大。
在Vue项目中静态加载OpenLayers可以通过以下步骤实现: 1. 首先,确保你的Vue项目已经安装了OpenLayers的依赖包。你可以使用npm或者yarn来安装OpenLayers,具体的安装命令可以参考OpenLayers的官方文档。 2. 在Vue项目的入口文件(通常是main.js)中,引入OpenLayers的库文件。你可以使用import语句来引入OpenLayers的库文件,例如: ```javascript import 'ol/ol.css'; import { Map, View } from 'ol'; ``` 这样就可以在Vue项目中使用OpenLayers的相关功能了。 3. 在Vue组件中,你可以使用OpenLayers的API来创建地图、添加图层、设置视图等。你可以根据你的需求来使用OpenLayers的各种功能,例如: ```javascript // 创建地图容器 const map = new Map({ target: 'map', layers: \[ // 添加图层 new TileLayer({ source: new OSM() }) \], view: new View({ center: \[0, 0\], zoom: 2 }) }); ``` 这样就可以在Vue项目中静态加载OpenLayers,并创建一个简单的地图。 需要注意的是,以上只是一个简单的示例,你可以根据你的具体需求来使用OpenLayers的更多功能和API。同时,你也可以参考引用\[1\]和引用\[2\]中提供的示例代码来学习更多关于在Vue项目中使用OpenLayers的技巧和方法。 #### 引用[.reference_title] - *1* [112:vue+openlayers 加载静态图片,变成地图一部分( 示例代码 )](https://blog.csdn.net/cuclife/article/details/126607890)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [219:vue+openlayers 加载gif文件,采用CSS设置gif背景的方式](https://blog.csdn.net/cuclife/article/details/129497398)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值