欢迎访问 夜阑小雨 我的学习碎片档案,这里记录了我的学习内容和工作中经验,希望给您带去帮助。

Google Maps嵌入参数

phonegap开发 夜阑小雨 1465℃ 0评论

这是一个关于可以传递给maps.google.com(以及.co.uk/.be等)的一些参数的清单。如果你想通过Google Maps显示驾驶路线,而这些API并没有提供,你就可以使用它们。

一般性的内容


q=
这是最常用的参数。
查询 - 所有被传入这个参数的内容会被象maps.google.com中的查询输入框中所输入的内容一样被处理,特别是:

  • 要查找的精确地址,标记点或者在某个特殊点上显示的信息框。
    • 提示:在附近不能有类似或者著名的地点的查询值才是可靠的。例如,给出一个会议通知,告诉人们去128号门牌号码的地点,但是只能在街区信息中发现一个12-8的位置(比如6/2010,谁会知道它以后会被匹配到什么信息?)
  • 城镇名字,或者前面的部分邮政编码,会显示到标记或者信息框里。
  • 由纬度和经度信息指定的位置,用十进制形式,比如(52.123N,2.456W或52.123,-2.456),或者采用度/分/秒来表示(52 7 22.8N,2 27 21.6W或52 7 22.8,-2 27 21.6),或者度和分(52 7.38N,2 27.36W或52 7.38,-2 27.36)。
  • 在信息窗口和侧边栏中以粗体显示的文本内容,增加括号()。你可以在不希望断行的的时候使用%A0防止断行发生。你还可以在行尾增加足够多的%A0,并在后面跟一个空格(在URL中使用+号)来强制产生断行。例子如原文指出:URL: http://maps.google.com?q=New+York,+NY+(Mapki%A0is%A0a%A0very%A0good%A0Wiki%A0for%A0Google%A0Maps!%A0%A0%A0%A0%A0%A0%A0%A0+The%A0previous%A0line%A0is%A0now%A0sufficiently%A0long!)
  • to和from需要激活驾驶线路规划功能。
  • 关键字near和loc:会激活本地搜索功能。
  • 两个街之前可以用空格&空格形式,但是在URL里需要使用+%26%或%20%26%20,而不是+&+或+&+。
  • 需要指出的是+号,其实它与,号的作用相同。
  • 位置信息也可以由在@符号后的十进制形式来表达,如(@52.123,-2.456)。这个方式应该会自动给出一个较低的缩放比例。使用这种格式会影响到查询的其它参数。@符号,而不是near或者loc:可以形成单一的查询结果。而其它的方式可能返回数以千计的结果。
  • q=10+Downing+Str+is+not+here@51.50335,-0.227721
    可以在指定的地址放置一个自定义的提示标记,比如q=唐宁街10号不在这里@51.50335,-0.227721。 
    • 这个标签不能是国家的名字,或者没有显示出标记的时候。但是当给出座标的情况下,它可以是空白的。
  • 座标之外增加()标签可以为Google地图提供一些提示。
    1. http://maps.google.com/maps?q=24.197611,120.780512
      我们的位置正好在某被错误标识的知名地点附近。读者应该可以注意到正确的绿色箭头。
    2. http://maps.google.com/maps?q=Dan@24.197611,120.780512
      Dan标签可以扩展成为某机场的名字(Danville Regional Airport)
    3. http://maps.google.com/maps?q=24.197611,120.780512+(Dan)
      这种情况会安全一些。但是显示的是一个黄色的标记。
    4. http://maps.google.com/maps?q=loc:24.197611,120.780512这是一个精确的地点表示。
  • 要注意用%表述非ASCII字符,比如(和)还有+是安全的,但是空格必须以%20表示。注意它们可能被用户的浏览器解释错误。
  • sky:前缀用来查询由Sky产生的KML内容。这个参数是被Google Sky使用,并产生KML输出。
  • 包含GeoRSS数据的Google Earth .KML/.KMZ文件或者RSS输出的完整URL,可以被Google Earth使用,里面包含的信息可以被显示在地图上。

near=
可以使用位置信息的一部分,而不是象q=参数那样输入全部信息。

g=
这是一个给q参数提供额外上下文信息的地址或位置。Google Maps在这里自己用来保存上一次运行的搜索。注:如果这是第一次运行,它将包含你所开始的位置信息。所以它有潜在的信息泄露的风险,你需要检查你是否真的明白并且要分享这个参数所对应的信息。

