GOOGLEMAPSAPIV3 地图类型
Google map api 基本功能使用及服务本地化的解决方案
google地图数据
像素坐标
pixelcoordinate
Zoomlevel=0 256*256
Zoomlevel=1 512*512
pixelCoordinate = worldCoordinate * 2zoomLevel
Zoomlevel=2 1024*1024
google地图数据
图块坐标
pixelcoordinate
0,0 Zoomlevel=0 256*256 1,0 0,0 1,0 2,0 3,0
0,1
1,1
0,1
1,1
2,1
3,1
Zoomlevel=1 512*512
0,2
1,2
2,2
3,2
pixelCoordinate = worldCoordinate * 2zoomLevel tileCoordinate= pixelCoordinate/256 取整
服务本地化
加载本地的地图数据
/vt?src=apiv3&x= 2&y=2&z=2
x=812,y=420,z=10
function(coord, zoom, ownerDocument) { var div = ownerDocument.createElement ('div'); div.innerHTML ='<img src="./tiles/' + zoom + '/' + coord.x + '/' + coord.y + '.png"/>';
0,3
1,3
谷歌MAP_V3 api说明文档详解
∙Google Maps JavaScript API V3 ∙Map:o MapOptionso MapTypeIdo MapTypeControlOptionso MapTypeControlStyleo NavigationControlOptionso NavigationControlStyleo ScaleControlOptionso ScaleControlStyleo ControlPositiono MapPaneso MapCanvasProjection∙Marker:o MarkerOptionso MarkerImageo MarkerShape∙Polyline:o PolylineOptions∙Polygon:o PolygonOptions∙InfoWindow:o InfoWindowOptions∙Geocoder:o GeocoderRequesto GeocoderStatuso GeocoderResulto GeocoderAddressComponento GeocoderGeometryo GeocoderLocationType∙DirectionsRenderer:o DirectionsRendererOptions∙DirectionsService:o DirectionsRequesto DirectionsTravelModeo DirectionsUnitSystemo DirectionsWaypointo DirectionsStatuso DirectionsResulto DirectionsRouteo DirectionsLego DirectionsStepo DirectionsDistanceo DirectionsDuration∙ElevationService:o LocationElevationRequesto PathElevationRequesto ElevationResulto ElevationStatus∙叠加层和地图类型:o OverlayViewo MapTypeo MapTypeRegistryo Projectiono ImageMapTypeo ImageMapTypeOptionso StyledMapTypeo StyledMapTypeOptionso MapTypeStyleo MapTypeStyleFeatureTypeo MapTypeStyleElementTypeo MapTypeStylero Rectangleo RectangleOptionso Circleo CircleOptionso GroundOverlayo GroundOverlayOptions∙图层:o BicyclingLayero FusionTablesLayero FusionTablesLayerOptionso FusionTablesMouseEvento FusionTablesCello KmlLayero KmlLayerOptionso KmlLayerMetadatao KmlMouseEvento KmlFeatureDatao KmlAuthoro TrafficLayer∙街景视图:o StreetViewPanoramao StreetViewPanoramaOptionso StreetViewAddressControlOptionso StreetViewLinko StreetViewPovo StreetViewPanoramaDatao StreetViewLocationo StreetViewTileDatao StreetViewServiceo StreetViewStatus∙事件:o MapsEventListenero事件o MouseEvent∙Base:o LatLngo LatLngBoundso Pointo Size∙MVC:o MVCObjecto MVCArray此类扩展了MVCObject。
googlemapapi使用详解(九)googlemap坐标系统总结(下)
Google Map API使用详解(九)——Google Map坐标系统总结(下)4、DOM相对坐标系统这里的DOM是指页面上装载地图的容器,一般是div元素。
把这个坐标系统看作是基于DOM元素而不是基于地图的坐标系统或许更易于理解,这个系统里的坐标指定的是某个点在这个DOM容器里的位置,以这个容器的左上角为原点,分别向下(Y轴)和向右(X轴)延伸。
所谓相对坐标,是指这个坐标系统相对地图是固定的,原点不会随地图的拖拽而变化。
在谷歌地图API中,使用GMap2.fromLatLngToContainerPixel(latlng)可以取得地图上某个点在DOM容器中的位置,相反,你可以通过GMap2.fromContainerPixelToLatLng(pixel)方法来获取DOM容器中某个位置在当前地图上的坐标。
这个坐标系统在你需要在DOM容器上添加一些自定义控件并与地图交互的时候可能会有用。
5、DOM绝对坐标系统这个坐标系统是相对上一个系统来说的,从字面可以理解为这是定位在地图上而不是相对地图的坐标系统,如果你在加载地图后只是缩放而没有拖拽地图,那么你会发现这个坐标系统和DOM相对坐标系统是重合的。
但是,一旦你拖拽地图,就会发现他们的差别了。
结论就是,这个坐标系统的原点是与DOM容器的左上角重合的地图上的点,在拖拽地图的时候原点会随着地图变化,原点左边和上面的点使用负值表示。
这个坐标系统中的坐标和地图上的地理坐标可以用GMap2.fromLatLngToDivPixel(latlng)、GMap2.fromDivPixelToLatLng(pixel)这两个方法实现相互转换,在你自定义地图上的叠加层的时候,这两个方法就可以派上用场了。
最后提一下GSize,在说到地理坐标系统的时候我提到GLatLng,这是在谷歌地图API里对地理坐标的规范表达,而在表示非地理坐标的时候,就需要用GSize这个类了,这是对以像素为单位的坐标的规范表达,和GLatLng不同的是,它的构造函数中第一个参数表示X轴的坐标,第二个参数表示Y轴的坐标。
谷歌卫星地图、电子地图和地形图有什么区别
谷歌卫星地图、电子地图和地形图有什么区别?谷歌的在线地图包括卫星地图、电子地图、和地表地形图三种,打开谷歌在线地图的网址后,可以通过右上角的的图片来切换三种地图。
一、如何切换在线地图当前显示电子地图时,移动鼠标到地图视图的右上角小图片上面会显示下载拉菜单,在菜单中选择“地形”可以切换到在线地表地形图,取消选择可以切换到电子地图,如下图所示。
当前显示在线电子地图或在线地表地形图时,点击地图视图右上角的小图片可以切换到在线卫星地图,如下图所示。
当前显示在线卫星地图时,点击地图视图右上角的小图片可以切换到电子地图(如果“地形”选项没有被选择)或地表地形图(如果“地形”选项已选择),如下图所示。
二、谷歌卫星地图的特点卫星地图,简称卫图,确切的说法是“卫星遥感图像,也叫卫星影像”。
所谓遥感,即遥远地感知。
卫星遥感即通过卫星在太空中探测地球地表物体对电磁波的反射和其发射的电磁波,从而提取这些物体的信息,完成远距离识别物体。
将这些电波信息转换、识别得到的图像,即为卫图。
打开谷歌在线地图网站可以查看卫星地图,一般城区可以到21级,但19级效果最好,19级以上的数据清晰度并没有提高,看起来像是基于19级放大的,谷歌在线卫星地图如下图所示。
该类地图可以用水经注谷歌卫星地图下载器来进行下载,软件界面如下图所示。
三、谷歌电子地图的特点电子地图就是只显示道路路网、景点、银行等热点信息和地名等相关信息的地图,是通过对传统的矢量地图进行配色美化后再进行切片处理的地图切片(俗称“瓦片”),谷歌的在线电子地图如下图所示。
该类地图可以用水经注谷歌电子地图下载器来进行下载,软件界面如下图所示。
四、谷歌地表地形图的特点地表地形图就是显示地表地形起伏的地图,是通过对传统的DEM数据进行配色渲染后的切片图片,能反映山体的真实起伏态势。
谷歌的地表地形图数据的级别最大只到16级,其中14到16级会显示等高线,在线地表地形图如下图所示。
该类地图可以用水经注谷歌地表地形图下载器来进行下载,软件界面如下图所示。
如何采用离线的 google map api 加载离线谷歌地图的方法
如何采用离线的 Google Map API 加载离线谷歌地图的方法注:文档中所提到的“GoogleMapAPIV3.rar”附件,请到水经注软件论坛下载。
一、下载示例数据这里以《水经注万能地图下载器》为你说明如何下载谷歌卫星地图。
安装万能地图下载器以后,软件启动时会显示选择在线地图的对话框,请选择“卫星.谷歌”即会显示在线的谷歌卫星地图窗口,如下图所示。
由于只是为了作演示说明如何用 Google Map 离线 API 加载谷歌地图的方法,这里我们只需要框选中国范围,即点击工具栏上的“框选下载区域”,然后在视图中绘制选择范围,如下图所示。
下载即可,如下图所示。
点击“确定”按钮,开始下载卫星地图数据。
下载完成后导出瓦片数据,选择导出类型为“瓦片:Google Map”,保存路为“D:\Test”目录,如下图所示。
在对话框中点击“输出”按钮导出Google Map瓦片,如下图所示。
二、地图引擎部署第一步:将附件中的“GoogleMapAPIV3.rar”下载后解压到“D:\Test”目录。
第二步:将“D:\Test”目录中的“中国_GoogleMapTiles”重命名为“data”,如下图所示。
第三步:在浏览器中打开“D:\Test\GoogleMapAPIV3\Example_GoogleMapAPI.html”,如果操作无误,将会显示离线的卫星地图,如下图所示。
以上,即是如何用 Google Map 离线 API加载谷歌地图的方法,你可以根据实际需求对“D:\Test\GoogleMapAPIV3\Example_GoogleMapAPI.html”文件进行进一步开发。
注:文档中所提到的“GoogleMapAPIV3.rar”附件,请到水经注软件论坛下载。
下面是赠送的中秋节演讲辞,不需要的朋友可以下载后编辑删除!!!谢谢中秋佳节演讲词推荐中秋,怀一颗感恩之心》老师们,同学们:秋浓了,月圆了,又一个中秋要到了!本周日,农历的八月十五,我国的传统节日——中秋节。
mapv-three 用法 -回复
mapv-three 用法-回复mapvthree是一款功能强大的地图可视化工具,它可以帮助用户将地理数据转化为可视化的形式,以更直观、清晰地展现出来。
本文将深入探讨mapvthree的用法并详细介绍其一步一步的应用过程。
首先,我们需要了解mapvthree是什么以及它的基本特点。
mapvthree 是基于Three.js开发的地理信息可视化插件,它支持在web端直接渲染大规模地理数据。
它的主要特点包括高性能、可扩展性、易用性和丰富的可视化效果。
使用mapvthree,我们可以将不同的地理数据进行可视化展示,例如点状数据、线状数据和面状数据。
接下来,我们将详细介绍如何使用mapvthree 进行地理数据的可视化。
第一步是准备地理数据。
在开始之前,我们需要获取并准备好要展示的地理数据。
这些数据可以是经纬度信息、行政区划信息或其他与地理位置相关的数据。
我们可以从公开的数据源、自有的数据库或其他数据供应商那里获取这些数据,确保数据的准确性和完整性。
第二步是创建地图容器。
在继续之前,我们需要创建一个地图容器,它将承载我们的地理数据可视化。
我们可以选择在web页面中创建一个div 元素,并为其设置一个唯一的ID,作为地图容器的标识。
第三步是初始化地图。
使用mapvthree,我们需要在web页面中引入相关的JavaScript库和CSS样式。
通过创建一个地图实例,并将其绑定到地图容器上,我们可以初始化地图以准备数据的可视化展示。
第四步是加载地理数据。
在完成地图的初始化之后,我们需要将准备好的地理数据加载到地图中。
根据数据的类型和形式,我们可以选择使用相应的接口和方法来加载数据。
例如,如果我们要展示点状数据,我们可以使用`addPoint`方法将点的经纬度信息添加到地图上。
如果我们要展示线状数据,我们可以使用`addLine`方法将线的坐标信息添加到地图上。
第五步是配置可视化效果。
mapvthree提供了丰富的可视化效果配置选项,通过调整这些选项,我们可以改变地理数据的展示效果。
GoogleMapsAPI介绍
9
加上控件
map.addControl(new GMapTypeControl()); map.addControl(new GLargeMapControl()); map.addControl(new GOverviewMapControl());
10
显示标记
var latlng = new GLatLng(39.917, 116.397); var marker = new GMarker(latlng); GEvent.addListener(marker,"click", function() { var myHtml = "<b> 这里是北京 </b><br/>"; marker.openInfoWindowHtml(myHtml); }); map.addOverlay(marker);
16
企业版
更多 G oogl M aps API的信息 e
中文文档 htp:/ t /code. googl com /nt/ C N / s/ aps/ e. i lzh- api m 英文文档 htp:/ t /code. googl com / s/ aps/ e. api m 讨论组 htp:/ oups. t /gr googl com / oup/ oogl M aps- e. gr G eAPI C hi na 中文 G oogl M aps API示例 e htp:/ t /code. googl com /nt/ e. i lzhC N / s/ aps/ api m docum ent i exam pl aton/ es
Google Maps
用户 Mapplets 服务器
谷歌地图与开放式API和WEB墨卡托投影
从(E ,N)计算椭球面坐标( ,λ)的反投影公式为:
D ( N FN ) / R ( FN N ) / R
/ 2 2 atan(e D )
,e 是自然对数基底 2.7182818…
[( E FE ) / R] O
示例:
投影坐标参照系:WGS 84 / Pseudo-Mercator 椭球参数: WGS 84 a = 6378137.0 米 1/f = 298.2572236 投影参数: O 0°00′00″ N = 0.0 弧度 初始原点纬度 0°00′00″ E = 0.0 弧度 初始原点经度 λO 0.00 米 东伪偏移 FE 0.00 米 北伪偏移 FN 正投影计算: = 24°22′54.433″ N = 0.425542460 弧度 输入点坐标: 纬度 经度 λ = 100°20′00.000″ W = -1.751147016 弧度 投影结果: 东 E = -11169055.58 米 北 N = 2800000.00 米 以上投影点以北 10 km 处,网格点(-11169055.58m E,2810000.00m N)的反投影结果为: = -0.44056752 D = 0.426970023 弧度 = 24°27′48.889″ N 纬度 经度 λ = -1.751147016 弧度 = 100°20′00.000″ W 5
谷歌地图与开放式 API 和 WEB 墨卡托投影
1 谷歌地图与开放式 API
Google Maps API 已推出了第 3 版 (https:///maps/documentation/javascript/) , 如果想利用 Google Maps API 在地图上玩 GPS 经纬度坐标定位之类的游戏,在美国可以,在中国就 有问题。下面的 JavaScript 试图通过经纬度坐标在 Google 的街道地图(ROADMAP)上标出青岛颐 中体育场的中心位置。
google api key v3中文版申请和使用教程
google api key v3中文版申请和使用教程
之前的Google Maps Api的API Key很容易申请,只需要按照一个简单的表单提交部署的网站地址即可,自动生成API Key并给出引用的路径。
但是最近在处理另外一个项目的时候发现之前的这种路子不行了。
原来是Google Maps Api的API Key申请办法已经升级了。
现在的方法倒也简单:
在https:///apis/console用自己的Google帐号登录;在左侧菜单Services进行设置,打开需要的应用;
点击左侧API Access,点击Key for browser apps申请API key,在这里提交需要部署的网站信息。
网址信息可以提交通配符的形式,比如*符号。
最后,API Key生成了。
然后再引用文件即可。
格式如下:
<script
src="https:///maps?file=api&v=2&key=abcde fg&sensor=true_or_false" type="text/javascript"></script>
将上述标红部分修改即可,其中下划线部分替换成你申请下来的API
Key。
mapv-three 用法 -回复
mapv-three 用法-回复mapvthree 是一种全球定位系统(GPS)导航软件,它为用户提供了详细的地图和导航指引。
本文将逐步回答关于mapvthree 的用法,并介绍如何使用它进行导航、查找地点以及享受其它特色功能。
第一步:下载和安装mapvthree首先,前往您手机的应用商店(如App Store 或Google Play 商店),在搜索栏中输入“mapvthree”。
点击搜索按钮后,选择正确的应用程序并点击下载按钮。
下载完成后,点击安装,等待安装过程完成。
一旦安装完成,您就可以开始使用mapvthree 了。
第二步:创建个人账户在首次使用mapvthree 之前,您需要创建一个个人账户。
打开应用程序后,您会看到一个欢迎界面,上面提供了一个注册选项。
点击注册按钮,然后按照提示输入您的个人信息,如用户名、密码和电子邮件地址。
完成注册后,您将获得一个个人账户,可以登录并享受mapvthree 的全部功能。
第三步:导航和查找地点一旦您登录了个人账户,您可以开始使用mapvthree 的导航功能。
在主界面上,您会看到一个搜索栏和一个放大缩小按钮。
如果您想知道如何到达某个特定的地点,只需在搜索栏中输入该地点的名称或地址,然后点击搜索按钮。
mapvthree 将在地图上显示相关结果,您可以点击其中一个结果来获取具体的导航指引。
此外,您还可以使用导航功能来获取实时交通信息。
在搜索栏中输入您要前往的地点,然后点击搜索按钮。
在结果页面上,您会看到一个选项,允许您查看交通状况。
点击该选项后,mapvthree 将会显示出当前的交通流量情况,并提供实时路况导航。
这将帮助您避免拥堵,节省时间和燃料。
如果您想查找特定类型的地点,例如餐厅、酒店或购物中心,您可以使用mapvthree 的分类搜索功能。
点击主界面上的搜索栏,然后选择一个类别。
mapvthree 将会列出附近的所有相关地点,您可以点击其中一个来获取更多详情和导航指引。
Google Geocoding API
1.什么是地址解析?2.受众3.使用限制4.地址解析请求5.地址解析响应a.JSON 输出格式b.XML 输出格式c.状态代码d.结果e.地址组成部分的类型6.反向地址解析7.视口偏向8.区域偏向新功能!Google Geocoding API 的功能进行了显著升级和增强。
本文将介绍这一最新版的Google Geocoding API (V3)。
请注意,原来的Google Geocoding API V2已经弃用。
使用该服务的用户应升级到此版本。
注意:Google Geocoding API 不再需要Google Maps API 密钥!Google Maps API Premier 用户还需要使用新的加密密钥为其网址签名。
有关详细信息,请参见 Premier 文档。
什么是地址解析?地址解析是将地址(如“1600 Amphitheatre Parkway, Mountain View, CA”)转换为地理坐标(如纬度37.423021 和经度-122.083739)的过程,您可以根据转换得到的坐标放置标记或定位地图。
Google Geocoding API 可让您通过HTTP 请求直接访问地址解析器。
此外,该服务还可让您执行反向操作(将坐标转换为地址);此过程称为“反向地址解析”。
受众本文适用于要在某个Google Maps API 所提供的地图中使用地址解析数据的网站和移动产品开发人员。
其中包含此API 的使用说明以及有关可用参数的参考资料。
此服务通常用于对静态(事先已知的)地址进行地址解析,以便将应用程序内容放置在地图上;此服务并不用于实时响应用户输入等操作。
对于动态地址解析(例如在用户界面元素内),请查阅JavaScript API V2 客户端地址解析器、JavaScript API V3 客户端地址解析器或Maps API for Flash 地址解析器的文档。
地址解析是一种耗时耗资源的任务。
GoogleMapApi谷歌地图接口整理
GoogleMapApi⾕歌地图接⼝整理⼀:基本知识:1. 使⽤⾕歌地图 API 的第⼀步就是要注册⼀个 API 密钥,需要注重⼀下两点:1.假如使⽤ API 的页⾯还没有发布,只是在本地调试,可以不⽤密钥,随便⽤个字符串代替就可以了。
2.API 密钥只对⽹站⽬录或者域有效。
对不同域的⽹页,需要⽤这些域分别注册不同的密钥2.页⾯引⽤javascript⽂件<script src="/maps?file=api&hl=zh-CN&v=2&key=abcdefg" type="text/javascript"></script>:也可以⽤,假如你需要在地图上显⽰⼤陆以外的具体地图,就⽤ 2.file=api 这个是请求API 的JS ⽂件⽤的,固定的格式。
3.hl=zh-CN这个是在设定地图上除了地图图⽚以外的诸如控件名称、版权声明、使⽤提⽰等所需要显⽰⽂本的语⾔版本时候⽤的,假如没有指定这个参数就使⽤ API 的默认值,对 来说,默认是中⽂简体 默认的是英⽂。
4. v=2这个是⽤来指定需要导⼊的 API 类库的版本号,可以有四种设定⽅式:v=2.s 稳定版本,更新最慢,但是最可靠;v=2 当前版本(只⽤主版本号),更新速度和可靠性介于 s 和 x 之间v=2.x 最新版本,更新最快,包括最新功能,可能没有当前版本可靠;v=2.76 指定具体版本。
不建议使⽤。
注:⽬前⾕歌地图 API的主版本号是2,当API升级时旧版本只能继续使⽤⼀个⽉,所以要及时更改主版本号,版本号改变会在Google Code和Maps API讨论组发布相关信息5.key=abcdefg这个是设定你注册的 API 密钥.⼆:核⼼类:google地图API主要包括:地图类(GMap2)、标记类(GMarker)、标记选项类(GMarkerOptions)、折线类(GPolyline)、经纬度(GLatLng)、命名空间(GEvent)、坐标类(GPoint)、控件的⼤⼩类GSize、 interface(GControl)、地图类型类(GMapType)、地图上⾯的图标类(GIcon)、窗体类(GInfoWindow)、窗体选项类 GInfoWindowOptions)、接⼝GOverlay、枚举GMapPane等等注:标记和折线都是地图的覆盖物1.GMap2:地图类,下⾯实例化⼀张地图:var map= new GMap2(container: DOM_Div,opts: Options);构造函数的参数如下:参数是否必要值类型定义container 是 DOM_Div DOM元素,是个Divopts 可选 Options 构造函数选项GMap2包含的⽅法:1.设置状态的⽅法:enableDragging():设置地图可以被拖动。
API知识学习
API知识学习一、电子地图API比较(一)主流地图API1、Google Maps API :Google Maps API 基于Google Maps,能够使用JavaScript 将Google Maps 嵌入网页中。
API 提供了大量实用工具用以处理地图,并通过各种服务向地图添加内容,从而使用户能够在自己的网站上创建功能强大的地图应用程序。
Google Maps API支持交通地图和卫星地图,有中文语言版本,其地标文件KML格式已经成为在线地图的标准格式,Google Earth和Google Maps都支持KML。
目前在国际和国内应用都非常广泛,提到互联网地图的应用,基本上不能不提Google Maps API。
2、Microsoft Virtual Earth API :基于Virtual Earth的API,英文版,其例子和显示效果非常丰富,预览效果后可以查看相关源代码,可惜目前不支持中国地图的开发。
3、Yahoo Maps API :基于Yahoo Maps,和微软地图一样,也仅支持英文,不支持中国地图的开发。
Yahoo 地图提供基于Flash、Ajax和Map Image三种形式的开发接口,功能较为齐全,显示效果不错。
4、MapABC API :基于MapABC的国内地图供应商,Google地图的中国数据就是使用MapABC的,但其API接口和Google的并不相同,其API的开放性和灵活性不如Google地图API。
5、MapBar API :基于MapBar的国内地图供应商,其数据提供百度地图使用。
6、我要地图API :基于51地图,我要地图的一个特色是提供地图数据下载,可以实现本地桌面地图,不过其地图数据容量有数百兆之大。
(二)地图服务调研我们对市面上几款主流的地图API服务提供商:Google地图服务,MapABC地图服务,微软地图服务,以及其他地图服务进行技术调研,根据调研总结结果为我们选用更为符合需求的地图服务提供商提供参考。
Google maps javascript api v3 叠加层(Overlays)介绍+
Google maps javascript api v3 叠加层(Overlays )介绍叠加层是地图上与纬度/经度坐标绑定的对象,会随您拖动或缩放地图而移动。
叠加层表示的是“添加”到地图中以标明点、线、区域或对象集合的对象。
Google Maps API 包含以下几种叠加层:∙地图上的单个位置显示为标记。
标记有时可显示自定义的图标图片,此时标记通常被称为“图标”。
标记和图标是 Marker 类型的对象。
∙地图上的线显示为折线(表示一系列按顺序排列的位置)。
线是 Polyline 类型的对象。
∙地图上的不规则形状区域显示为 多边形,多边形类似于折线。
与折线相同的是,多边形也是由一系列按顺序排列的位置构成的;不同的是,多边形定义的是封闭区域。
∙地图图层可显示为叠加层地图类型。
您可以通过创建自定义地图类型以创建自己的图块集,该自定义地图类型可取代基本地图图块集,或作为叠加层显示在现有基本地图图块集之上。
∙信息窗口也是特殊类型的叠加层,用于在指定地图位置的一个弹出式气泡框内显示内容(通常是文字或图片)。
∙ 您还可以实现自己的自定义叠加层。
这些自定义叠加层会实现 OverlayView 接口。
[1].[代码] 添加叠加层 跳至 [1] [2] [3]?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15var myLatlng = new tLng(-25.363882,131.044922);var myOptions = {zoom: 4,center: myLatlng,mapTypeId: google.maps.MapTypeId.ROADMAP,}var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);var marker = new google.maps.Marker({position: myLatlng,title:"Hello World!"});// To add the marker to the map, call setMap();marker.setMap(map);[2].[代码] 删除叠加层 跳至 [1] [2] [3]?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 var map;var markersArray = [];function initialize() {var haightAshbury = new tLng(37.7699298, -122.4469157);var mapOptions = {zoom: 12,center: haightAshbury,mapTypeId: google.maps.MapTypeId.TERRAIN};map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);google.maps.event.addListener(map, 'click', function(event) {addMarker(tLng);});}function addMarker(location) {marker = new google.maps.Marker({position: location,map: map});markersArray.push(marker);}// Removes the overlays from the map, but keeps them in the arrayfunction clearOverlays() {if (markersArray) {29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 for (i in markersArray) {markersArray[i].setMap(null);}}}// Shows any overlays currently in the arrayfunction showOverlays() {if (markersArray) {for (i in markersArray) {markersArray[i].setMap(map);}}}// Deletes all markers in the array by removing references to themfunction deleteOverlays() {if (markersArray) {for (i in markersArray) {markersArray[i].setMap(null);}markersArray.length = 0;}}[3].[文件] overlay-remove.html ~ 2KB 下载(264) 跳至 [1] [2] [3]?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 <!DOCTYPE html><html><head><title>Google Maps JavaScript API v3 Example: Overlay Removal</title><link href="/apis/maps/documentation/javascript/examples/standard.css" rel="stylesheet" type="text/css" /><script type="text/javascript" src="/maps/api/js?sensor=false"></script> <script type="text/javascript">var map;var markersArray = [];function initialize() {var haightAshbury = new tLng(37.7699298, -122.4469157);var mapOptions = {zoom: 12,center: haightAshbury,mapTypeId: google.maps.MapTypeId.TERRAIN};map = new google.maps.Map(document.getElementById("map_canvas"),mapOptions);google.maps.event.addListener(map, 'click', function(event) {addMarker(tLng);});}function addMarker(location) {marker = new google.maps.Marker({position: location,map: map});markersArray.push(marker);}// Removes the overlays from the map, but keeps them in the arrayfunction clearOverlays() {if (markersArray) {for (i in markersArray) {markersArray[i].setMap(null); }414243444546474849505152535455565758596061626364656667686970 71}}// Shows any overlays currently in the arrayfunction showOverlays() {if (markersArray) {for (i in markersArray) {markersArray[i].setMap(map);}}}// Deletes all markers in the array by removing references to them function deleteOverlays() {if (markersArray) {for (i in markersArray) {markersArray[i].setMap(null);}markersArray.length = 0;}}</script></head><body onload="initialize();"><div><input onclick="clearOverlays();"type=button value="Clear Overlays"/><input onclick="showOverlays();"type=button value="Show All Overlays"/><input onclick="deleteOverlays();"type=button value="Delete Overlays"/> </div><div id="map_canvas"style="width:600px; height:500px"></div></body></html>。
Google Map API谷歌地图
地图控件与地图属性
• 控件概述 • 上的地图包含允许用户与地图交互的 UI 元素,这些元素称为“控件”。
– GLargeMapControl - 一个在 Google 地图上使用的大平移/缩放控件。默认 情况下显示在地图的左上角。 – GSmallMapControl - 一个在 Google 地图上使用的小一点的平移/缩放控件。 默认情况下显示在地图的左上角。 – GSmallZoomControl - 小型缩放控件(无平移控件),用于在 Google 地图 上显示行车路线的小地图弹出窗口。 – GScaleControl - 地图比例尺 – GMapTypeControl - 让用户切换地图类型(例如“地图”和“卫星”)的按钮 – GHierarchicalMapTypeControl - 用于放置多个地图类型选择器的一组精选 的嵌套按钮和菜单项。 – GOverviewMapControl - 位于屏幕一角的可折叠概览地图。
Google 地图 API
谷歌地图应用说明 Michael-Tian
内容概述
• • • • • • • • •
基础知识 正向标注 反向标注 任意多边形 自定义GMarker 地图控件与地图属性 空间数据类型 参考资料 Demo
基础知识
• Google 地图 API 概念 • Google 地图的“Hello, World”
– 随机生成 – 读XML文件
反向标注
• 从Marker到列表 • 从列表到Marker • 显示例图
任意多边形
• • • •
GPolyline 类 GLatLngBounds 类 矩形选择 可调的多边形 – 样式设置 – 顶点数据获取 • 不可调的多边形
自定义GMarker
谷歌地图API(GoogleMapsAPI)
谷歌地图API(GoogleMapsAPI)
最新的申请GoogleMapAPI,以前的方式似乎都不可以了。
近日Google已变更其MapAPI的申请方式,若您现在透过早先的方法申请APIKey应该会得到底下的讯息画面。
Google不再提供先前的申请APIKey方式
大意是Google不再提供该种方式申请APIKey,而是改由所谓的「APIConole」进行所有API的管理。
在GoogleMapAPI的部份,官方网站目前是建议使用新版本(v3)的API进行开发,若您仍希望继续使用v2的版本进行开发,您可能需要进行部份设定的修改,底下是设定的流程:
最新的申请GoogleMapAPI,以前的方式似乎都不可以了。
GoogleMapAPIv2设置
2.依据您的需求产生对应的GoogleMapAPIKey,若您是要继续采用v2版本的方式使用GoogleMapAPI,请选择「CreatenewBrowerKey」,之后将产生的Key依据过去的方式填入对应的位置即可。
最新的申请GoogleMapAPI,以前的方式似乎都不可以了。
注意V2版本对应的选项
需要注意的是:
1.依目前观察,已经在使用中的GoogleMapAPIKey是可以继续使用,并不会因为产生Key的方式改变而有所变更。
2.新的方式会统计并限制使用量(目前是限制每天25,000次查询),若超过用量则需给付相关费用才可继续使用。
Google地图使用API介绍
Google 地图 API 参考帮助Google 地图 API 现在与Google AJAX API 载入器集成,后者创建了一个公共命名空间,以便载入和使用多个 Google AJAX API。
该框架可让您将可选 google.maps.* 命名空间用于当前在 Google 地图 API 中使用的所有类、方法和属性,使用此命名空间替换常规G 前缀。
不要担心,现有G命名空间仍能得到支持。
例如,Google 地图 API 中的 GMap2 对象还可以定义为 google.maps.Map2。
请注意,此参考文档仅指现有G命名空间。
如果只是要使用地图显示内容,则需要了解以下类、类型和函数:∙GMap2∙GMapOptions∙GGoogleBarOptio ns∙GInfoWindow∙GInfoWindowTab ∙GInfoWindowOpti ons∙GMarker∙GMarkerOptions ∙GPolyline∙GPolylineOption s∙GPolyEditingOpt ions∙GPolyStyleOptio ns∙GPolygon∙GPolygonOptions ∙GScreenOverlay ∙GScreenPoint∙GScreenSize∙GGroundOverlay ∙GIcon∙GPoint∙GSize∙GBounds ∙GLatLng∙GLatLngBounds∙GControl∙GTileLayerOptions∙GTileLayerOverlayOptions∙GEvent∙GEventListener∙GXmlHttp∙GXml∙GXslt∙GLog∙GDraggableObject∙GDraggableObjectOptions∙GGeoStatusCode∙GGeoAddressAccuracy∙GClientGeocoder∙GGeocodeCache∙GFactualGeocodeCache∙GMarkerManager∙GMarkerManagerOptions∙GGeoXml∙GDownloadUrl∙GBrowserIsCompatible∙GDirections∙GDirectionsOptions∙GTravelModes∙GRoute∙GStep∙GTrafficOverlay∙GTrafficOverlayOptions∙GAdsManager∙GAdsManagerOptions∙GStreetviewPanorama∙GStreetviewPanoramaOptions∙GStreetviewOverlay∙GStreetviewClient∙GStreetviewClient.ReturnValues∙GStreetviewData∙GStreetviewLocation∙GStreetviewLink∙GPov∙GStreetviewPanorama.ErrorValues如果您要通过实现自己的控件、叠加层或地图类型来扩展地图 API 的功能,则还需要了解以下类和类型:∙GGoogleBarListingTypes∙GGoogleBarLinkTarg et∙GGoogleBarResultLi st∙GMapPane∙GOverlay∙GControl∙GControlPosition ∙GControlAnchor∙GMapTypeControl∙GMenuMapTypeControl∙GHierarchicalMapTypeControl∙GMapType∙GMapTypeOptions∙GLayer∙GTileLayer∙GTileLayerOverlay∙GCopyrightCollection∙GCopyright∙GProjection∙GMercatorProjection对GMap2类进行实例化以创建地图。
google地图之api介绍
Google Maps JavaScript API V3 辅导手册注意:以下网页中提到的 Google Maps JavaScript API 第 3 版现在是正式的 JavaScript API 版本。
该 API 的第 2 版已根据我们的弃用政策正式弃用。
欢迎您将代码移植到这个功能更强、最近更新的版本中!1.简介2.Google Maps 的“世界,您好”1.载入 Google Maps API 第 3 版2.地图 DOM 元素3.地图选项4.google.maps.Map - 基本对象5.载入地图3.纬度和经度4.地图类型简介任何 Google Maps 第 3 版 API 应用程序中的基本元素都是“地图”本身。
本文介绍了google.maps.Map 基础对象的用法和地图操作的基础知识。
(如果您已经学习了第 2 版的辅导手册,您会发现,这两版辅导手册中的很多内容都是相同的。
但两者之间也会有些区别,因此,请仔细阅读本文。
)Google Maps 第 3 版的“Hello, World”初步了解 Google Maps API 的最简单方法就是看一个简单的示例。
以下网页显示了以澳大利亚新南威尔士的悉尼为中心的一个地图:<html><head><meta name="viewport" content="initial-scale=1.0, user-scalable=no" /><script type="text/javascript"src="/maps/api/js?sensor=set_to_true_or_false"></script><script type="text/javascript">function initialize() {var latlng = new tLng(-34.397, 150.644);var myOptions = {zoom: 8,center: latlng,mapTypeId: google.maps.MapTypeId.ROADMAP};var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); }</script></head><body onload="initialize()"><div id="map_canvas" style="width:100%; height:100%"></div></body></html>查看示例 (map-simple.html)即使在这个简单的示例中,也有几点需要注意:1.使用 script 标记来加入 Maps API JavaScript。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Google Maps JavaScript API V3地图类型1.地图类型2.基本地图类型3.45°图像a.启用45°图像b.旋转45°图像4.修改地图类型注册表5.样式化地图a.地图项b.样式器6.自定义地图类型a.地图坐标i.世界坐标ii.像素坐标iii.图块坐标b.MapType接口i.基本地图类型ii.叠加层地图类型iii.图片地图类型7.自定义投影a.实现投影界面b.投影中的坐标转换c.投影中的图块选择地图类型本文档讨论了您可以使用Google Maps JavaScript API显示的地图类型。
该API使用了MapType 对象来保留这些地图的相关信息。
MapType是一种接口,它定义了地图图块的显示形式和使用方法,以及坐标系从屏幕坐标转换到世界坐标(地图上)的方式。
每个MapType都必须包含一些用于处理图块的检索和释放的方法,以及定义图块视觉行为的属性。
Maps API中的地图类型的内部工作方式是一个较为复杂的主题。
大部分开发人员可以仅使用下述的基本地图类型。
不过,您也可以使用自定义地图类型来定义自己的地图图块,还可以使用样式化地图来修改现有地图类型的显示形式。
提供自定义地图类型时,您需要了解如何修改地图的地图类型注册表。
基本地图类型Google Maps API中提供了多种地图类型。
除了用户熟悉的“绘制”道路地图图块,Google Maps API 还可支持其他地图类型。
Google Maps API提供了以下地图类型:∙MapTypeId.ROADMAP,用于显示默认的道路地图视图∙MapTypeId.SATELLITE,用于显示Google地球卫星图像∙MapTypeId.HYBRID,用于同时显示普通视图和卫星视图∙MapTypeId.TERRAIN,用于根据地形信息显示实际地图。
要通过Map修改正在使用的地图类型,您可以设置其mapTypeId属性,方法是:在构造函数内设置其Map options对象,或者调用地图的setMapTypeId()方法。
请注意,您实际上并没有直接设置地图的地图类型,而是将其mapTypeId设置为引用使用标识符的MapType。
Maps JavaScript API V3使用了地图类型注册表(详见下文)来管理这些引用。
45°图像Google Maps API针对特定位置支持特殊的45°图像。
这一高分辨率图像可提供朝向各基本方向(东南西北)的透视视图。
对于支持的地图类型,这些图像还提供了更高的缩放级别。
下图显示了加利福尼亚州圣塔克鲁兹市木板路的45°透视视图:现有的google.maps.MapTypeId.SATELLITE和google.maps.MapTypeId.HYBRID地图类型支持高缩放级别的45°透视图像(在可用的情况下),前提是您已明确启用了此功能。
如果您放大的位置拥有此类图像,那么,这些地图类型将会自动通过以下方式更改其视图:∙地图上现有的任何平移控件将会变更为在现有的导航控件周围添加一个罗盘转轮。
您可以拖动该罗盘转轮来更改任意45°图像的方向,然后将方向对准包含图像的最近的支持方向即可。
∙一个旋转控件将会显示在现有的平移和缩放控件之间,它可用于将图像围绕着支持的方向旋转。
旋转控件仅支持顺时针方向旋转。
∙以当前位置为中心的45°透视图像将会替代卫星图像或混合图像。
默认情况下,此类视图会朝向北方。
如果您缩小地图,则地图会重新显示默认的卫星图像或混合图像。
∙MapType控件将会启用子菜单切换控件,用于显示45°图像。
缩小显示45°图像的地图类型将会还原所有更改,并重新构建原始地图类型。
Google正在不断地为更多城市添加45°图像。
有关最新信息,请查看Google Maps API覆盖率电子表格。
启用45°图像要启用支持的地图类型的45°透视图像,请在Map对象上调用setTilt(45)。
默认情况下,45°图像朝向北方。
您可以调用setTilt(0)以停止显示45°图像。
Map的getTilt()方法将会始终反映地图上所显示的当前倾斜度;如果您在地图上设置了倾斜度后又将其删除(例如通过缩小地图的方式),则地图的getTilt()方法将会返回0。
以下示例显示了俄勒冈州波特兰市中心的45°视图。
查看示例(aerial-simple.html)旋转45°图像实际上,45°图像是由朝向四个基本方向(东南西北)的一系列图片构成的。
当地图显示45°图像时,您可以将图像对准某个基本方向,方法是在Map对象上调用setHeading(),并向该对象传递一个数值,表示偏离北方的角度。
以下示例中显示了一张航拍地图,在您点击按钮后它会每3秒钟自动旋转一次:查看示例(aerial-rotation.html)修改地图类型注册表地图的mapTypeId是一种字符串标识符,用于将MapType与唯一值关联起来。
每个Map对象都会保留一个MapTypeRegistry,其中包含该地图可用的一系列MapType。
该注册表用于选择地图的某种控件(例如MapType控件)中可用的地图类型。
您无法直接读取地图类型注册表,而是应该通过以下方法对注册表进行修改:添加自定义地图类型并将它们与您所选择的字符串标识符进行关联。
您无法修改或更改基本地图类型(但您可以通过更改与该地图相关联的mapTypeControlOptions的显示形式来将这些类型从地图中删除)。
以下代码将地图设置为仅显示其mapTypeControlOptions中的两种地图类型,并修改了注册表,将此标识符的关联添加到MapType接口的实际实现中。
注意:我们有意未在之前的代码中记录自定义地图类型本身的创建。
关于构建地图类型的信息,请参见下面的样式化地图或自定义地图类型。
样式化地图借助StyledMapType,您可以自定义Google标准基本地图的显示形式,并更改诸如道路、公园和建筑物区域等元素的视觉显示,以体现不同于默认地图类型中所使用的样式。
这些组件称为地图项,您可以通过StyledMapType选择这些地图项,并将可视样式应用于地图项的显示(包括隐藏全部地图项)。
借助这些更改,可以在地图上强调特定组件或周围页面的补充内容。
StyledMapType()构造函数采用MapTypeStyles数组作为参数,每个数组均由选择器和样式器组成。
选择器指定应选择以应用样式的地图组件,而样式器指定这些元素的可视修改。
地图项地图由一组地图项构成,如道路或公园,这些地图项使用MapTypeStyleFeatureType指定。
地图项类型构成类别树,根为all。
关于地图内可供选择的地图项的完整列表,请参见Maps JavaScript API V3参考。
如果将地图项指定为all,则会选中所有的地图元素。
某些地图项类型类别还包含子类别,子类别是通过点表示法(如landscape.natural或road.local)来指定的。
如果指定父级地图项(例如road),则应用于此选择项的样式也将应用于所有道路(包括子类别)。
此外,地图上的某些地图项通常会包含不同的元素。
例如,道路不仅包括地图上绘制的线(几何图形),还包括附加到地图上的用于表示其名称的文本(标签)。
您可以通过指定MapTypeStyleElementType类型的类别来选择地图项内的元素。
系统支持以下元素类型:∙all(默认)用于选择该地图项的所有元素。
∙geometry只选择该地图项的地理元素。
∙labels只选择与该地图项关联的文本标签。
如果未指定任何元素类型,则样式将应用于所有元素(不考虑元素类型)。
以下代码段选择所有本地道路的标签:样式器样式器为MapTypeStyler类型的格式选项,应用于在每个MapTypeStyle规则中指定的地图项和元素。
目前,系统支持以下MapTypeStyler选项:∙hue(RGB十六进制字符串)用于表示基本颜色。
(*请参见下方的使用说明)。
∙lightness(介于-100和100之间的浮点值)用于表示元素的亮度变化百分比。
负值增加暗度(-100为黑),而正值增加亮度(+100为白)。
∙saturation(介于-100和100之间的浮点值)用于表示要应用到元素的基本颜色色度的变化百分比。
∙gamma(介于0.01和10.0之间的浮点值,其中1.0表示不应用任何校正)用于表示要应用到元素的灰度校正量。
灰度系数以非线性方式修改色相亮度,而不会影响白色值或黑色值。
灰度系数通常用于修改多个元素的对比度。
例如,您可以通过修改灰度系数来提高或降低元素的边缘与内部间的对比度。
低灰度系数值(小于1)可提高对比度,而高值(大于1)则可降低对比度。
∙inverse_lightness(如果为true)用于仅颠倒现有的亮度。
∙visibility(on、off或simplified)用于表示元素是否在地图上出现及其出现方式(如果出现的话)。
simplified可见度表示地图应按照它认为最合适的方式来简化这些元素的显示形式(例如,经过简化的道路结构可能会显示较少的道路)。
样式器规则必须作为不同的操作单独应用,并且按照它们在MapTypeStyler数组中显示的顺序进行应用。
请勿将多个操作合并为一项样式器操作,而应当在样式器数组中将每个操作定义为单独的元素。
顺序非常重要,因为某些操作的顺序是不可交换的。
通常而言,通过样式器操作进行修改的地图项和/或元素均已拥有样式,在此情况下,这些操作会应用于上述现有样式(如果有的话)。
请注意,我们在样式器操作中使用色相、饱和度、亮度(HSL)模型来表示颜色。
这些用于定义色彩的操作在图形设计领域很常见。
色相表示基本的颜色,饱和度表示该颜色的色度,而亮度则表示组合色中黑色或白色所占的相对比重。
HSL的所有三个值都可以映射到RGB值,反之亦然。
灰度校正可以修改色彩空间的饱和度,主要用于提高或降低对比度。
此外,HSL模型还可用于定义坐标空间内的颜色,其中hue用于表示色轮内的定向,而饱和度和亮度则用于表示不同轴上的幅度。
与大多数RGB色彩空间类似,色相也是在RGB色彩空间内进行衡量的,唯一不同的是后者缺少黑色和白色的深浅渐变。
RGB色轮注意:当hue采用HTML十六进制色彩值时,它只会将该值用于确定基本颜色(在色轮上的定向),而不是饱和度或亮度(这些值会以变化百分比的形式单独表示)。
例如,纯绿色可在hue属性内定义为“#00ff00”或“#000100”,这两种色相是相同的(这两个值都指向HSL颜色模型中的纯绿色)。