OpenLayers2.13.1知识整理
对于地图的默认加载等,网上很多资料,就不细说了,主要整理解决一些api不明显或不全的内容
因玩webgis只有一周左右,肯定很水~~
我资料中的目录结构如下:
html
map
js(自己封装的js目录)
dswork.map.js(自定义的全局api接口,仅上传了部分)
ol2
ol2.js(针对dswork.map.js接口的OpenLayers2.13.1的实现)
sdk
ol2(解压openlayers2.13.1的所有文件到此)
img(覆盖了的图片)
themes
img(示例使用的一些图片)
map.css(自己页面上封装的css文件,用于覆盖和设置地图的全局样式)
indexol2.html地图示例页面
相关下载:整个示例下载 (仅部分示例)
注:css中,把OpenLayers.Control.ScaleLine控件的比例尺下半部分给设置为不可见了
xy使用EPSG:3857,返回和设置的均改用经纬度值EPSG:3857
修改鹰眼样式(只需要修改小部分css即可,不需要重新制作插件,详看map.css)
拉框放大缩小(非开发版api对拉框缩小是没有描述的,只需要简单设置ZoomBox组件的out属性即可)
自定义地图的缩放级别(包括导航条的长度、可缩放范围)
api本身并不支持(可能是我没发现),所以地图load时,初始化参数自定义增加minzoom和maxzoom用于设置缩放的最小级别和最大级别
需要修改map对应的三个默认方法isValidZoomLevel、getNumZoomLevels和getMinZoom
 map.isValidZoomLevel = function(zoomLevel) {
     var valid = ( (zoomLevel != null) && (zoomLevel >= this.options.minzoom) && (zoomLevel <= this.options.maxzoom) );
     return valid;
 };
 map.getNumZoomLevels = function(){return this.options.maxzoom+1;};
 map.getMinZoom = function(){return this.options.minzoom;};
使用自定义瓦片地图,可使用OpenLayers.Layer.XYZ,并且支持多个地址引用,用于支持多服务器响应,在引入的地图中,设置numZoomLevels为自定义的(maxzoom+1)值
 var esriMap = new OpenLayers.Layer.XYZ("捷泰地图", [
         "http://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineCommunity/MapServer/tile/${z}/${y}/${x}"
         //,"http://127.0.0.1:777/web/gis.jsp?z=${z}&x=${x}&y=${y}"
         //,"http://127.0.0.1:777/web/gis.jsp?z=${z}&x=${x}&y=${y}"
         //,"http://127.0.0.1:777/web/gis.jsp?z=${z}&x=${x}&y=${y}"
     ], {
         attribution:"ArcGIS Tiles © "
         ,sphericalMercator:true
         ,wrapDateLine:false
         ,numZoomLevels:v.maxzoom+1
     }
 );
 map.addLayer(esriMap);
比较常用control:
map.addControl(new OpenLayers.Control.Navigation());//鼠标导航,包括平移放大缩小,触摸事件等
map.addControl(new OpenLayers.Control.ZoomBox());// 拉框缩放控件
map.addControl(new OpenLayers.Control.PanZoomBar({position:new OpenLayers.Pixel(2,6)}));//平移缩放工具条 左上
map.addControl(new OpenLayers.Control.MousePosition());//显示鼠标所在位置坐标 右下
map.addControl(new OpenLayers.Control.ScaleLine());//比例尺
map.addControl(new OpenLayers.Control.Permalink());//永久链接,即该链接可以定位到当前位置及缩放级别
map.addControl(new OpenLayers.Control.KeyboardDefaults());//键盘按键操作控件
其他的就不说了,自己下载示例直接看源码,注释很少~~
OpenLayers2.13.1知识整理的更多相关文章
- ORACLE FLASHBACK DATABASE 知识整理
		1.知识储备 1) 只有SYSDBA有权执行,闪回前一定要记录当前SCN 2) 需要停机,并要求处于ARCHIVELOG模式中 3) 闪回日志不能被复用和归档,是自动管理的.RVWR ... 