Search Mode/查询模式


  • mrt=指出查询的类型(空白表示所有内容-缺省)
    • mrt=all值为all指出查询所有内容。
    • mrt=loc值为loc指出是进行位置信息查询,它需要q=参数。
    • mrt=yp值为yp指出是商业查询(即:黄页),它也需要q=信息,一般情况下是位置信息。
    • mrt=websearch值为websearh指出映射的web页面。这些网页通过GoogleBot能够指出地理位置信息。
    • mrt=realestate值为realstate为固定资产查询。
    • mrt=ds值为ds时为相关的地图。Google的GeoRSS源索引(可能是KML?)
  • start=start=参数会跳过前(start-1)个匹配结果。
  • num=num=参数显示,最多这个数量的匹配结果。合法的范围是0到20(但是0有点没有用处)。

Location/位置信息


  • ll= 显示地图时中心点的纬度、经度信息。要注意次序。而只接受十进制数值格式才可以。
    如果使用了这个参数但是没有使用查询,那么地图就以这个点为中心点显示,但是没有标记或信息窗口显示。
  • sll=
    商业查询执行时指定的点的纬度和经度。你可以使用它来执行一个偏离中心的商业搜索。Google使用它,所以在执行完一个商业查询后,中心移动后可以使用“链接到此页”来记录地图位置。使用<math>map.getBounds().getSouthWest().toUrlValue()</math>将返回与maps.google.com相同的结果。
  • spn=spn=大致的经纬区域。如果没有指缩放参数z=,那么将调整缩放水平到一个合理的数值。
  • sspn=
    屏幕区域,计算方法:
    <math>new GLatLng(map.getBounds().getNorthEast().lat() – map.getBounds().getSouthWest().lat(), map.getBounds().getNorthEast().lng() – map.getBounds().getSouthWest().lng()).toUrlValue()</math>
  • latlng=这是一个奇怪的参数。它有3个由,号分隔的数字。前两个数字(大概相当于纬度和经度的100000倍)被忽略。第三个数字似乎是Google内部用来处理特殊业务的企业ID。比如latlng=0,0,14944637421527611642代表Blackpool社区教堂。指定此参数会执行一个针对该业务面页的Google搜索,并显示一个小地图。其它参数,特别是q=参数,必须是有效的内容(但不一定涉到目标业务)。
  • cid= Similar to latitude and longitude, but generating a different map size.
    这个值似应该是地点的编号。原文的表述与latlang重复。
  • geocode=
    geocode值似乎是在线路规划时各关键点的编码。每个geocode之间使用%3B来分隔。
  • radius=在指定半径内采用本地化信息。需要sll参数指定信息或者类似中心点位置才能使用。单位会采用英里,但是在公制国家可能会采用公里。这个参数有助预防Google结果远离了结果城市,并让它被限制在指定区域。

Map Display/地图显示


  • t=地图类型。m=>常规地图,k=>卫星地图,h=>混合地图,p=>地域地图,e=>GoogleEarth
  • z=缩放级别,取值范围1~20。1比例尺最大,20比例尺最小。
  • layer=激活图层。目前t表示交通情况。
  • lci=激活可以层叠的图层。用,号分隔。
    • com.panoramio.all 来自Panoromio的图片
    • com.youtube.all来自YouTube的视频
    • org.wikipedia.en维基百科(英文)
    • com.google.ugc.c752d13e87c4fbd7来自Webcams.travel的网络摄像头。
    • transit公共交通
    • bike自行车线路
  • view=这个参数在测试的时候没有看出分别。

Directions/路径规划


  • saddr= 出发点地址。
  • daddr=目标地址。
    “+to:” 可以使用+to:子句增加多地点线路规划时的目标地址信息,比如daddr=大石洞村+to:马栏广场+to:棠梨沟
  • mra ?? 此参数涵义未知,可能的取值:dm/dpe/cc/ls…
  • mrcr ??此参数涵义未知,可能的取值:0
  • mrsp解析座标到街名。
    • mrsp=0打开从座标解析街名
    • mrsp=1关闭从座标解析街名
  • mrad= 附加目标地址。如果你的行程有三个地点,你可以用saddr=,daddr=和mrad=表示,而不采用+to:子句。
  • dirflg 路线类型。
    • dirflg=h避免高速公路。
    • dirflg=t避免收费路段。
    • dirflg=r采用公共交通。仅在一些区域可用。还可以提出附加的时间信息。
    • dirflg=w步行方式。仍在测试状态。
    • dirflg=b骑行方式。仅在某些区域可用,仍在测试状态。
  • via=用,号分隔的经由地址。
  • doflg=距离单位。缺省的是国家的法定标准。
    • doflg=ks ??这个真不知道。
    • doflg=ptk输出距离单位显示为公里。
    • doflg=ptm输出距离单位显示为英里。
  • ttype= 时间类型。在dirflg=r的状况下采用公共交通工具的时候date和time参数的解析类型。 
    • ttype=now现在就出发,这个会忽略date和time参数。
    • ttype=dep 出发时间。
    • ttype=arr 到达时间。
  • date= 出发/到达日期,格式mm/dd/[yy]yy。由ttype决定是哪个日期。
  • time= 出发/到达时间,格式hh:mm am|pm。由ttype决定是哪个时间。
  • sort= 公共交通线路的排序 
    • sort=def缺省的排序方式。最快的行程优先。
    • sort=num最少的换乘优先。
    • sort=walk最少的步行优先。
  • start=与搜索模式很象,选择第n个结果。

