首页 / 在地理信息系统中游历

在地理信息系统中游历有效专利 发明

技术领域

[0001] 本发明涉及在地理信息系统中导航。

相关背景技术

[0002] 地理信息系统(GIS)是用于存档、检索、显示和/或操纵根据数据元素的地理坐标来索引的数据的系统。数据元素可以是各种数据类型,诸如建筑物和地形以及其它地理特征的图像、地图、模型。
[0003] 地理信息系统可以向用户显示来自虚拟相机的透视角(perspective)的地理信息。虚拟相机的透视角可以由位所和取向(orientation)来定义。通过改变虚拟相机的位所和取向,用户可以在地理信息内游览。例如,用户可以通过将虚拟相机的透视角对向埃菲尔铁塔的表示来“访问”GIS中的埃菲尔铁塔。
[0004] 可以将虚拟相机的透视角存储在诸如Keyhole标记语言(KML)的语言中。解释KML,GIS可以将虚拟相机移动到已存储的透视角来显示景象。使用已存储的透视角,用户可以返回到该景象。此外,KML可以存储透视角序列。解释KML,GIS可以迭代地将虚拟相机从一个透视角移动到下一透视角。这使用户能够查看一系列景象,例如埃菲尔铁塔、大本钟等。然而,该方法仅可以提供有限的用户体验。
[0005] 需要提供更令人满意的用户体验的用于在地理信息中游览的方法和系统。

具体实施方式

