61阅读

google地图经纬度-【玩转Google地图】精确查找定位(经纬度,双向)

发布时间:2017-10-27 所属栏目:笔试经验

一 : 【玩转Google地图】精确查找定位(经纬度,双向)

一、定位(通过经纬度)

有三种办法可以定位你想查找的区域:

1.在上方搜索录入框直接输入地名,暂时只支持用英文输入,如输入guangzhou,就可以查找广州的卫星图片;

2.将分辨率滚动条拉到最下方,然后在全球地图中逐步放大查找;

3.直接输入经纬度,可以先使用google一般查询功能查询目的地的经纬度,县级以上地名一般很容易查到相关数据。然后将经纬度代入 URL:http://maps.google.com/maps?ll=纬度,经度&spn=0.1,0.1&t=k&hl=en,注意,经纬度都使用十进制。

不同区域最大的分辨率会有所不同。地图显示后,可用鼠标拖动地图以显示不同区域。

利用这个卫星地图,还可以反查经纬度。将目标位置拉至最大分辨率,并将其拉至中心位置,在右侧“Link to this page”处点击右键,选中复制快捷方式,在文本编辑工具,如记事本中粘贴,可以看到一个形如“http: //maps.google.com/maps?ll=22.283084,114.174417&spn=0.004796,0.007918& t=k&hl=en”这样的地址,其中参数ll,就是纬度与经度。虽说由此得出的经纬度可能有所误差,但误差也不会太大。经度一度约是 85.276公里,纬度一度是110.94公里,可以按需要对获取的经纬度小数点后保留适当的位数。如果要与朋友分享某一特定目标特定分辩率的图片,直接将上述地址发送给朋友即可。

用google查询的几个结果:

天安门广场: http://maps.google.com/maps?ll=39.905841,116.391596&spn=0.004710,0.007832&t=k&hl=en

香港会展中心: http://maps.google.com/maps?ll=22.283084,114.174417&spn=0.004796,0.007918&t=k&hl=en

广州城区: http://maps.google.com/maps?ll=23.131285,113.328695&spn=0.037680,0.062656&t=k&hl=en ,右下是跑马场,左上是体育中心。

这个东西,对我们爬山也是有点用的,很多地方我们拿不到好的等高线图,也不一定有GPS参数,用这个GOOGLE卫星图片,结合现有的地图,我们就可以方便定位那座山是我们的目标了。

二、反查经纬度

谷歌地图(交通地图)上并没有显示某个地址的经纬度,实际上,我们已经想到了一个办法,可以找到在谷歌地图上任意地点的经度和纬度。 首先打开Google地图,在上面寻找一个地址,然后上下左右移动地图,让这个地址正好处于地图的正中心位置,当您想寻找坐标位置已经处于地图的中心位置的时候,拷贝并粘贴以下代码到你的浏览器地址栏:javascript:void(prompt('',gApplication.getMap().getCenter())); 这时,你将得到一个弹出式的坐标,这个坐标就是你需要找的经度和纬度。

(#)

二 : 获取google地图经纬度

方法一:JS方法

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>

<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css"/>

<script type="text/javascript"src="http://maps.google.com/maps/api/js?sensor=false"></script>

<script type="text/javascript">
var geocoder;
var map;
function initialize() {
geocoder =new google.maps.Geocoder();
var latlng =new google.maps.LatLng(34.264987, 108.94426900000007);
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId:google.maps.MapTypeId.ROADMAP
}
map =new google.maps.Map(document.getElementById("map_canvas"), myOptions);
//初始化标注添加以下代码
marker =new google.maps.Marker({
title: '',
map: map,
position:latlng
});
var infowindow =new google.maps.InfoWindow({
content: '<strong>love</strong>'
});
infowindow.open(map, marker);
}

functioncodeAddress() {
varaddress = document.getElementById("address").value;
geocoder.geocode({ 'address': address }, function(results, status) {
if(status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
this.marker =newgoogle.maps.Marker({
title: address,
map: map,
position:results[0].geometry.location
});
var infowindow =newgoogle.maps.InfoWindow({
content: '<strong>'+ address +'</strong><br/>'+'纬度: '+ results[0].geometry.location.lat() +'<br/>经度: '+ results[0].geometry.location.lng()
});
infowindow.open(map, marker);
} else {
alert("Geocode was not successful for the following reason:"+ status);
}
alert('纬度: '+ results[0].geometry.location.lat() +'<br/>经度: '+ results[0].geometry.location.lng())
});
}

