GOOGLE卫星地图 计算方式
摘自 http://www.cnblogs.com/Tangf/archive/2006/07/23/457902.html
写的重名了,Pany的原文:http://panyee.cnblogs.com/archive/2006/04/27/386914.html
只是用了下觉得算法不太对。
后来又找了下以前收集的在南京大学小百合BBS上的资料,找到了些有用的东西,摘录一些有用的文字:
Google卫星地图是由256x256大小的jpeg图片拼接而成,每块图片的URL格式为“http://kh.google.com/kh?v=2&t=trstrqqstsrqttsttq”样。参数v与图片关系不大,主要是参数t起作用,它是“qrst”4个字符排列而成的字符串。为获取某经纬度的URL,就需要把经纬度转化为“qrst”字符串。 Google卫星地图在zoom=1时,全球就为一个256x256的图片,它的中心经纬度为(0,0),URL为“http://kh.google.com/kh?v=2&t=t”。zoom=2时裂化为4块,每块的编号为:左上”t=tq”,右上”t=tr”,右下“t=ts”,左下”t=tt”。依此类推,每放大一倍,每一小块都裂分为四,从左上到右下顺时针按qrst编号,裂分后的编码为裂分前的编号上小块的编号。
摘录一个网页:http://intepid.com/stuff/gmkh/,在这个网页上输入一个坐标和缩放级别就可以显示地图,并显示从世界图到详细图的逐层计算。
摘录两个代码,一个是上面这个网页中的JS代码,一个是小百合论坛上说的另一中Delphi的算法。
原文连接:
I was born at TSRRTRSQSQQQRQRTSS
有人知道google earth吗-小百合论坛
延伸:通过这样的算法可以看出Google切图的索引方式,那么能否推算出地图切割算法呢?
两个代码如下
Gmap URL_JS
function GetQuadtreeAddress(long, lat)
{
var PI = 3.1415926535897;
var digits = 18; // how many digits precision
// now convert to normalized square coordinates
// use standard equations to map into mercator projection
var x = (180.0 + parseFloat(long)) / 360.0;
var y = -parseFloat(lat) * PI / 180; // convert to radians
y = 0.5 * Math.log((1+Math.sin(y)) / (1 - Math.sin(y)));
y *= 1.0/(2 * PI); // scale factor from radians to normalized
y += 0.5; // and make y range from 0 - 1
var quad = "t"; // google addresses start with t
var lookup = "qrts"; // tl tr bl br
while (digits–)
{
// make sure we only look at fractional part
x -= Math.floor(x);
y -= Math.floor(y);
quad = quad + lookup.substr((x >= 0.5 ? 1 : 0) + (y >= 0.5 ? 2 : 0), 1);
// now descend into that square
x *= 2;
y *= 2;
}
return quad;
}
=================
function getSatURL(zoom: integer; X, Y: double): string;
var
wx, wy, cx, cy: double;
tid: string;
i: integer;
begin
cx := 0;
cy := 0;
wx := 180;
wy := 180;
tid := 't';
for i := 1 to zoom-1 do
begin
if (x >= cx) and (y >= cy) then
begin
tid := tid + 'r';
cx := cx + wx / 2;
cy := cy + wy / 2;
end
else if (x >= cx) and (y < cy) then
begin
tid := tid + 's';
cx := cx + wx / 2;
cy := cy - wy / 2;
end
else if (x < cx) and (y < cy) then
begin
tid := tid + 't';
cx := cx - wx / 2;
cy := cy - wy / 2;
end
else
begin
tid := tid + 'q';
cx := cx - wx / 2;
cy := cy + wy / 2;
end;
wx := wx / 2;
wy := wy / 2;
end;
result := 'http://kh.google.com/kh?v=2&t=' + tid;
end;
GOOGLE卫星地图 计算方式相关推荐
- Google卫星地图的URL计算
写的重名了,Pany的原文:http://panyee.cnblogs.com/archive/2006/04/27/386914.html 只是用了下觉得算法不太对. 后来又找了下以前收集的在南京大 ...
- GOOGLE卫星地图
GOOGLE卫星地图 http://maps.google.com/ Google Earth http://earth.google.com/
- Google卫星地图定位(Resources)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...
- 三维卫星地图java_javaFX 调用google卫星地图的时候报错
javafx在调用google卫星地图的时候报以下错误 求大神帮忙看下 Exception in thread "JavaFX Application Thread" java. ...
- google 卫星地图
试了试google的新卫星地图, 能够非常清楚地看到温哥华地区的街道和建筑物,可以分辨出汽车. 把熟悉的地点看了一遍, 比普通地图直观. google把GIS很多年没能做到的事情做到了.http:/ ...
- Google卫星地图下的港珠澳大桥
港珠澳大桥是我国自主建设完成的超级跨海工程,是世界上最长的跨海大桥,创下世界七项之最,被誉为新世界"七大奇迹"之一. 你是不是还没有机会去游览一下这样一个伟大的工程?? 新闻有没有 ...
- 从Google卫星地图服务器上获取卫星照片的方法
随着Google公司2005年推出基于客户真个GoogleEarth和基于web的GoogleMaps(http://maps.google.com)以来,在GIS行业无疑是掀起一次革命性的浪潮,成为 ...
- 如何在网页中插入高清晰google卫星地图代码
Google Maps (地图)提供了一项功能,只要简单的一段 HTML 代码即可将 Google Maps 嵌入任意网页中.你只需要登陆 maps.google.com,点击地图右上方的" ...
- 国产Google地球如何下载2021版谷歌高清卫星地图?
谷歌卫星地图是国内比较常用的卫星地图.最近Google 卫星地图对国内部分地区进行了全面的更新,地图资料涵盖了全国146个城市.现在,从Google地图上已经可以查看全国各大城市的高清晰街道地图,并且 ...
最新文章
- 你必须知道的.net学习总结
- 如何让自己时刻冷静的方法_4个方法,教你如何真正爱自己
- Java面向对象特征介绍
- hdu 1593(数学)
- 【拔刀吧少年】之shell函数
- 100行代码让您学会JavaScript原生的Proxy设计模式
- matlab传函零极点形式,2013实验一 MATLAB 中控制系统模型的建立与仿真
- 现在这个时代变了,区块链,数字货币才是最火的项目
- 转:面试题收集——Java基础部分(一)
- SQL Server 2005利用分区对海量数据的处理
- Java学习思维导图整理
- excel怎么设置密码?加密文件这么做!
- c语言电子时钟课程设计报告,电子时钟嵌入式课程设计报告
- c#模拟看板控件_C#TIPTOP电子看板
- c代码实现 ifft运算_X^n+1=0上的FFT和IFFT(基2)——C语言实现
- MATLAB:镜像图片
- 【自学Python】Windows安装Python
- Hikvison对接NVR实现WEB无插件开发包实现前端视频预览(html、vue、nginx代理)
- 字符串转化为json对象和json数组
- Linux 启动jar项目相关命令(解决关闭Linux终端,程序自动停止问题)
热门文章
- 神锁离线版插件的安全设计
- 别踩白块儿 开源免费(C++)
- Arduino--4*4矩阵键盘
- BSOJ 2923:藤原妹红 MST+树型DP
- 小米笔记本电脑我的计算机图标不见了怎么办,毕业论文致谢结尾800字范文_本科毕业论文致谢结尾通用...
- 科技巨头纷纷发力AI,智能硬件已来临,变现还会远吗?
- 【LRD,DLR】BST的后续遍历序列,二叉树中和为某一值的路径
- img加载中显示loading,加载失败显示默认图片(React)
- hackinglab.cn脚本关之三
- mount reason give by server:Permission denid