[0021] 本发明涉及在地理信息系统中游历。在下文的实施例的详细描述
[0022] 中,对“一个实施例”、“实施例”、“示例实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可以不必包括特定特征、结构或特性。而且,这样的短语不一定是指相同实施例。此外,当结合实施例描述特定特征、结构或特性时,应认为,无论是否明确描述,结合其它实施例实现这样的特征、结构或特性在本领域技术人员的知识范围内。
[0023] 实施例提供了在诸如在http://earth.google.com可获得的GoogleTM地球系统的GIS中的有向导的游历体验。为了提供有向导的游历体验,实施例维护有关游历的时间线(timeline)。诸如将虚拟相机移动到新的位所的在游历中的每一个动作具有游历时间线中的游历时间。通过在游历时间线上的定义的时间执行动作,实施例提供更令人满意的用户体验。
[0024] 在一个实施例中,用户可以定义有关游历的动作集。在此可以被称为飞至(fly-to)动作的一种类型的动作可以包括游历时间和地理数据中的位所。由飞至动作,可以确定通过地理信息的路径。虚拟相机可以沿着路径移动。移动通过路径,可以根据飞至动作的游历时间来确定虚拟相机的速度。在一个实施例中,动作的游历时间可以指定相机何时到达动作定义的位所。在另一个实施例中,游历时间可以指定相机在特定位所保持静止时间长度。通过使用动作的游历时间来调节虚拟相机的速度,本发明的实施例向用户提供更令人满意的用户体验。
[0025] 在一个实施例中,用户可以超控(override)游历。例如,用户可以用诸如暂停、倒回、快进和章节跳过的时间线控件中断游历。使用这些控件,用户可以控制游历时间的推移。此外,当游历被打断时,用户可以偏离游历路径以探察周围的三维环境。用户可以恢复游历,其将虚拟相机返回到游历路径。
[0026] 在另一个示例中,用户可以通过修改虚拟相机的取向来超控游历。以这种方式,用户可以在游历期间“环视”。环视可以打断或可以不打断游历的进行。这些特征也提供更令人满意的用户体验。
[0027] 在进一步实施例中,游历穿越在GIS中定义的历史。除被空间地登记外,GIS中的特征可以在时间上被登记。例如,GIS可以具有被空间地登记到希腊罗得岛并且被时间地登记到公元前280-226的巨像。为清晰起见,与GIS中的特征相关联的时间在此被称为“特征时间”。游历可以带着用户经历特征时间。例如,每一个动作可以具有与其相关联的特征时间。基于动作,可以确定游历时间、特征时间和位所之间的关系。随着游历时间流逝,虚拟相机的位所和特征时间均可以改变。以这种方式,播放游历的GIS可以向用户示出古希腊的巨像,后跟现代巴黎的埃菲尔铁塔。将在下面参考附图更详细地描述这些实施例。
[0028] 图1A示出了根据本发明的一个实施例的图示了游历的GIS的截屏100。在一个实施例中,GIS可以显示截屏100来预览游历。游历还与其它内容一起在面板102中列出。路径104图示了虚拟相机在游历期间采取的路径。截屏100向用户提供了用编辑控件106编辑游历的机会。将在下面更详细地描述编辑游历。截屏100还简略描述了框架108中的游历。框架108包括按钮110。在用户选择按钮110时,GIS可以如图1B中所示开始播放游历。
[0029] 图1B示出了根据一个实施例的播放游历的GIS的截屏150。随着游历播放,GIS向用户显示由游历动作和相应路径设定的不同景象。用户可以能够使用游历控件152和154来超控游历。游历控件152可以使用户能够控制游历时间线。例如,游历控件152可以使用户能够暂停、倒回、快进和章节跳过游历。
[0030] 在一个实施例中,GIS可以通过控制游历时间流逝的速率来执行游历控件152。例如,暂停命令可以促使游历时间停止流逝。随着游历时间停止,虚拟相机可以保持静止,这允许用户花费额外的时间来查看感兴趣的景象。快进命令可以促使游历时间更快流逝。游历时间更快流逝可以加快虚拟相机的移动。倒回命令可以促使游历时间减少。减少游历时间可以沿着路径反向移动相机。最后,章节跳过可以将游历时间改变为下一或前一动作的游历时间。作为结果,虚拟相机可以移动到下一或前一游历动作的位所。因此,通过控制游历时间线,用户可以超控游历。注意到,游历控件152用户界面元素不同于将在下面详细论述的(<游历控制>)KML标签。
[0031] 用户还可以在不打断游历时间线的情况下超控游历。例如,游历控件154可以使用户能够在游历进行时环视。环视可以改变虚拟相机的取向,而虚拟相机继续沿着游历的路径移动。在另一个示例中,用户可以通过改变数据的可见性或用户界面元素来超控游历。
[0032] 如前所述,可以由具有相关联的游历时间的动作定义游历。图2示出了根据一个实施例图示游历中的动作序列的图200。每一个动作包括持续时间值。动作的持续时间值定义流逝多少游历时间来完成动作。如果动作在序列中,则可以通过对序列中的所有先前动作的持续时间求和来确定在游历时间线中的该动作发生的点。
[0033] 在此可以被称为飞至动作的一种类型的动作可以促使虚拟相机移动到新的位所。每一个飞至动作还可以促使游历转变到新的特征时段。动作的序列以飞至动作202开始。
飞至动作202指示虚拟相机“弹跳”到新的位所。弹跳虚拟相机可以意指虚拟相机遵循(可能是抛物线状的)轨迹并且在新的位所停止移动。8秒的持续时间可以指示GIS调节虚拟相机的速度,以使虚拟相机在8秒内在其新的位所停止移动。
[0034] 当虚拟相机在新的位所停止移动时,动作204指示GIS显示信息气球。随着信息气球向用户显示,动作206指示虚拟相机在其位所处暂停5秒的持续时间以向用户提供查看信息气球的时间。然后,在动作208关闭信息气球。
[0035] 在动作208之后是未中断的平滑飞至动作序列210。平滑飞至动作可以指示虚拟相机以恒定速度移动到新的位所。与弹跳飞至动作相比,平滑飞至动作不必指示虚拟相机在其新的位所停止移动。平滑飞至动作序列210指示虚拟相机连续飞过一系列位所(以及可能特征时间)。可以使用样条内插来确定虚拟相机飞过的路径。持续时间值可以控制虚拟相机沿着路径移动的速度。例如,飞至动作212可以指定虚拟相机以使得其在0.4秒内到达新的位所的速度移动。因此,未中断的平滑飞至动作序列(诸如210)可以为相机指定以指定速度的连续、内插路径。平滑飞至动作序列可以由指示虚拟相机停止的动作中断。例如,序列可以由弹跳飞至动作(诸如飞至动作202)或暂停动作(诸如动作222)中断。
[0036] 平滑飞至动作序列210在动作222结束。动作222指示相机暂停3.5秒。在暂停之后,飞至动作224指示相机弹跳到新的位所。在该新的位所,虚拟相机可以如由动作226所指示的暂停10秒。这结束了在图200中指定的游历。
[0037] 如关于图200所述,动作序列可以指定游历。在一个实施例中,GIS可以使用户能够创建以及编辑游历。GIS还可以解释动作序列来播放游历。图3是根据一个实施例图示了编辑以及播放游历的GIS 300的图。GIS 300包括跨诸如因特网的一个或多个网络330耦接到GIS服务器340的GIS客户端300。
[0038] GIS客户端300包括用户交互模块310和渲染器模块322。用户交互模块310包括运动模型314。总的来说,GIS客户端302操作如下。用户交互模块310接收有关用户期望查看的位置的用户输入,并且通过运动模型314,构建定义虚拟相机的查看规范。渲染器模块322使用查看规范来决定待绘制哪些数据,然后绘制数据。如果渲染器模块322需要绘制GIS客户端302没有的数据,则GIS客户端302向GIS服务器340发送对额外数据的请求。
[0039] 运动模型314构建查看规范。查看规范定义被称为平截头体的虚拟相机的在三维空间内的可视量,以及平截头体在地理数据中的位所和取向。在一个实施例中,平截头体以截去顶端的棱锥的形状。平截头体具有可以随查看环境而改变的最小和最大的查看距离。因此,改变查看规范改变了挑选到虚拟相机的可视量的地理数据。所挑选的地理数据由渲染器模块322绘制。
[0040] 查看规范可以为虚拟相机指定三个主要参数集:相机三角架、相机镜头以及相机调焦能力。相机三角架参数集指定以下内容:虚拟相机位所(X、Y、Z坐标);使虚拟相机相对于默认取向定向的方式,诸如航向改变角(例如:朝北?、朝南?、在中间?);斜度(例如:水平?、朝下?、朝上?、在中间?);以及偏航/滚动(例如:水平?、顺时针?、逆时针?、在中间?)。镜头参数集指定以下内容:水平视场(例如:长焦?、正常人眼-大约55度?、或广角?);以及垂直视场(例如,长焦?、正常人眼-大约55度?、或广角?)。调焦参数集指定以下内容:到近裁剪面的距离(例如,虚拟相机能够看到距“镜头”多近,比那更近的对象不被绘制);以及到远裁剪面的距离(例如,虚拟相机能够看到距镜头多远,比那更远的对象不被绘制)。
[0041] 除运动模型314外,用户交互模块310包括游历控制器312、游历解释器316和游历编辑器318。游历解释器316接收有关游历的动作序列。在一个实施例中,游历解释器316可以解析包括动作序列的Keyhole标记语言(KML)文件。在动作序列中,每一个动作可以包括在地理信息中的位所、以及游历时间中的持续时间以及特征时间段。游历解释器
318还可以接收例如KML文件中的特征。特征可以具有相关联的特征时段和地理信息中的位所。
[0042] 一旦游历解释器316接收了有关游历的数据,游历控制器312就播放游历。为了播放游历,游历控制器312随着游历时间流逝而改变虚拟相机的位所(以及可能取向)。游历控制器312还可以确定特征时间并且根据特征时间显示特征。
[0043] 游历控制器312可以基于飞至动作序列来为虚拟相机确定路径。为了确定路径,游历控制器312可以内插样条。基于飞至动作中的持续时间值,游历控制器确定虚拟相机沿着路径移动的速度。并且,游历控制器312确定特征时间如何随着游历时间流逝而流逝。在一个实施例中,游历控制器312可以在播放游历之前确定相机路径、速度和特征时间线。
在另一个实施例中,游历控制器312可以在播放游历时实时作出那些确定。
[0044] 游历控制器312可以使用户能够超控正播放的游历。响应于用户输入,游历控制器312可以暂停、倒回、快进或章节跳过通过游历。为了执行这些操作,游历控制器312可以控制游历时间。基于游历时间,游历控制器312可以调整相机的位所和特征时间。为了使游历暂停,游历控制器312可以停止游历时间。为了使游历倒回,游历控制器312可以减少游历时间。为了使游历快进,游历控制器312可以以较大速率增加游历时间。为了章节跳过,游历控制器312可以将游历时间设置为下一或前一动作的游历时间。
[0045] 游历可以是可逆的。例如,将游历倒回至其开始可以将GIS返回到游历开始时其所处的状态。游历控制器312可以接收改变客户端的状态的指令,诸如“(<更新>)”KML标签。作为结果,游历控制器312可以在播放游历时更新GIS的状态。但是为了维护可逆性,游历控制器312可以在使游历倒回或退出时将GIS返回到其先前状态。将在下面更详细地描述“”KML标签。
[0046] 游历控制器312还可以使用户能够通过环视来超控正播放的游历。用户可以例如通过移动鼠标或选择键盘上的箭头键来环视。响应于用户输入,游历控制器312可以调整虚拟相机的取向。尽管虚拟相机的取向可以改变,但是游历时间可以继续流逝,以及虚拟相机可以继续移动通过游历。以这种方式,用户可以在继续通过游历时查看周围环境。
[0047] 如前所述,游历控制器312可以根据动作序列来播放游历。动作序列可以由游历编辑器318确定。在一个示例中,游历编辑器318可以提供使用户能够定义动作的用户界面。然后可以将包括有关游历的任何飞至动作的动作编码为诸如KML的格式。KML然后可以由游历控制器312读取来为游历内插样条。在替选实施例中,游历编辑器318可以使用户能够定义虚拟相机随着时间的推移的连续路径。具有连续路径,游历控制器312不需要内插样条。为了定义连续路径,用户可以移动虚拟相机通过地理信息,以及游历记录器320可以记录虚拟相机的位所(以及可能取向)。参考图6A-B描述了可以由游历编辑器318和游历控制器312使用的示例用户界面。
[0048] 除相机位所外,游历记录器320可以记录其它动作。其它动作包括弹出信息气球以及更新GIS客户端中的状态值。如下所述,更新状态值可以改变地理特征的属性,诸如可见性、不透明度和位所。
[0049] GIS客户端302和GIS服务器340中的每一个可以在任何计算设备上实现。这样的设备可以包括但不限于具有用于执行以及存储指令的处理器和存储器的设备。这样的设备可以包括软件、固件和硬件。软件可以包括诸如浏览器的一个或多个应用和操作系统。硬件可以包括但不限于处理器、存储器、图形用户界面显示器和通信接口。例如,通常GIS客户端302和GIS服务器340每一个可以在任何计算设备(或计算机设备组)上实现,所述任何计算设备(或计算机设备组)包括但不限于:计算机、移动设备(诸如手持设备、移动电话、个人数字助理、PDA或膝上型机)、工作站、嵌入式系统、游戏控制台、信息亭、机顶盒、电视或计算机集群。在一些应用中,GIS客户端302可以由偏好便携性的用户或诸如移动设备或计算机的相对便宜带有较少处理能力和存储器的计算设备使用,而GIS服务器340可以是带有相对多处理能力和存储器的计算机设备,诸如计算机、计算机集群或工作站。
[0050] 用户交互模块310、游历控制器312、运动模块314、游历解释器316、游历编辑器318、游历记录器320和渲染器模块322中的每一个可以在硬件、软件、固件或以上的任何组合中实现。
[0051] 图4是图示了可以在GIS 300的操作中使用的用于播放游历的方法400的流程图。方法400以在步骤402确定游历路径开始。虽然在方法400的开始图示了步骤402,但是本领域技术人员应当认识到,虚拟相机的路径可以在游历期间实时确定。游历路径可以通过从飞至动作序列内插样条来确定。
[0052] 总的来说,步骤404至414形成循环。在循环的开始,可以将游历时间设置为0。基于游历时间,在步骤404移动虚拟相机,以及在步骤406确定特征时间。在408可以根据特征时间来显示特征。在循环期间,在步骤410和412游历时间可以根据用户控制来增加或改变。最后,在步骤414当到达游历的末尾时循环终止。将在下面更详细地描述每一个步骤。
[0053] 在步骤404,根据游历时间将虚拟相机移动到新的位所和可能取向。由于游历时间设置为0,将虚拟相机置放在游历的开始处。随着游历时间增加,虚拟相机可以沿着在步骤402中确定的路径移动。
[0054] 在步骤406,确定特征时间。可以根据游历时间来确定特征时间。在步骤408,显示与带有在步骤406中确定的特征时间的特征一致的特征。将参考图5更详细地描述步骤406和408。
[0055] 图5示出了根据一个实施例图示游历时间可以如何对应于特征时间的图500。图500示出了游历时间线520可以如何对应于特征时间线510。如前所述,每一个特征可以具有特征时间。游历中的每一个动作可以具有游历时间和特征时段。在动作的游历时间,只有具有在特征时段内的特征时间的特征可以被显示。在动作之间,可以内插特征时段,以及只有具有落入内插的特征时段中的特征时间的特征可以被显示。因此,随着游历时间流逝,所显示的特征根据其特征时间而变化。参考图500描述了特征时间随游历时间如何变化的示例。
[0056] 在图500中,动作522具有0秒的游历时间以及从1820年1月1日至1870年1月1日的特征时段。因此,在游历开始,只有具有在1820年1月1日至1870年1月1日之间的特征时间的特征可以被显示。在一个示例中,得克萨斯共和国可以被表示为在GIS中的具有特征时间的特征。得克萨斯共和国特征可以具有1836年3月1日的特征时间。在该示例中,由于1836年3月1日在1820年1月1日和1870年1月1日之间,所以在游历开始,得克萨斯共和国特征被显示。
[0057] 在替选实施例中,每一个特征可以具有特征时段。例如,得克萨斯共和国特征可以具有1836年3月1日至1845年12月29日的特征时段。在该示例中,如果动作的特征时段的任何部分落在1836年3月1日和1845年12月29日之间,则特征可以被显示。
[0058] 在游历中,下一动作526可以具有5秒的游历时间。动作526具有更短的特征时段—从1849年7月4日到7月5日。得克萨斯共和国特征的特征时间不在动作526的时段中。因此,得克萨斯共和国特征在游历时间为5秒时不会出现。
[0059] 如前所述,得克萨斯共和国特征在如由动作522所定义的游历时间为0秒时出现,但是其在如由动作526所定义的5秒时没有出现。下一问题是在0至5秒之间显示哪些特征。没有具有在0至5秒之间的游历时间的动作定义特征时段。然而,如内插524所示,可以内插特征时段。图示出了线性内插,然而可以使用其它内插。通过在动作之间内插特征时间,所显示的特征在时段之间逐渐转变。
[0060] 返回参见图4,在步骤410执行任何游历命令。如前所述,一些游历命令没有打断游历。非打断的游历命令可以包括环视、改变地理数据的可见性以及修改用户界面视图。其它游历命令包括控制游历的时间线的命令。这些命令包括暂停、倒回、快进和章节跳过。这些命令在步骤412可以影响如何改变游历时间。如果没有接收到控制时间线的命令,则游历时间按照预定量增加。
[0061] 如参考图1B所描述的,游历命令可以由用户输入。替选地,可以将游历命令作为例如以KML形式编码的动作接收。在一个示例中,以KML形式编码的游历命令可以使游历时间暂停直到接收到用户输入。在另一个示例中,以KML形式编码的游历命令可以指定游历遵循的循环。
[0062] 在步骤414,可以将游历时间与游历长度进行比较。如果游历时间等于或大于游历长度,则循环终止以及游历结束。
[0063] 如前所述,GIS可以包括使用户能够创建以及编辑游历的游历编辑器。图6A-B示出了包括游历编辑器的GIS的截屏。
[0064] 图6A示出了GIS的截屏600。截屏600包括地点菜单610。地点菜单610具有游历选项602。双击选项602可以播放旧金山的游历。右击选项602可以显示菜单604。菜单604向用户提供编辑选项606和播放选项608。再次,播放选项608可以播放游历。编辑选项606可以使用户转变到如图6B中的编辑界面。
[0065] 图6B示出了图示用于编辑游历的界面的截屏650。截屏650包括面板660。面板660具有描绘游历中的动作的缩略图。诸如缩略图662的缩略图预览虚拟相机从动作的位所的透视景。面板660还具有用于游历上的其它可能的动作的图标。例如,图标662指示信息气球将出现,以及图标666指示游历中的暂停。
[0066] 截屏650还具有记录按钮668。当选择了记录按钮668时,GIS开始记录虚拟相机的位所。例如,GIS可以从虚拟相机的位所创建飞至动作。替选地,GIS可以记录虚拟相机随着时间的推移的路径。GIS还可以记录其它动作,如同弹出气球和诸如切换KML特征的可见性或改变特征的位所和/或不透明度的更新地理空间的内容。
[0067] 图7是图示了可以用于指定游历的示例KML模式的图700。图700图示了未包括在常规KML元素中的若干新的或经修改的KML元素。新的或经修改的KML元素包括Tour(游历)元素702、AbstractView(抽象视图)元素704、Keyframe(关键帧)元素706和AbstractAction(抽象动作)元素708。
[0068] Tour元素702指定游历。例如,Tour元素702可以如图2中所图示指定游历。Tour元素702可以从Feature(特征)元素710得到。Tour元素702可以包括有关游历的信息,诸如标题和描述。此外,Tour元素702包括包含AbstractAction元素708序列的播放列表。在一个实施例中,Tour元素702可以具有模式:
[0069]
[0070] Tour元素702的一个示例是:
[0071]
[0072] 如前所 述,Tour元素702可 以包括AbstractAction元 素708序列。 每一个AbstractAction元素708可以描述包括游历时间(诸如持续时间)的动作。AbstractAction元素708用作为可以在游历期间执行的多个不同类型的动作的基础元素。
例如,AbstractAction元素708可以用作为FlyTo(飞至)元素722、Wait(等待)元素724、TourControl(游历控制)元素726和Update(更新)元素728的基础。AbstractAction元素708取决于特定应用还可以包括Update元素或由“更多?”指示的其它元素。
[0073] Wait元素724指示GIS使游历暂停指定的持续时间。在持续时间内,虚拟相机可以保持静止,以及所显示的特征时段可以不改变。同时,游历时间可以继续流逝。在一个示例中,包括Wait元素724的KML片断为:
[0074]
[0075] float
[0076]
[0077] TourControl元素726编码用于回放游历的控制指令。例如,TourControl元素726可以使游历时间暂停直到用户输入继续游历的愿望。TourControl元素726还可以用于定义循环的游历。例如,TourControl元素726可以用于为游历定义环形路径,使得游历继续直到用户停止它。在另一个示例中,一系列使游历暂停的TourControl元素726可以一起创建游历中的幻灯片显示效果。
[0078] Update元素728改变GIS客户端中的状态值。状态值可以是诸如编码在KML文件中的特征的地理特征的属性。在示例中,特征可以是placemark(地标)、GroundOverlay(地面覆盖)、ScreenOverlay(屏幕覆盖)或其它地理特征。特征可以具有诸如可见性、位所、取向、不透明度以及尺寸的属性。通过更新可见性属性,Update元素728可以使特征出现或消失。通过更新位所属性,Update元素728可以移动特征。
[0079] 经过一段时间,Update元素728可以将属性转变为新的状态。为此,Update元素728可以包括指示游历时间在状态转变期间应当流逝的时间的持续时间值。例如,Update元素将特征的位所改变为点Y。Update元素具有5秒的持续时间。特征在游历时间为0秒时可以被置放在点X。在5秒后特征可以位于点Y。在0至5秒之间,特征的位所被内插。以这种方式,Update元素728可以用于将特征逐渐转变到新的位置,以创建动画效果。
Update元素728还可以逐渐改变诸如尺寸、不透明度、取向、颜色和几何的其它特征属性,来创建动画效果以及探察地理编码的内容。例如,可以使特征成形为第一多边形,以及可以通过改变几何属性将特征在形状上转变为第二多边形。
[0080] FlyTo元素722编码动作。FlyTo元素722指示GIS将虚拟相机移动到游历中的新位置。FlyTo元素722编码地理信息内的位置和可选的特征时间。如关于图2所描述的,FlyTo元素722可以具有指定如何移动虚拟相机的两种类型—“弹跳”和“平滑”—中的一种。最后,FlyTo元素722可以包括定义转变到的位置和特征时间的AbstractView元素704。在一个实施例中,FlyTo元素722可以具有模式:
[0081]
[0082] 一个示例FlyTo元素722是:
[0083]
[0084]
[0085] 如前所述,AbstractView元素704可以包括特征时间。特征时间可以利用TimePrimitive元素来定义。TimePrimitive元素可以定义时间点或时间段。在一个实施例中,AbstractView元素704可以具有下述模式扩展:
[0086]
[0087] 尽管在图700中未示出,但是KML模式还可以包括定义信息气球的BalloonPop元素。信息气球可以以气球图形形式向用户显示诸如文本、图像或视频的内容。参考图2描述了信息气球。
[0088] 此外,KML模式可以具有PhotoOverlay(照片覆盖)元素。PhotoOverlay元素可以指示GIS将虚拟相机飞入照片中。在一个实施例中,GIS可以将虚拟相机飞至照片的焦点,并使用户能够在照片导航模式下在照片中导航。
[0089] 在一个实施例中,使用户飞入照片导航模式实际上将虚拟相机移动到照片的固有源。固有源是在图像表面前面的在拍摄照片的相机的焦距处或稍微超出拍摄照片的相机的焦距的点。使虚拟相机垂直于表面定向,以使虚拟相机面向表面。当GIS进入了照片导航模式时,GIS可以改变虚拟相机的焦距和查看平截头体以匹配拍摄照片的相机的焦距和查看平截头体。
[0090] 在照片导航模式下的导航操作可以包括摇摄、缩放、自动驾驶以及操纵杆运动。摇摄在鼠标按钮被压下时拖动图像跟随鼠标移动。缩放模拟相机更加接近图片。缩放可以导致从图像金字塔显示较高分辨率图像瓦片。当用户双击了点时,自动驾驶运动可以模拟相机平滑地聚中于图像中的该点。自动驾驶可以取决于用户双击哪个鼠标按钮来放大或缩小。操纵杆运动使用键盘箭头或操纵杆界面来例如以恒定速度环绕视图。
[0091] KML模式还可以包括播放声音的元素。KML元素可以包括对诸如MP3或WAV文件的声音文件的引用。使用该元素,游历可以具有伴随配乐。
[0092] 图8示出了根据图700中所图示的模式来定义游历的KML代码800。KML代码800包括定义包括美国独立战争特征和波士顿茶叶事件特征的若干特征的代码部分802。每一个特征具有相关联的特征时间跨度。美国独立战争特征在1775年开始并且在1776年结束,以及波士顿茶叶事件在1773年12月16日开始并且在1773年12月17日结束。
[0093] 在代码部分802之后是定义游历的代码部分810。游历以导致虚拟相机在10秒期间弹跳到新的位置的FlyTo元素812开始。然后,Wait元素814使虚拟相机保持静止1秒。在Wait元素814之后是TourControl元素816。TourControl元素816使游历暂停直到接收带有恢复游历的指令的用户输入。在接收了用户输入后,Wait元素818使虚拟相机保持静止0.2秒。然后,FlyTo元素820使虚拟相机弹跳到新的位置。在新的位置,Wait元素822使相机保持静止5秒。在5秒流逝后,游历终止。
[0094] 以这种方式,本发明的实施例控制虚拟相机随着时间的推移的位所。这改善了游历用户体验。
[0095] 发明内容和摘要部分可以阐明发明人考虑的本发明的一个或多个而非所有的示例性实施例,因此发明内容和摘要部分并不意在以任何方式来限制本发明和所附的权利要求。
[0096] 在上面借助于说明指定的功能及其关系的实现的功能构造块来描述了本发明。在此为了便于描述,任意地限定了这些功能构造块的边界。可以限定替选边界,只要所述指定的功能及其关系被适当地执行。
[0097] 特定实施例的前述描述如此充分地揭示了本发明的一般特性,使得其他人可以在不背离本发明的一般思想的情况下,通过应用在本领域的技术内的知识而容易地修改和/或调整本发明的一般特性以用于这样的特定实施例的各种应用,而不用进行过度的实验。因此,基于在此提供的教导和指导,这样的调整和修改意在在所公开的实施例的等同物的含义和范围内。应当明白的是,在此的措词或术语用于描述而非限制的目的,因此本说明书的术语或措词应当由技术人员根据所述教导和指导来解释。
[0098] 本发明的宽度和范围不应当由上述示例性实施例的任何一个限制,而是应当仅根据所附权利要求及其等同物来限定。

当前第1页 第1页 第2页 第3页
相关技术
信息系统相关技术
地理信息相关技术
丹尼尔·巴尔凯发明人的其他相关专利技术