</script>
</head>
<body onload="initialize()">
<div>
<input id="address" type="text" value="西安市">
<input type="button" value="地址解析" onclick="codeAddress()">
</div>
<div id="map_canvas" style="height:90%;top:30px"></div>
</body>
</html>


方法二:ASP.NET方法

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;

//使用方法,g.Latitude=经度,g.Longtitude=纬度
//mapClass.Geo g = new mapClass.Geo("西安");
//Response.Write(g.Latitude + "<br>" +g.Longtitude);
namespace mapClass
{
publicclassGeo
{
///
/// latitude
///
privatestring _latitude = "";
///
/// longtitude
///
privatestring _longtitude = "";
///
/// default constructor
///
publicGeo()
{
}

///
/// construct geo given latitude and longtitude
///
publicGeo(string latitude, stringlongtitude)
{
_latitude = latitude;
_longtitude =longtitude;
}

///
/// construct geo given name of a place
///
publicGeo(string location)
{
stringoutput = "csv";
stringurl = string.Format("http://maps.google.com/maps/geo?q={0}&output={1}",location, output);
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
using (HttpWebResponseresponse = (HttpWebResponse)request.GetResponse())
{
using (StreamReadersr = newStreamReader(response.GetResponseStream()))
{
string[] tmpArray = sr.ReadToEnd().Split(',');
_latitude =tmpArray[2];
_longtitude= tmpArray[3];
}
}
}
catch(System.Net.Sockets.SocketException ex)
{
Console.WriteLine("网络中断");
}
catch(Exception ex)
{
//throw ex;
Console.WriteLine("异常类型:{0}", ex.GetType());
Console.WriteLine("异常信息:{0}", ex.Message);
Console.WriteLine("异常来源:{0}", ex.Source);
Console.WriteLine("异常堆栈:{0}", ex.StackTrace);
Console.WriteLine("内部异常:{0}", ex.InnerException);
}
}
///
/// get latitude
///
publicstring Latitude
{
get{ return _latitude; }
set{ _latitude = value; }
}

///
/// get longtitude
///
publicstring Longtitude
{
get{ return _longtitude; }
set{ _longtitude = value; }
}
}
}



三 : Google 地球如何输入经纬度搜索?

如何在GoogleEarth中输入已知地点的经纬度坐标进行搜索?

视图--侧栏(保证勾选)

直接输入经纬度

输入格式例如:广西钦州市贵台洞利八寨沟

纬度:22.061175经度:108.160259

经纬度:108°16'02.59"E,22°06'11.75"N

输入:220611.75N,1081602.59E

然后---搜索

又如:广西钦州市大寺镇安发西大街22°08'10.16"北108°26'36.63"东

输入:220810.16N,1082636.63E---搜索

或输入:108 26 36.63E,22 8 10.16N ——搜索

如:纬度:108°26.617'东 经度:22°8.167'北

108 26.617E,22 8.167N

经纬度转换工具

附:http://app.baidu.com/app/enter?appid=235200

或:http://app.baidu.com/app/enter?appid=398938

经纬度转换工具