- ORACLE DATABASE 10G FALSHBACK 知识整理
		1.知识储备 1) 当出现介质损坏时(如数据文件丢失),任何闪回方法都毫无用处,只能执行标准的备份.还原与恢复. 2.SCN记录方法 SQL>variable x_scn number; ... 
- 【OGG】OGG基础知识整理
		[OGG]OGG基础知识整理 一.GoldenGate介绍 GoldenGate软件是一种基于日志的结构化数据复制软件.GoldenGate 能够实现大量交易数据的实时捕捉.变换和投递,实现源数据库与 ... 
- Linux系统基础知识整理
		一.说明 本篇文章,我将结合自己的实践以及简介,来对linux系统做一个直观清晰的介绍,使得哪些刚接触Linux的小伙伴可以快速入门,也方便自己以后进行复习查阅. 二.基本知识整理 1.Linux文件 ... 
- Linux系统基础知识整理(一)
		本文来自于: https://www.cnblogs.com/hafiz/p/6686187.html#4196989 一.说明 本篇文章,我将结合自己的实践以及简介,来对linux系统做一个直观清晰 ... 
- js事件(Event)知识整理
		事件(Event)知识整理,本文由网上资料整理而来,需要的朋友可以参考下 鼠标事件 鼠标移动到目标元素上的那一刻,首先触发mouseover 之后如果光标继续在元素上移动,则不断触发mousemo ... 
- Kali Linux渗透基础知识整理(四):维持访问
		Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ... 
- Kali Linux渗透基础知识整理(二)漏洞扫描
		Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ... 
- wifi基础知识整理
		转自 :http://blog.chinaunix.net/uid-9525959-id-3326047.html WIFI基本知识整理 这里对wifi的802.11协议中比较常见的知识做一个基本的总 ... 
随机推荐
- 机器学习实战(一)kNN
			$k$-近邻算法(kNN)的工作原理:存在一个训练样本集,样本集中的每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对于关系.输入没有标签的新数据后,将新数据的每一个特征与样本集中数据对应的 ... 
- log4net应用
			1,配置文件 如果放在Web.config文件中,要放在根节点<configuration>下. 但一般为了方便配置文件的修改,可以将配置文件独立于Web.config,而单独放在一个文本 ... 
- 基于Redis的爬虫平台的实现
			一.需求: 1.数据抓取:目标数据的下载.解析.入库功能. 2.数据服务:黑名单.灰名单等查询服务. 3.平台监控:平台各个模块的数据实时监控. 二.WEB端效果展示: 三.架构设计 下载器.解析器. ... 
- Python之路【第十九章】:Django 数据库对象关系映射
			Django ORM基本配置 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去 ... 
- Oracle同一数据库实例不同用户间的数据迁移
			1.目标用户登录,创建自我连接的DB LINK -- Create database link create public database link MYLINK connect to 原用户名 u ... 
- js贪吃蛇源码
			1.注意,自己引入jquery,这个demo基于jquery的,我的jquery是写的本地的 2.没有写注释,看不懂的再问我吧, <!DOCTYPE html><html> & ... 
- CSRF 攻击
			一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSR ... 
- Adobe AIR对本地文件(XML文件)的操作
			引用:http://addiwang.blog.163.com/blog/static/118130772011221114230288/ Air的文件操做主要涉及两个类,FIle和FileStrea ... 
- simvision使用
			Access Design Source Code: 1)通过file---open来打开, 2)通过send to source viewer来看, 双击信号,进行driver的trace,显示在左 ... 
- QuickRun-快速运行助手
			大家平时需要打开软件的时候都是怎么操作的?一般来说有三种方式: 切换到桌面再点击软件的快捷方式(会将当前正在操作的软件隐藏,再切换回之前的状态比较麻烦,特别是桌面被密密麻麻的图标铺满的时候,找到一个快 ... 
