地图投影转换公式
高斯投影6度和3度分带公式(一)

高斯投影6度和3度分带公式(一)高斯投影6度和3度分带公式介绍高斯投影是一种常用的地图投影方法,通过将地球表面上的点投影到平面上,实现地球表面的测绘和制图工作。
而在高斯投影中,存在两种常见的分带方式,即6度分带和3度分带。
下面将详细介绍这两种分带方式的相关公式和举例。
6度分带公式在6度分带方式中,地球被划分为60个纵向分带,每个分带占据经度范围为6度。
在每个分带内,利用高斯投影公式将地球上的经纬度点投影到平面上。
其公式如下:x = m0 * l * cos(B) + m0 * l^3 * cos(B)^3 * (1 - ta n(B)^2 + eta^2 * x^2) / 6 + (1)y = m0 * B + m0 * l^2 * cos(B)^2 * (1 + eta^2 * x^2) / 2 + (2)其中,x和y分别为经纬度点的投影平面坐标,B为纬度,l为经度差,eta为扁率的平方,m0为高斯投影系数。
公式(1)和(2)中的省略号表示高阶项,为了简化计算一般可以忽略。
下面以将经度为度、纬度为度的点投影为例进行说明。
首先,需要计算各个参数的值。
根据地理坐标系的定义,可以得到扁率的平方eta等于,经度差l等于度(经纬度一般采用度数表示)。
接着,根据所在纬度的带号(34度属于6度分带中的第6带),可以获得该带的高斯投影系数m0。
再根据公式(1)和(2),将以上参数代入计算即可得到该点在投影平面上的坐标。
3度分带公式与6度分带不同,3度分带将地球划分为120个纵向分带,每个分带占据经度范围为3度。
其余的计算方法和6度分带类似,公式如下:x = m0 * l * cos(B) + m0 * l^3 * cos(B)^3 * (1 - tan(B)^2 + eta^2 * x^2) / 6 + ... (1')y = m0 * B + m0 * l^2 * cos(B)^2 * (1 + eta^2 * x^2) / 2 + ... (2')需要注意的是,参数的计算方法和6度分带相同,但是高斯投影系数m0的计算会有所不同。
七参数四参数转化

七参数四参数转化七参数和四参数是地图投影参数的两种主要形式。
七参数转化为四参数意味着从包含更多参数的转换模型向包含更少参数的模型转换。
下面将详细介绍七参数和四参数的概念以及它们之间的转换方法。
1.七参数转换模型:七参数是指地图投影转换过程中需要考虑的七个参数,它们分别是平移X、平移Y、平移Z、旋转角度α、β、γ和尺度因子k。
这些参数用来描述两个坐标系之间的平移、旋转和尺度变换关系。
七参数转换模型的数学表达形式为:X' = X + tx + (-rz * Y) + (ry * Z) + dxY' = Y + rz * X + (-tx * Z) + dyZ' = Z + (-ry * X) + (tx * Y) + dz其中,(X', Y', Z')为转换坐标系中的坐标,在这个坐标系中,X轴指向东方,Y轴指向北方,Z轴指向上方。
而(X, Y, Z)为原始坐标系中的坐标,原始坐标系的坐标轴方向可能与转换坐标系不一致。
tx、ty、tz 为平移参数,表示坐标系之间的平移关系。
rx、ry、rz为旋转参数,表示坐标系之间的旋转关系。
dx、dy、dz为尺度参数,表示坐标系之间的尺度变换关系。
2.四参数转换模型:四参数是指地图投影转换过程中只需考虑的四个参数,它们分别是平移dx、dy、旋转角度θ和尺度因子m。
这些参数也用于描述两个坐标系之间的平移、旋转和尺度变换关系。
四参数转换模型的数学表达形式为:X' = m * (X * cosθ - Y * sinθ) + dxY' = m * (X * sinθ + Y * cosθ) + dy其中,(X', Y')为转换坐标系中的坐标,在这个坐标系中,X轴指向东方,Y轴指向北方。
而(X, Y)为原始坐标系中的坐标,原始坐标系的坐标轴方向可能与转换坐标系不一致。
dx、dy为平移参数,表示坐标系之间的平移关系。
坐标正反算定义及公式