简介:《经纬度转换工具-说明》 1.可输入任意单个经度或纬度值,然后转换。(全部同时支持两种单位: °' " 和 度分秒) 如: 35.2356 或:-35.2356° 或: 116度2.2626分 或:35°2'52.37" 或: 35°2'52.37"南 等各种正负:度、度分、度分秒格式。 2.可输入经、纬度值对,中间须用'空格'或'TAB制表符'隔开,然后同时转换。(全部同时支持两种单位: °' " 和 度分秒) 如: 35.2356 117.5678 或: -34.1215° 23.9896° 或: 35°2.8728' 117°5.5678' 或: 33°23'39.04"南 122°18'19.58"东 或: 35度2分52.37秒 117度5分27.06秒 等各种正负:度、度分、度分秒格式。 3.本软件虽然兼容google格式的经纬度值(即允许度和分的值前有空格),但非常不提倡输入值中含有空格,否则有可能会引起计算错误!

ZHU2816

一品秀编辑2012-04-11

四 : OpenStreetMap/Google/百度/Bing瓦片地图服务(TMS)

开源与成熟商业的瓦片地图服务(TMS2WMTS),都有如下共同的特性,基本成为了标准:

(1) 坐标系:WGS84

(2) 投影:墨卡托投影(Marcator,正轴等角圆柱投影)



--------------------------------------------



注:  均为弧度。

(3) 当经度范围在[-180,180],投影为正方形时,纬度范围:[-85.05113, 85.05113]

(4) 图片大小:256*256

(5) 图片格式:jpg[有损压缩率高、不透明] png[无损、透明]

OpenStreetMap 格式:png



(1,0,0)(1,1,0)

(1,0,1)(1,1,1)

瓦片地址格式:http://a.tile.openstreetmap.org/9/420/193.png

Cycle Map:http://c.tile.opencyclemap.org/cycle/9/420/193.png

Transport Map:http://b.tile2.opencyclemap.org/transport/9/420/193.png

MapQuest Map:http://otile3.mqcdn.com/tiles/1.0.0/osm/9/420/193.png

z: [0-18] x,y: [0-  ]

在第z级别,x,y方向的瓦片个数均为:

图片(z,x,y)像素(m,n)[注:像素坐标以左上角为原点,x轴向右,y轴向下]的经纬度[单位:度]分别为:





----------------------------------------------------------------------------

已知经纬度  (单位:度),求瓦片编号x,y:



Google Map卫星地图/地形图:jpg 地图:png



(0,0,1)(1,0,1)

(0,1,1)(1,1,1)

瓦片地址格式:http://mt2.google.cn/vt/lyrs=m@167000000&hl=zh-CN&gl=cn&x=420&y=193&z=9

z: [0-18] x,y: [0-  ]

地图图层说明:

hskeleton map lighthttp://mt2.google.cn/vt/lyrs=h&hl=zh-CN&gl=cn&x=420&y=193&z=9

m全地图http://mt2.google.cn/vt/lyrs=m&hl=zh-CN&gl=cn&x=420&y=193&z=9

pterrain+maphttp://mt2.google.cn/vt/lyrs=p&hl=zh-CN&gl=cn&x=420&y=193&z=9

rskeleton map darkhttp://mt2.google.cn/vt/lyrs=r&hl=zh-CN&gl=cn&x=420&y=193&z=9

yhybrid satellite maphttp://mt1.google.cn/vt/lyrs=y&hl=zh-CN&gl=cn&x=420&y=193&z=9

t地形图http://mt0.google.cn/vt/lyrs=t&hl=zh-CN&gl=cn&x=420&y=193&z=9

s卫星地图http://mt3.google.cn/vt/lyrs=s&hl=zh-CN&gl=cn&x=420&y=193&z=9

也可以进行组合,例如:s,r或者t,hhttp://mt3.google.cn/vt/lyrs=t,h&hl=zh-CN&gl=cn&x=420&y=193&z=9

图片(x,y,z)像素(m,n)[注:像素坐标以左上角为原点,x轴向右,y轴向下]的经纬度[单位:度]与openmapstreet方法一致。

Bing Map格式:png



0 1

2 3

瓦片地址格式:http://r1.tiles.ditu.live.com/tiles/r132122232001311321.png?g=100&mkt=zh-cn

级数:[1-18]

计算图片  [  为图片的code码,  ={0,1,2,3}]的像素(m,n)[注:像素坐标以左上角为原点,x轴向右,y轴向下]的经纬度

只需先计算出  与x,y,z的关系,然后再套用openstreetmap的公式,就可以得到。

z =  的位数





Baidu Map 格式:jpg、png



(0,0,3) (1,0,3)

(0,M1,3)(1,M1,3)

瓦片地址格式:http://shangetu1.map.bdimg.com/it/u=x=99092;y=19997;z=19;v=017;type=web&fm=44&udt=20130712

百度地图赤道上的分辨率为:

z: [3-19] x,y:  注:其中R为地球半径(R=6378137)

在第z级别,x,y方向的瓦片个数均为:

地图图层说明:

type=web地图http://shangetu0.map.bdimg.com/it/u=x=101237;y=37702;z=19;v=017;type=web&fm=44&udt=20130712

type=sate卫星图http://shangetu1.map.bdimg.com/it/u=x=101237;y=37702;z=19;v=009;type=sate&fm=46&udt=20130506

路网:http://online0.map.bdimg.com/tile/?qt=tile&x=101237&y=37702&z=19&styles=sl&v=017&udt=20130712

实时交通信息:http://its.map.baidu.com:8002/traffic/TrafficTileService?level=19&x=99052&y=20189&time=1373790856265&label=web2D&v=017

三维:http://d3.map.baidu.com/resource/mappic/bj/2/3/lv2/1251,1143.jpg?v=001 【z: [lv6-lv1]】



(lv6,76,70)(lv6,77,70)

(lv6,76,71)(lv6,77,71)

图片(x,y,z)像素(m,n)[注:像素坐标以左上角为原点,x轴向右,y轴向下]的经纬度[单位:度]分别为:





-----------------------------------------------------------------------------

已知经纬度  (单位:度),求瓦片编号x,y:



瓦片下载工具

1.太乐地图:ArcTilerDesktopV3.5.rar,http://www.61k.com

2.全能电子地图下载器:MapTileDownloader1.8.3.exe,http://code.google.com/p/maptiledownloader/

3.TileDownloader:

http://sourceforge.net/projects/tiledownloader/files/1.3/release1.3-bin.zip/download

坐标转换工具

http://rovertang.com/labs/tileindex/

http://rovertang.com/archives/545

http://rovertang.com/labs/GMAPIv3_Offline/

公式&代码实现:http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames

五 : Google笔经

发信人: offerrain (offer的大雨), 信区: job
标 题: google笔经
发信站: 饮水思源 (xx年10月11日03:06:04 星期三), 站内信件

开章明义,我是个废人,上来积攒rp了。
在宣讲会的时候,听旁边的师姐说上海只招两个职位每个职位只招一个人。
现在后悔只选了北京和上海的swe了。
不过反正……也不指望了。。。


笔试题目:9道单选+3道问答
时间:100分钟
我做的是b卷。

单选题:
1,求两个二进制数的异或值,基本上学过一点计算机的东西的人都能对的题目。。

2,不记得了。。也是不需要思考的题目。。

3,大概是如下的函数:
int somefunc(int x){
if (x == 0)
return 0;
else
return x + somefunc(x - 1);
}
问这个计算的是什么。。。

4,不记得了。。不需要思考吧。。

5,不记得了。。不需要思考吧。。

6,参见2,4,5。。

7,似乎需要思考一下。。

8,问链表结构和数组相比的优势不包括哪项,
包括:
插入的时间
删除的时间
存储空间
剩下两个不记得了。。

9,如下函数:
t(x) = 1 (x <= 1)
t(n) = 25 t(n/5) + n^2
问t(n)随n的增长。
选项大概是这样的:
o(n^2),o(n^2logn)等等的。。



问答:
1,写两个n*n的矩阵的乘法,给出了c的格式,你可以选择你喜欢的语言去写。。
int* multi(int* a1, int* a2, int n){
}

2,寻找一个单向链表的中项,如果存在两个则返回前一个。给出了c的格式,同样你可
以选择。。。。
struct {
node* next;
int value;
} node;
node* somefunc(node* head){
}

3,给一个长度为n的整数数组,只允许用乘法不允许用除法,计算任意(n-1)个数的组合
乘积中最大的一组。。。写出算法的时空复杂度。
ps:怀疑这道题目出错啦。。虽然我也做错了。。。。。。





一些补充:
1,问答的第一题是google上学期 intern的大题原题;
2,google很喜欢考链表,无论intern的面试以及两次的笔试都有这样的题目;
3,google一般大题第三道都是写算法的时空复杂度;
4,选择题基本上偏简单,但是要做得准确率高似乎并不那么容易;
5,根据传言,小道消息,人云亦云以及以讹传讹,google的高速审卷政策来源于审卷时
以选择题为主,如果你全对啦,那么恭喜你pass啦;如果你错了好几道,那么下次努力
吧,如果还有下次。。。大题基本是做参考的。。。
6,选择题很多记不清了,因为一遍做下来的,回去随便扫了两眼。。。加上过了这几个
小时,记不得了。希望大家补充修正以及修改。。。

7,google会在11号开始3天内发面试通知,据小道消息等等,有四轮面试。bless大家~~
本文标题:google地图经纬度-【玩转Google地图】精确查找定位(经纬度,双向)
本文地址: http://www.61k.com/1081482.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1