中篇:第三章-Google地图开发技术--Google-Earth-API课件

上传人:沈*** 文档编号:240972392 上传时间:2024-05-21 格式:PPT 页数:48 大小:350KB
返回 下载 相关 举报
中篇:第三章-Google地图开发技术--Google-Earth-API课件_第1页
第1页 / 共48页
中篇:第三章-Google地图开发技术--Google-Earth-API课件_第2页
第2页 / 共48页
中篇:第三章-Google地图开发技术--Google-Earth-API课件_第3页
第3页 / 共48页
点击查看更多>>
资源描述
中篇:第三章-Google地图开发技术-Google-Earth-API通过使用 Google 地球插件及其 JavaScript API,你可以在网页中嵌入全功能的 Google 地球及其三维呈现功能。与 Google 地图 API 一样,您可以绘制标记和线条 不过是以三维的方式!3.2.1 API基础应用程序接口(Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。由于近年来软件的规模日益庞大,常常会需要把复杂的系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性一、API概述 应用程序接口为:“电脑操作系统(Operating system)或程序库提供给应用程序调用使用的代码”。其主要目的是让应用程序开发人员得以调用一组例程功能,而无须考虑其底层的源代码为何、或理解其内部工作机制的细节。API本身是抽象的,它仅定义了一个接口,而不涉入应用程序如何实现的细节。应用程序接口是一组数量上千、极其复杂的函数和副程序,可让程序员做很多任务,譬如“读取文件”、“显示菜单”、“在视窗中显示网页”等等。操作系统的API可用来分配存储器或读取文件。许多系统应用程序借由API接口来实现,像是图形系统、数据库、网络Web服务,甚至是联机游戏。应用程序接口有诸多不同设计。用于快速执行的接口通常包括函数、常量、变量与数据结构。也有其它方式,如通过解释器,或是提供抽象层以屏蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。应用程序接口经常是软件开发工具包(SDK)的一部分。二、开放API 平台基于互联网的应用正变得越来越普及,在这个过程中,有更多的站点将自身的资源开放给开发者来调用。对外提供的API 调用使得站点之间的内容关联性更强,同时这些开放的平台也为用户、开发者和中小网站带来了更大的价值。开放是目前的发展趋势,越来越多的产品走向开放。目前的网站不能靠限制用户离开来留住用户,开放的架构反而更增加了用户的粘性。在Web 2.0 的浪潮到来之前,开放的API 甚至源代码主要体现在桌面应用上,而现在越来越多的Web 应用面向开发者开放了API。具备分享、标准、去中心化、开放、模块化的Web 2.0 站点,在为使用者带来价值的同时,更希望通过开放的API 来让站点提供的服务拥有更大的用户群和服务访问数量。站点在推出基于开放API 标准的产品和服务后,无需花费力气做大量的市场推广,只要提供的服务或应用出色易用,其他站点就会主动将开放API 提供的服务整合到自己的应用之中。同时,这种整合API 带来的服务应用,也会激发更多富有创意的应用产生。为了对外提供统一的API 接口,需要对开发者开放资源调用API 的站点提供开放统一的API接口环境,来帮助使用者访问站点的功能和资源。当然,开放API 的站点为第三方的开发者提供良好的社区支持也是很有意义的,这有助于吸引更多的技术人员参与到开放的开发平台中,并开发出更为有趣的第三方应用。3.2.2 Google Earth API简介要在网页中载入 Google 地球插件,你需要进行以下操作:1.载入 Google 地球 API。2.创建 DIV 元素来包含该插件。3.创建初始化插件的函数。4.网页载入后,调用该初始化函数。一、载入 Google 地球 API将以下标签置于 HTML 网页的 中,用自己的密钥(可从 获取)来替换 ABCDEF:标签的 src 指向具有单个方法(用于载入个别 Google API 的 google.load)的 JavaScript 文件。在新的 标签中,调用:google.load(earth,1);该调用告知 Google 将 earth 模块载入到 google.earth 命名空间,并指定版本 1(API 的最新稳定版本)。二、创建插件的容器将 Google 地球插件载入到具有唯一 ID 的 DIV 元素中。添加 DIV 到网页的 部分:三、创建初始化函数将创建三个函数。它们将按顺序进行以下操作:1.尝试创建新的插件实例2.在成功创建插件实例后调用3.在未能创建实例时调用第一个函数如下所示:function init()google.earth.createInstance(map3d,initCB,failureCB);google.earth.createInstance 此处显示了三个选项:应添加实例到其中的 DIV 元素、返回成功时要调用的函数以及返回失败时要调用的函数。四、网页载入后,调用初始化函数Google 命名空间包括 setOnLoadCallback()函数,在载入 HTML 网页和所请求的 API 后,该函数将调用所指定的函数。使用此函数可确保只有在网页 DOM 完全扩展后才载入插件。google.setOnLoadCallback3.2.2 Google Earth API基本操作一、地标点地标用于标记地球表面上的位置。最基本的地标包括标准图标和地理位置。此外,地标还可以包括:说明自定义图标定义翻转图标的样式地图二、球形框球形框是在 Google 地球插件中显示的信息窗口,你可选择将其与地图项关联。其内容由开发人员指定,可包含任何 HTML、CSS 或 JavaScript(地图项球形框除外)。球形框的大多数方面都可以通过 API 进行控制:高度和宽度的最小值和最大值(setMinHeight()、setMaxHeight()、setMinWidth()、setMaxWidth())背景颜色(setBackgroundColor()*不适用于地图项球形框文本颜色(setForegroundColor()*不适用于地图项球形框与球形框关联的地图项(setFeature()是否包含关闭按钮(setCloseButtonEnabled()三、几何图形和叠加层几何图形和叠加层包括:线字符串、多边形、地面叠加层、屏幕叠加层、multiGeometry、三维模型等。四、KMLGoogle 地球插件可以用不同的方式导入 KML,以便显示地图项、航线和视图。该插件支持所有的 KML 2.2 标签和使用 gx 命名空间的 KML 的扩展。不管地图项是作为 KML 导入的还是使用 API 创建的,该插件同样可以针对这些地图项返回 KML 表示。3.3 Google Maps APIGoogle Maps JavaScript API允许你把Google地图嵌入到你自己的网页内。要使用这个API,首先您需要申请一个API key,然后按照下面的指南操作。3.3.1 Google Maps API简介学习这个API最简单的方法就是看一个简单的例子,Google Maps上的Hello World。下面的网页显示一个500 x300的地图,中心位于California,Palo Alto:其中,(1)地址()是在你的页面放置Google地图需要的所有的代码的JavaScript文件。你的页面必须包含指向这个地址的script标记,并加上你的API Key。如果你的API Key是abcdefg,则有key=abcdefg。(2)Google Map API所有的对象、属性和方法都存放于“G”命名空间里,描绘地图的类“GMap2”是API的中心类(朱健 2011)。这个类在页面上显示一个地图。你可以创建任意多个该类的实例(一个实例就是页面上的一个地图)。创建了地图实例之后,就可以指定一个页面元素(通常是div元素)来包含它。除非您明确的指定地图的尺寸,否则地图大小会取决于容器的尺寸。(3)地址中的v=2部分表明API的版本是2。(4)setCenter方法来初始化刚刚创建的地图实例,括号中的2个参数分别是初始化地图的中心点坐标和地图的缩放级别。这里的GLatLng类是Google Map API的另一个重要对象,用来存放经纬度坐标点(朱健 2011)。3.3.2 Google Maps API地图操作一、地图移动和动画下面的例子显示一个地图,然后等待2秒,然后平移到一个新的中心点。panTo方法把地图的中心移动到一个指定点。如果指定点在地图的可见区域内,地图中心会平滑地平移到指定点,否则地图中心会直接跳到那个点。二、在地图上添加控件可以用addControl方法在地图上添加控件。在这个例子里,我们加入GSmallMapControl和GMapTypeControl控件,这样我们分别可以移动/缩放地图以及在地图和卫星模式之间切换。三、事件监听器注册一个事件监听器需要调用GEvent.addListener方法。把一个地图,一个需要监听的事件,一个事件发生时需要调用的函数传给GEvent.addListener方法。在下面的例子里,在我们拖动地图后,显示地图中心的经纬度。四、打开信息窗口创建一个信息窗口,调用openInfoWindow方法,传递给它一个位置和一个用来显示的DOM元素。下面的例子在地图中心显示一个包含Hello,world信息的窗口。五、地图覆盖物覆盖对象是覆盖在地图上有固定经纬度坐标位置的对象,所以当你拖动地图或者改变地图类型的时候,它们也会跟着移动。Maps API支持两种类型的覆盖对象:标记,地图上的图标;折线,用一系列点形成的折线。这个例子在地图上显示一个5个点连成的折线。六、点击事件处理要在用户点击地图的时候触发一个动作,就需要在GMap2实例上注册一个“click”事件的监听器。当事件被触发的时候,事件处理句柄将收到两个参数:被点击的标记(如果有),被点击点的GLatLng(经纬度)。如果没有标记被点击,那么第一个参数为null。注意:标记是唯一支持click事件的内建覆盖对象。其他类型的覆盖对象,如GPolyline是不能被点击的。3.3.3 Google Maps API地理译码可以直接发HTTP请求的方式来访问Maps API的地理译码器,或者可以用GClientGeocoder对象在JavaScript下发送请求。这样可以从你的服务器进行地理译码调用或者让用户的浏览器进行这个操作。如果你有一个相对稳定的地址数据库(待售房产的列表),我们建议你通过HTTP请求一次性获得地理译码信息,然后把这些地址缓存在你自己的数据库里。这让你的网站的交互会更快,而且可以减少你对每日地理译码请求限额的消耗。到目前为止,这个地理译码器还没有足够的中国的本地化信息可以使用。一、JavaScript下使用地理译码在JavaScript下可以用GClientGeocoder对象来访问地理译码器。getLatLng方法可用来把地址转换为GLatLng(经纬度)。因为地理译码需要发送请求到Google服务器,所以这可能会花点时间。为了避免你的脚本一直等待,你需要指定一个函数在回应后触发。二、HTTP请求方式想直接让服务器端脚本访问地理译码器,可以发请求到?,把如下参数加在地址里面:q-你想地理译码的地址。key-你的API key。output-输出格式。选项是xml,kml,csv或者json。在这个例子里,我们请求google总部的地理坐标。问 题?谢谢!
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!