坐标正反算定义及公式坐标正算和反算是地图投影中的重要概念,用于将地球表面上的经纬度坐标转换为平面坐标(正算),或将平面坐标转换为经纬度坐标(反算)。
这种转换是为了方便地图上的测量和计算。
坐标正算是指根据地球表面上的经纬度坐标,计算出对应的平面坐标。
在这个过程中,需要考虑地球的形状、椭球体模型以及地图投影方法等因素。
不同的投影方法会导致不同的坐标正算公式,下面简单介绍两种常用的投影方法及其公式。
1.经纬度-平面直角坐标投影(简称平面直角投影)平面直角投影是将地球表面上的经纬度坐标转换为平面直角坐标的一种常用方法。
在平面直角投影中,地球被近似为一个大椭球体,通过将经纬度坐标映射到一个平面上完成转换。
公式如下:X = N * (L - L0) * cosφ0Y=N*(φ-φ0)其中,X和Y为平面直角坐标,L和φ分别为经纬度坐标,L0和φ0分别为中央经线和标准纬线,N为椭球的半径。
2.地心正投影(简称球面正投影或者高斯正算)地心正投影是一种在地心球面上进行的坐标正算方法,适用于小范围的地图投影。
在地心正投影中,将地球看作一个球体,并通过一个中央经线来进行投影。
公式如下:X = A * (L - L0) * cosφY=A*(φ-φ0)其中,X和Y为平面直角坐标,L和φ分别为经纬度坐标,L0和φ0分别为中央经线和标准纬线,A为一个与椭球参数相关的常数。
坐标反算是指根据平面坐标计算出对应的经纬度坐标。
在坐标反算中,需要将平面坐标反映射回地球表面,恢复为经纬度坐标。
与坐标正算类似,不同的投影方法会导致不同的坐标反算公式,下面介绍两种常用的投影方法及其公式。
1.平面直角坐标-经纬度投影(平面直角反算)平面直角反算是将平面直角坐标转换为地球表面上的经纬度坐标的一种方法。
利用与坐标正算相反的操作,将平面直角坐标通过逆转换还原为经纬度坐标。
公式如下:φ=φ0+Y/NL = L0 + X / (N * cosφ0)其中,φ和L分别为经纬度坐标,φ0和L0分别为标准纬线和中央经线,X和Y为平面直角坐标,N为椭球的半径。
高斯投影3度带计算公式

高斯投影3度带计算公式
高斯投影是一种常用的地图投影方法,广泛应用于地理信息系统和地图制作中。
其中,高斯投影3度带是指将地球划分为每3度经度为一个投影带,每个投影带都有其特定的计算公式。
以下是高斯投影3度带的计算公式。
1.计算中央子午线经度
中央子午线经度可以通过经度除以3再取整得到。
例如,经度120度所在的投影带的中央子午线经度为39度。
2.计算投影坐标系原点
投影坐标系原点的纬度可以通过将纬度分为北纬和南纬两个区间,再通过选择不同的公式计算得到。
北纬区间为0度到84度,南纬区间为0度到80度。
公式如下:
在北纬区间内,原点纬度等于3度带数乘以3度再减去1.5度;
在南纬区间内,原点纬度等于80度减去3度带数乘以3度再减去1.5度。
3.计算投影系数
投影系数是指将经纬度转换为XY平面坐标的转换参数。
根据不同的投影带和纬度区间,投影系数有不同的计算公式。
可以使用以下公式计算投影系数:
投影系数等于扁率乘以半长轴,再乘以纬度差值,再除以360。
4.计算辅助角度
辅助角度可以通过以下公式计算得到:
辅助角度等于经度差值乘以60等于输入经度减去中央子午线经度。
5.计算投影坐标
投影坐标由X和Y两个部分组成,可以通过以下公式计算得到:
X等于投影系数乘以辅助角度的正弦值;
Y等于投影系数乘以辅助角度的余弦值。
这就是高斯投影3度带的计算公式。
通过这些公式,可以将经纬度坐标转换为平面坐标,实现地图投影和测量分析等功能。
高斯投影3度带的计算公式是地图制作和测绘工作中的重要工具,具有广泛的应用前景。
常用地图投影转换公式