Street View/街景


  • cbll= Latitude,longitude for Street View.街景的经纬度信息。
  • cbp= Street View window that accepts 5 parameters街景窗口可以接受5个参数:
    1. 街景/地图安排,11=上半部街景,下半部地图,12=大部分是街景显示,角部为可以调整角度的地图
    2. 移轴角度,范围是-90到90度。
    3. 缩放范围,0~2
    4. 斜度(采用度数表示),-90~90,缺省值是5
  • panoid=这里的ID是附近的全景对象的ID。全景对象采用可以点击的小箭头,你可以移动到下一个对象。

Output Control/输出控制


  • hl=主机语言。仅支持一部分语言,如hl=fr表示法语
  • om=这个参数指定下方缩略图是否显示。如果指定一个1以外的值,缩略图会关闭。(经过测试1,2会显示)。如果参数会被省略或者指定了值1,则显示。
  • ie=指定输入的字符编码,比如ie=UTF8。
  • oe=指定输出的字符编码,比如oe=UTF8。
  • output=指定输出格式,空白(缺省值)是标准的网页格式。 
    • output=html在整合到Google地图前使用旧风格的Google本地页面格式,显示小地图和大的边栏风格。
    • output=js输出Google地图使用的JavaScript对象和函数调用,包括驾驶线路的多边形编码和HTML格式的场景信息。
    • output=kml输出包含当前地图信息的KML文件。
    • output=mobile针对移动设备的格式输出。在地图中央位置显示一个简单的红色图钉。所有的移动基于链接而不是鼠标的移动。
    • output=nl输出Google Earth和Google Maps可以获取NetworkLink信息的KML文件内容。
    • output=embed输出可以嵌入到第三方网站的HTML内容。这个参数仅与加密的s=参数一块工作,据推测可能是阻止显示不可预知的内容。
    • output=dragdir返回JSON对象。此对象包括反向的地理位置编码和针对给定saddr(线路开始点)和daddr(线路结束点)线路的多边形编码。
    • output=georss 针对当前地图(可能仅适用于MyMaps)的GeoRSS输出。
  • f=控制查询表单的显示风格。 
    • f=d显示成路径规划表单(有两个输入框,始点、终点)
    • f=l此参数似乎没有作用了。
    • f=q缺省的显示方式,单一输入框。
  • pw=激活打印模式,初始化打印。与原文不同,pw=1/2两个值均可以。测试环境是Ubuntu 11.04+Google Chrome。
  • v= 如果指定了output=kml,则此参数指定kml的版本。缺省是2.0,如果想指定是2.2,则v=2.2。

提示信息窗口


信息显示窗口就是漫画书中的对话气球框。

我的地图


  • msa=参数目前应该没有意义了。

杂项


  • vp= 这个参数会使Google地图切换到版权服务模式。它以JavaScript格式返回所有者的版权信息而不是返回可以画出地图的html内容。vp参数指出视图位置(即地图的中心位置)。版权服务仅在提供了spn=z=参数的情况下才可以工作。它们分别代表区域和缩放比例。一还有一些可选的参数,比如t=,它用来指出地图的类型,key=用来指出站点用来执行查询时所用到的API key。例如:http://maps.google.com/maps?spn=0.030372,0.068665&z=6&t=h&vp=53.859462,-3.038235
  • ftr=0 这个参数是用来关掉所有Google地图实验室特性的。当你遇到这些特性出现问题或者无法载入地图,这个特性可能提供有用的途径。使用这个参数之后,你需重新激活那些实验室特性。比如访问:http://maps.google.com/maps?ftr=0。这个链接会提示你关掉了哪些特性,并且会提示是否保存这种改变。
  • source= 未知。一个值是s_d,另一个是s_q。
  • noexp= 未知。其中一个值是0。
  • noal= 未知。其中一个可取值是0。
  • oi=nojs 在它合并到Google地图之前使用旧风格的Google本地页面格式,使用小地图和大的边条,就象前面指定output=html选项那样。这个选项需要停止JavaScript的工作。

    参考资料:

    1. Google Map Parameters

转载请注明:夜阑小雨 » Google Maps嵌入参数

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 0mcsi0
    9d4r6h2012-11-22 10:58 回复