zoukankan
html css js c++ java
google卫星地图的url计算
通过url跟踪,可以方便地取得google maps普通地图的图片url,如:
GET /mt?n=404&v=w2.10&x=3&y=6&zoom=13 HTTP/1.1
而对卫星地图图片的url像:
GET /kh?n=404&v=5&t=tqtsq HTTP/1.1
就不知它的t参数含义了。
今天看了看地图的.js文件,找到了如下代码,可以计算这个参数,也就可以动态构造出相应的url去批量下载卫星地图了。
代码如下:
<
script
>
function
MapObj()
{
this
.x;
this
.y;
}
function
test()
{
var
o
=
new
MapObj();
var
ss
=
document.all(
"
txtPos
"
).value.split(
"
,
"
);
o.x
=
ss[
0
];
o.y
=
ss[
1
];
var
zoom
=
parseInt(document.all(
"
txtFactor
"
).value);
var
ret
=
cal(o,
17
-
zoom);
document.all(
"
txtMess
"
).value
=
ret;
}
function
cal(a,b)
{
var
c
=
Math.pow(
2
,b);
//
比例参数, 地图宽度图片数量
var
d
=
a.x;
//
a is the map object
var
e
=
a.y;
var
f
=
"
t
"
;
/**/
/*
zoom = 13; b = 4; c = 2^4 = 16;
*/
for
(
var
g
=
0
;g
<
b;g
++
)
//
{
c
=
c
/
2
;
//
c / 2
if
(e
<
c)
//
a.y < c
{
if
(d
<
c)
//
a.x < c
{
f
+=
"
q
"
}
else
//
a.x >= c
{
f
+=
"
r
"
;
d
-=
c
//
a.x = a.x - c
}
}
else
//
a.y >= c
{
if
(d
<
c)
//
a.x < c
{
f
+=
"
t
"
;
e
-=
c
//
a.y = a.y - c
}
else
//
a.x >= c
{
f
+=
"
s
"
;
d
-=
c;
//
a.x = a.x - c
e
-=
c
//
a.y = a.y - c
}
}
}
return
"
t=
"
+
f;
//
var h=(a.x+a.y)%this.wa.length;//
//
return this.wa[h]+"t="+f
}
</
script
>
(x,y)
<
input type
=
text id
=
"
txtPos
"
value
=
"
3,7
"
><
br
>
zoom:
<
input type
=
text id
=
"
txtFactor
"
value
=
"
13
"
>
<
input type
=
button value
=
"
check
"
onclick
=
"
test()
"
>
<
br
>
<
input type
=
text id
=
"
txtMess
"
>
查看全文
相关阅读:
protobuf 协议 windows 下 C++ 环境搭建
protobuf 协议 windows 下 java 环境搭建
ProtocolBuffers (二) android与PC,C#与Java 利用protobuf 进行无障碍通讯【Socket】
C++ ofstream和ifstream详细用法
C# 关于out和ref的问题
java 解析office文件 大全
Ezhuang
IOS
Android Client and PHP Server
一个IM开源项目LiteTalk
原文地址:https://www.cnblogs.com/panyee/p/386914.html
最新文章
Cocos2d-X-3.0 之后的版本的环境搭建
C++语言出现的BUG
C语言的结构体和 C++结构体的区别
iOS视频流开发(2) — 视频播放
深入理解 KVCKVO 实现机制 — KVC
深入理解 KVCKVO 实现机制 — KVO
李洪强iOS开发之RunLoop的原理和核心机制
OpenCV---环境安装和初次使用
python---Celery分布式任务队列了解
python---tornado补充(异步非阻塞)
热门文章
python---websocket的使用
python---twisted的使用,使用其模拟Scrapy
python---Scrapy模块的使用(二)
python---Scrapy模块的使用(一)
python---aiohttp的使用
python---异步IO(asyncio)协程
SQL的datetime类型数据转换为字符串格式大全
Extjs Column布局常见问题及解决方法
使用axis2的wsdl2java把wsdl生成java文件
java.net.SocketTimeoutException: Read timed out 错误解决
Copyright © 2011-2022 走看看