常用地图投影转换公式作者:青岛海洋地质研究所戴勤奋 投影计算公式往往表达方式不止一种,有时很难分辨谁对谁错,我只把“墨卡托投影”、“高斯-克吕格投影”、“UTM投影”、“兰勃特等角投影”(1:100万地形图规范中称作正轴等角圆锥投影,GB/T 14512-93)的正反转换公式列出,因为我基本能保证这些公式的正确性。
1.约定本文中所列的转换公式都基于椭球体a -- 椭球体长半轴b -- 椭球体短半轴f -- 扁率e -- 第一偏心率e’ -- 第二偏心率N -- 卯酉圈曲率半径R -- 子午圈曲率半径B -- 纬度,L -- 经度,单位弧度(RAD)-- 纵直角坐标,-- 横直角坐标,单位米(M)2.椭球体参数我国常用的3个椭球体参数如下(源自“全球定位系统测量规范 GB/T界面上的所谓“北京1954“西安1980”及“WGS 84”在实际计算中只涉及了相应的椭球体参数。
3.墨卡托(Mercator)投影3.1 墨卡托投影简介墨卡托(Mercator)投影,是一种"等角正切圆柱投影”,荷兰地图学家墨卡托(Gerhardus Mercator 1512-1594)在1569年拟定, 假设地球被围在一中空的圆柱里,其标准纬线与圆柱相切接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅选定标准纬线上的“墨卡托投影”绘制出的地图。
墨卡托投影没有角度变形,由每一点向各方向的长度比相等,它的经纬线都是平行直线,且相交成直角,经线间隔相等,纬线间隔从标准纬线向两极逐渐增大。
墨卡托投影的地图上长度和面积变形明显,但标准纬线无变形,从标准纬线向两极变形逐渐增大,但因为它具有各个方向均等扩大的特性,保持了方向和相互位置关系的正确。
在地图上保持方向和角度的正确是墨卡托投影的优点,墨卡托投影地图常用作航海图和航空图,如果循着墨卡托投影图上两点间的直线航行,方向不变可以一直到达目的地,因此它对船舰在航行中定位、确定航向都具有有利条件,给航海者带来很大方便。
测量学与地图学(第七章)

ds ' m ds
Vm m 1
= 0 不变 > 0 变大 < 0 变小
2)面积变形 面积比和面积变形: 投影平面上微小面积(变形 椭圆面积)dF′与球面上相应的微小面积(微小圆面 积)dF之比。
P 表示面积比 Vpቤተ መጻሕፍቲ ባይዱ表示面积变形
dF’
πa * r * b * r
P=
dF
=
π r2
= a*b
其中,等距投影是在特定方向上没有长度变形的任 意投影(m=1)。
§3
一.
地图投影的选择
地图投影的选择依据
1.制图区域的地理位置、形状和范围
2.制图比例尺
3.地图的内容
4.出版方式
1.制图区域的地理位置、形状和范围
2.制图比例尺
不同比例尺地图对精度要求不同,投影亦不同。 大比例尺地形图,对精度要求高,宜采用变形 小的投影。
测量学与地图学
电子教案
第七章、地图投影
第七章、地图投影
§1 、地图投影及其变形
§2 、地图投影的分类
§3 、地图投影的选择
§4 、地图投影的判别
§1 、地图投影及其变形
一 、地图投影
按照一定的数学法则,将地球椭球面上的经纬网转换 到平面上,使地面点位的地理坐标 (λ、φ) 与地图上相 对应点位的平面直角坐标(x,y) 或极坐标 (δ,ρ)间,建立 起一一对应的函数关系:
③等距割圆锥投影
条件:m = 1 ;
原苏联出版的苏联全图,采用(j1 = 47 ° ; j2 = 62 °)的该投影。
3. 伪圆锥投影
由法国彭纳(R. Bonne)在圆锥投影的基础上,根据某些 条件改变经线形状设计而成,故又称彭纳投影(等积投影)。
高斯投影及高斯投影坐标系
d4X dq 4
N sin B cos 3 B (5 t 2 9 2 4 4 )
d5X dq 5
N cos 5 B (5 18t 2 t 4 14 2 58t 2 2 )
d6X dq 6
N sin B cos 5 B (61 58t 2 t 4 270 2 330 t 2 2 )
23
3.1.3 地图投影的分类
横轴圆柱投影:投影圆柱面与某经线相切。 斜轴圆柱投影:用于小比例尺投影,将地球视为圆球,
投影圆柱体斜切于圆球进行投影。
(3). 圆锥投影:圆锥面与椭球面相切或相割,将椭球面上 物投影到圆锥面上,展开圆锥面得投影平 面。 根据圆锥顶点位置不同,分正圆锥 投影、斜圆锥投影。
xcosf(Z)cos ysinf(Z)sin
22
3.1.3 地图投影的分类
(2). 正轴或斜、横轴圆柱投影 正轴圆柱投影:投影圆柱面与某纬线相切(切圆柱投
影)、或相割(割圆柱投影) 切圆柱投影:投影圆柱面与赤道相切,纬线投影成 一组平行直线,经线投影成与纬线正交 的另一组平行直线。 割圆柱投影:投影圆柱面与两条对称纬线相割,纬线 投影成一组平行直线,经线投影成与纬 线正交的另一组平行直线。
33
§3.3 高斯投影坐标正算和反算公式
3.2.1 高斯投影正算公式
x
l L
L0
H Pq,l
X
L0
L
y
h X
Px, y x
y
O
O
因正形投影的导数
与方向无关,将投
影点坐标在H点展 开,得:
赤 道
n d k f (q) (il)k
x iy f (q)
k 1
d qk
. k!
地投影变形计算公式
地投影变形计算公式地图投影变形计算公式。
地图投影是地理学和地图学中的一个重要概念。
地图投影是将地球表面上的三维地理空间坐标投影到一个二维平面上的过程。
在地图制图和空间分析中,地图投影是一个非常重要的问题,因为地球是一个三维的椭球体,而地图是一个二维平面。
因此,在将地球表面上的地理空间坐标转换为平面地图上的坐标时,会产生一定的变形。
地图投影的变形可以分为角度变形、面积变形和形状变形三种类型。
角度变形是指在地图投影过程中,地图上的角度与地球表面上的实际角度之间存在差异。
面积变形是指在地图投影过程中,地图上的面积与地球表面上的实际面积之间存在差异。
形状变形是指在地图投影过程中,地图上的形状与地球表面上的实际形状之间存在差异。
地图投影变形的存在对地图制图和空间分析有一定的影响,因此需要进行相应的变形计算。
地图投影变形的计算可以通过一些数学公式来实现。
目前常用的地图投影变形计算公式有兰伯特正形圆锥投影变形计算公式、墨卡托投影变形计算公式和极射赤面投影变形计算公式等。
这些公式可以通过一定的数学推导和计算得到,用来描述地图投影变形的特性和规律。
兰伯特正形圆锥投影是一种常用的地图投影方法,其变形计算公式为:x = ρsin(θ)。
y = ρ0 ρcos(θ)。
其中,x和y分别表示地图上的坐标,ρ表示地球表面上的点到投影中心的距离,ρ0表示地球表面上的标准纬度圈到投影中心的距离,θ表示地球表面上的点到投影中心的方位角。
通过这个公式,可以计算出地球表面上的点在地图上的坐标,进而分析地图投影的变形情况。
墨卡托投影是一种常用的等角圆柱投影方法,其变形计算公式为:x = R(λλ0)。
y = R ln[tan(π/4 + φ/2)]其中,x和y分别表示地图上的坐标,R表示地球的半径,λ表示地球表面上的点的经度,λ0表示地球表面上的标准经度,φ表示地球表面上的点的纬度。
通过这个公式,可以计算出地球表面上的点在地图上的坐标,进而分析地图投影的变形情况。
地图投影的原理及应用实例
地图投影的原理及应用实例1. 地图投影的基本概念地图投影是指将三维的地球表面投影到一个平面上,以便于进行测量、绘制和分析地理信息。
地图投影的过程中,由于地球是一个球体,不可避免地会出现一定的形变。
不同的地图投影方法会选择不同的投影面,以及不同的数学模型和变形形式,以最大程度地减小形变。
2. 常见的地图投影方法2.1 圆柱投影法•圆柱投影法是将地球投影到一个圆柱体上,再将圆柱体展开为平面的投影方法。
•常见的圆柱投影方法有墨卡托投影、等面积圆柱投影、等距圆柱投影等。
2.2 锥形投影法•锥形投影法是将地球投影到一个圆锥体上,再将圆锥体展开为平面的投影方法。
•常见的锥形投影方法有兰勃特圆锥投影、兰勃托等角圆锥投影等。
2.3 平面投影法•平面投影法是将地球投影到一个平面上的投影方法。
•常见的平面投影方法有斯体列克平面投影、等角正矩形平面投影等。
3. 地图投影的原理地图投影的原理是将地球上的地理坐标转换为平面上的坐标。
具体的计算方法有很多种,但基本思想是利用数学模型将球面的点映射到平面上的相应点,从而实现地球表面到地图平面的映射。
地球经纬度坐标转换为平面坐标的公式如下:X = R * cos(φ) * cos(λ0 - λ)Y = R * cos(φ) * sin(λ0 - λ)其中,X和Y表示地球上的点在平面上的投影坐标,R表示地球的半径,φ和λ表示地球上的点的纬度和经度,λ0表示中央子午线的经度。
4. 地图投影的应用实例4.1 航空航天地图投影在航空航天领域中起着重要的作用。
航空航天中常用的地图投影方法是墨卡托投影。
墨卡托投影能将地球表面的航线直观地展示出来,便于飞行员进行导航和飞行计划。
4.2 地理信息系统地图投影在地理信息系统(GIS)中的应用非常广泛。
GIS系统中的地图投影方法需要考虑到形变问题,并且需要选择适合不同应用场景的投影方法。
例如,在城市规划中,会使用等面积圆柱投影;在区域分析中,会使用兰勃特圆锥投影等。
地图投影.pdf
2.2 地图投影地图投影将从球形球体的地理坐标转换到平面位置的地球表面到平面的转换。
这个转换过程的结果是以经纬线在平面上系统排列来代表地理坐标系统。
地图投影有两个突出的优点:第一,地图投影使用二维的纸质或数字地图;第二,地图投影可用平面坐标或投影坐标,而不是经纬度值。
用地理坐标计算会更加复杂(注释栏2.2)。
但是从椭球体到平面的转换总是带有变形,没有一种地图投影是完美的。
这就是为什么发展了数百种地图投影用于地图制图(Maling,1992;Snyder,1993)。
每种地图投影都保留了某些空间性质,而牺牲了另一些性质。
2.2.1地图投影类型地图投影可以根据所保留的性质或投影面进行分组。
制图者通常根据地图投影所保留的性质将其分成4 类:正形、等面积或等积、等距和等方向或真方位。
正形投影保留了局部角度及其形状,等积投影以正确的相对大小显示面积,等距投影保持沿确定路线的比例尺不变,等方位投影保持确定的准确方向。
地图投影的名称通常包含它所能保留的性质,如兰勃特正形圆锥投影或阿伯斯等积圆锥投影。
正形和等积两种性质是相互排斥的,否则一个地图投影所能保留的性质就不只一种,如会同时保留正形和等方向。
正形和等积的性质是全局性质,即可应用于整幅地图投影。
等距和等方位性质是局部性质,只能在距地图投影中心较近的地方实现。
要选择一种适当的地图投影制作专题地图时,其所保留的性质就显得十分重要(Battersby,2009)。
例如,一幅世界人口地图应该基于等积投影,若按照正确大小来显示地区,这张人口地图可产生人口密度的正确印象。
相反,等距投影用于制作表示离发射塔距离的地图则较好。
制图者通常用几何体和球体来说明地图投影的原理。
例如,将一圆柱体与一发光球体相切,球体上的经线和纬线映射到圆柱体上就构成了投影。
本例中圆柱体是投影面,也称为展开平面,球体称为参照球体。
其他常见的投影面包括圆锥和平面。
因此,地图投影可根据投影面划分为圆柱投影、圆锥投影和方位投影。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
地图投影公式转换
lats = [-85.05112877980659,85.05112877980659] // 纬度取值范围
minPoint = (-180, -85.05112877980659)
// 左下角经纬度坐标
maxPoint = (180, 85.05112877980659)
// 右上角经纬度坐标
由于赤道半径为 r(6378137 米),则赤道周长为 c(2*PI*r),x 轴的取值范围为 xs。当纬度 φ 接近两极,即 90°时 y 值趋向于无穷。因此通常 y 轴的取值范围与 x 轴相同。因此在墨卡托投影展 开的全局坐标系(米)下的坐标范围是:最小坐标值为 minExtent,最大坐标为 maxExtent。
五、Bing Maps 像素坐标系和地图图片编码 为了优化地图系统性能,提高地图下载和显示速度,所有地图都被分割成 256 x 256 像素大小
的正方形小块。由于在每个放大级别下的像素数量都不一样,因此地图图片(Tile)的数量也不一 样。每个 tile 都有一个 XY 坐标值,从左上角的(0, 0)至右下角的(2level–1, 2level–1)。例如在 3 级放 大级别下,所有 tile 的坐标值范围为(0, 0)至(7, 7),已知一个像素的 XY 坐标值时,我们很容易得 到这个像素所在的 Tile 的 XY 坐标值:
地理经度的取值范围是[-180,180],纬度不可能到达 90°,通过纬度取值范围 ys 反解计算可 得到纬度值为 85.05112877980659。因此纬度取值范围是 lats。因此,地理坐标系(经纬度) 对应的范围是,最小地理坐标 minPoint,最大地理坐标 maxPoint。
1/8
bbirdsky 笔记
经纬度展开计算公式:
r = 6378137
// 地球半径(单位米)
c = 2 * PI * r = 20037508.3427892 * 2
// 地球周长
xs = [-20037508.3427892,20037508.3427892] // x 方向取值范围
ys = [-20037508.3427892,20037508.3427892] // y 方向取值范围
bbirdsky 笔记
地图投影公式转换
地图投影公式转换
一、墨卡托投影坐标系(Mercator Projection)
墨卡托投影(Mercator Projection),又称为“等角正轴圆柱投影”,是一种“等角正切圆柱 投影”,荷兰地图学家墨卡托(Mercator)在 1569 年拟定,假设地球被围在一个中空的圆柱里,其 赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体 展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。
1 : 295,829,355.45 1 : 147,914,677.73 1 : 73,957,338.86 1 : 36,978,669.43 1 : 18,489,334.72
3/8
bbirdsky 笔记
6
16,384
2,445.9849
7
32,768
1,222.9925
8
65,536
611.4962
minExtent = (-20037508.3427892, -20037508.3427892) // 左下角坐标(最小坐标)
maxExtent = (20037508.3427892, 20037508.3427892) // 右上角坐标(最大坐标)
二、地理坐标系(Geographical coordinates)
returnMath.Min(Math.Max(n, minValue), maxValue); } publicstaticuintMapSize(intlevelOfDetail) {
return (uint) 256 <<levelOfDetail; } /// Determines the ground resolution (in meters per pixel) at a specified /// latitude and level of detail.
三、地面分辨率(Ground Resolution)
地面分辨率是以一个像素(pixel)代表的地面尺寸(米)。以微软 Bing Maps 为例,当 Level 为 1 时,图片大小为 512*512(4 个 256 像素的 Tile),那么赤道空间分辨率为:赤道周长/512。 其他纬度的空间分辨率则为纬度圈长度/512,极端的北极则为 0。Level 为 2 时,赤道的空间分辨
墨卡托投影正反解公式
墨卡托投影正解公式:(B,L)→(X,Y),标准纬度 B0,原点纬度 0,原点经度 L0
墨卡托投影反解公式:(X,Y) →(B,L),标准纬度 B0,原点纬度 0,原点经度 L0
公式中 EXP 为自然对数底,纬度 B 通过迭代计算很快就收敛了。 弧度角度的转换公式
弧度转角度: (180* rad)/PI 角度转弧度: PI*((double)degree/180d)
地面分辨率和地图比例尺之间的关系
缩放级别
1 2 3 4 5
地图宽高(像素)
512 1,024 2,048 4,096 8,192
地面分辨率(米/像素)
78,271.5170 39,135.7585 19,567.8792 9,783.9396 4,891.9698
地图比例尺(96dpi 为例,米/英寸)
墨卡托投影以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标 原点,向东向北为正,向西向南为负。南北极在地图的正下、上方,而东西方向处于地图的正右、 左。由于墨卡托投影在两极附近是趋于无限值,因此它并没完整展现了整个世界,地图上最高纬度 是 85.05 度。为了简化计算,我们采用球形映射,而不是椭球体形状。虽然采用 Mercator Projection 只是为了方便展示地图,需要知道的是,这种映射会给 Y 轴方向带来 0.33%的误差。
18
67,108,864
0.5972
19
134,217,728 0.2986
20
268,435,456 0.1493
21
536,870,912 0.0746
22
1,073,741,824 0.0373
23
2,147,483,648 0.0187
地图投影公式转换
1 : 9,244,667.36 1 : 4,622,333.68 1 : 2,311,166.84 1 : 1,155,583.42 1 : 577,791.71 1 : 288,895.85 1 : 144,447.93 1 : 72,223.96 1 : 36,111.98 1 : 18,055.99 1 : 9,028.00 1 : 4,514.00 1 : 2,257.00 1 : 1,128.50 1 : 564.25 1 : 282.12 1 : 141.06 1 : 70.53
2/8
bbirdsky 笔记
地图投影公式转换
率为赤道周长/1024,其他纬度为纬度圈长度 1024。很明显,地面分辨率(Ground Resolution) 取决于两个参数,缩放级别 Level 和纬度 latitude ,Level 决定像素的多少,latitude 决定地面距 离的长短。
地面分辨率的公式
像素级别计算公式
mapWidth = mapHeight = 256 * 2level pixels
四、地图比例尺(Map Scale)
地图比例尺是指测量相同目标时,地图上距离与实际距离的比例。通过地图分辨率在计算可知 由 Level 可得到图片的像素大小,那么需要把其转换为以米为单位的距离,涉及到 DPI(dot per inch),暂时可理解为类似的 PPI(pixel per inch),即每英寸代表多少个像素。256 * 2level / DPI 即得到相应的英寸 inch,再把英寸 inch 除以 0.0254 转换为米。实地距离仍旧是:length。
tileX = floor(pixelX / 256) tileY = floor(pixelY / 256)
为了简化索引和存储地图图片,每个 tile 的二维 XY 值被转换成一维字串,即四叉树键值 (quardtree key,简称 quadkey)。每个 quadkey 独立对应某个放大级别下的一个 tile,并且 它可以被用作数据库中 B-tree 索引值。为了将坐标值转换成 quadkey,需要将 Y 和 X 坐标二进制 值交错组合,并转换成 4 进制值及对应的字符串。例如,假设在放大级别为 3 时,tile 的 XY 坐标 值为(3,5),quadkey 计算如下:
地面分辨率 = (cos(latitude * PI/180) * 6378137 meters)* 2 * PI / (256 * 2level pixels) 简易公式:地面分辨率 = 2 * PI * r / 256 * 2level
最低地图放大级别(1 级),地图是 512 x 512 像素。每下一个放大级别,地图的高度和宽度 分别乘于 2:2 级是 1024 x 1024 像素,3 级是 2048 x 2048 像素,4 级是 4096 x 4096 像素, 等等。通常而言,地图的宽度和高度可以由以下式子计算得到:
比例尽计算公式
dot = 256 * 2level / 0.0254 / dpi // 地面分辨率 length = (cos(latitude * PI / 180) * 2 * PI * 6378137) // 实际长度 mapscale = dot / length mapscale = 1 : resolution * dpi / 0.0254 // 单位米/英尺 比例尺= 1 : (length * dpi) / (256 * 2level * 0.0254)