openlayers 学习笔记之1
1. 为Web Gis客户端开发的javascript 框架 百度文库中的教程:入门经典>
1) 初始化map:
map = new OpenLayers.Map(mapContainerName, {
controls: [new OpenLayers.Control.PanZoomBar({ zoomWorldIcon: true, position: new OpenLayers.Pixel(, ) }),
new OpenLayers.Control.Navigation(),
new OpenLayers.Control.LayerSwitcher(),
new OpenLayers.Control.ScaleLine({ maxWidth: , topOutUnits: "公里", topInUnits: "米", bottomOutUnits: "", bottomInUnits: "" }),
new OpenLayers.Control.MousePosition({ prefix: "经度:", separator: ",纬度:" }),
new OpenLayers.Control.KeyboardDefaults(),
new OpenLayers.Control.TouchNavigation({ dragPanOptions: { enableKinetic: true } })
],
maxExtent: new OpenLayers.Bounds(-20037508.34, -20037508.34, 20037508.34, 20037508.34),
maxResolution: 156543.0339,
numZoomLevels: ,
units: 'm',
projection: "EPSG:900913",
displayProjection: new OpenLayers.Projection("EPSG:4326")
}
2)瓦片行列式的计算
var x = Math.round((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
var y = Math.round((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
var z = this.map.getZoom();
2. 墨卡托投影(900913)是WGS84大地坐标系(经纬度)(4326)的投影(其中的一种投影方法),左右不变,上下拉长。
1) 地面分辨率Resolution: 一个像素表示多少米
2) 地图比例尺Scale:图上距离和实际距离的比例
maxResolution: 156543.0339, //显示比例
Bounds (-20037508.3427892, -20037508.3427892, 20037508.3427892, 20037508.3427892), numZoomLevels : 19, // 全球bounds范围

缩放级别
|
地图宽度、高度(像素) |
地面分辨率(米/像素) |
地图比例尺(以96dpi为例) |
|
|
0 |
256 |
156,543.0339 |
1 : 591,658,710.90 |
|
1 |
512 |
78,271.5170 |
1 : 295,829,355.45 |
|
2 |
1,024 |
39,135.7585 |
1 : 147,914,677.73 |
|
3 |
2,048 |
19,567.8792 |
1 : 73,957,338.86 |
|
4 |
4,096 |
9,783.9396 |
1 : 36,978,669.43 |
|
5 |
8,192 |
4,891.9698 |
1 : 18,489,334.72 |
|
6 |
16,384 |
2,445.9849 |
1 : 9,244,667.36 |
|
7 |
32,768 |
1,222.9925 |
1 : 4,622,333.68 |
|
8 |
65,536 |
611.4962 |
1 : 2,311,166.84 |
|
9 |
131,072 |
305.7481 |
1 : 1,155,583.42 |
|
10 |
262,144 |
152.8741 |
1 : 577,791.71 |
|
11 |
524,288 |
76.4370 |
1 : 288,895.85 |
|
12 |
1,048,576 |
38.2185 |
1 : 144,447.93 |
|
13 |
2,097,152 |
19.1093 |
1 : 72,223.96 |
|
14 |
4,194,304 |
9.5546 |
1 : 36,111.98 |
|
15 |
8,388,608 |
4.7773 |
1 : 18,055.99 |
|
16 |
16,777,216 |
2.3887 |
1 : 9,028.00 |
|
17 |
33,554,432 |
1.1943 |
1 : 4,514.00 |
|
18 |
67,108,864 |
0.5972 |
1 : 2,257.00 |
|
19 |
134,217,728 |
0.2986 |
1 : 1,128.50 |
|
20 |
268,435,456 |
0.1493 |
1 : 564.25 |
|
21 |
536,870,912 |
0.0746 |
1 : 282.12 |
|
22 |
1,073,741,824 |
0.0373 |
1 : 141.06 |
|
23 |
2,147,483,648 |
0.0187 |
1 : 70.53 |
1) google map 900913 地图分块算法,切片算法 》》》
2)墨卡托坐标和经纬度坐标互转》》》
3)gis理论、墨卡托投影等》》》
总数量:
http://www.map1000.com/jjj/mhQiantuMapHandler.ashx?searchType=2&f=getPoiCount&classId=8000100®ionCode=003910
GetPoiCountWithKey
getPoiCountWithClass
openlayers 学习笔记之1的更多相关文章
- OpenLayers学习笔记4——使用jQuery UI实现測量对话框
OpenLayers学习最好的方式就是跟着其自带的演示样例进行学习,另外对web前端的开发设计要了解,慢慢积累,这样在一般的小项目中应该是足够用了. 本篇參照量測demo实现对话框形式的量測,抛砖引玉 ...
- OpenLayers学习笔记5——使用jQuery UI实现查询并标注(UI篇)
近期事情非常多,老板给的压力也非常大.经常出差,另外项目和个人研究还都要跟上,本月要交论文,还要写专利,仅仅能抽时间来学习其它的东西了. 关于OpenLayers的在博客中不会写太多详细的实现(网上有 ...
- OpenLayers学习笔记3——使用jQuery UI美化界面设计
PC端软件在开发是有较多的界面库能够选择,比方DevExpress.BCG.DotNetBar等,能够非常方便快捷的开发出一些炫酷的界面,近期在学习OpenLayers.涉及到web前端开发,在设计界 ...
- openlayers 学习笔记一
1. 创建地图,加载控件 var map = new OpenLayers.Map("map", { projection: new OpenLayers.Projection(& ...
- OpenLayers学习笔记(十)— 动态加载JSON数据模拟航迹线
在openlayers 3 上,加载本地json数据,动态绘制航迹线,以飞机当前位置为地图中心,此例子是模拟DEMO 本文链接:动态加载JSON数据模拟航迹线 作者:狐狸家的鱼 GitHub:八至 前 ...
- OpenLayers学习笔记(九)— 限制地图显示范围
openlayers 3 地图上限制地图显示及拖动范围,坐标系是4326转3857,中心经纬度精确到小数点后六位,减少误差 GitHub:八至 作者:狐狸家的鱼 本文链接:ol3-限制地图显示及拖动范 ...
- OpenLayers学习笔记(八)— 类似比例尺的距离环(二)
openlayers 3 地图上创建一个距离环,始终以地图中心为中心,每个环之间的距离类似比例尺,随地图缩放而变化. 添加具有覆盖整个范围的特征的虚拟层,其可以被设置为围绕地图中心的环. 这篇是上一篇 ...
- OpenLayers学习笔记(七)— 类似比例尺的距离环(一)
openlayers 3 地图上创建一个距离环,始终以地图中心为中心,每个环之间的距离类似比例尺,随地图缩放而变化. 添加具有覆盖整个范围的特征的虚拟层,其可以被设置为围绕地图中心的环.注意,根据地图 ...
- OpenLayers学习笔记(六)— 拖拽叠加层overlayer
是在官网例子基础上增加的拖拽功能 GitHub:八至 作者:狐狸家的鱼 本文链接:拖拽叠加层overlayer 全部代码 <!DOCTYPE html> <html> < ...
随机推荐
- scp
scp -rp -P22 test.txt root@xxxx:/tmp/ scp -rp -P22 root@xxxx:/tmp/1.txt ./
- java.lang.UnsupportedClassVersionError: TwoSum : Unsupported major.minor version 52.0
编译的版本比运行的版本高. 两台电脑,一个装的是jdk1.7,另一个是1.8,在1.8上运行之后,上传到github然后1.7的拉下来,再运行出现了上述错误. 解决方式:设置如下
- Daily Scrum 10.31
今天是万圣节,也是编译课程设计第一次作业截至的日子,但由于大家对时间的合理安排,我们还是完成了一定的任务量. 下面是今天的Task统计: 不仅燃尽图和燃速图出不来,连那个所有迭代状态的图也出不来了.. ...
- paramter的添加
public string GetUserIdByName(string UserName, string pwd) { string sql = @"select Na ...
- 设置mariadb字符集为utf8
我用的是10.0.25 mariadb, 在centos7系统上,用以下指令设置数据库字符集. [client] default-character-set=utf8 [mysql] defa ...
- Windows内核 基本数据结构
驱动对象: 每个驱动程序都会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载时被内核中的对象管理程序所创建的.驱动对象用DRIVER_OBJECT数据结构表示,它作为驱动的一个实例被内核加载,并 ...
- Ajax 无刷新上传文件插件 uploadify 的使用
在表单中无法直接使用 Ajax 上传文件,解决的思路可以是使用插件无刷新地上传文件,返回文件上传后的地址,然后把该地址作为 Ajax 的参数传递给服务器端进行数据库处理.可以使用 uploadify ...
- hibernate学习(1)——helloworld
1. 框架体系结构 2. hibernate入门 2.1 ORM框架 Hibernate是一个数据持久化层的ORM框架. Object:对象,java对象,此处特指JavaBean Relationa ...
- Web标准和搜索引擎优化技术
1.Web标准不是某一个标准,而是一系列标准的集合.出来网页内容之外,网页主要由三部分组成:结构(Structure).表现(Presenttation)和行为(Behavior).对应的标准也分三方 ...
- Object[]arr代码输出奇怪字符的解释
代码:class lizi { public static void main(String[] args){ //TODO Auto-generated method stub Object[ ...