专利名称:用于提供三维图形用户界面的系统和方法
技术领域:
本发明针对用于操作和访问计算机上的信息的图形用户界面,具 体来说,涉及三维("3D")交互式计算界面和分类界面,包括来自实 时和静态源的信息,包括,但不仅限于,来自Web的元搜索结果; 来自API、 Web服务、搜索引擎、应用程序,以及网络的信息;以 及最终用户的桌面上的文件。
背景技术:
当前,人们使用计算机的方式是向计算机中输入信息以取得给定 输出。常常这会是一系列繁瑣的步骤(鼠标点击和键盘输入),才能 运行应用程序和文档或导航到信息.为获得新的计算体验,人们常常 必须关闭他们的当前应用程序和文档,隐藏它们或通过将它们拖到彼 此的上方,使他们在有限的桌面上重叠起来,然后,挖掘文件夹内的 文件夹,才能在日后再次查找到它们,用户的桌面是有限的,必须一 次又一次地反复执行相同的任务.这会浪费时间,因为(i)需要许多 次鼠标点击操作才能打开和关闭文档,(ii)要求人记住她(他)为给 定目的可能需要的程序和文档的全部組合,(iii)要求人创建详细的分 层的文件夹系统,以有助于存储和调用应用程序和文档的过程,这主 要因为最终用户在他们的桌面上拥有的空间有限.人们当前在操作系统内进行计算,操作系统在2D(二维)可视 显示器中呈现计算机输出,如文档、应用程序,以及操作系统的界面。 在通过启动程序被加栽到计算机中之后,操作系统控制计算机中的所 有其他程序。通常,操作系统的召集了显示此输出的式样的组件叫做 GUI或图形用户界面.成功的GUI将使用包括利用诸如图标之类的 图形元件的比喻,以使操作系统的输入和输出更容易管理的屏幕呈 现.大多数计算机操作系统包括利用二维图形的GUI,以捕获、处理, 和以2D形式(只有高度和宽度)输出来自最终用户的所有输入,
此输出通常被限制在大小有限的桌面上绘制的具有给定长度和 宽度的窗口 (即,计算机的工作区)的范围内.当计算机的输出超过 此有限的工作图形区域时,GUI (窗口 )的元素通常被拖到彼此的上 面,以便GUI組件彼此重叠在一起。在某些操作系统中,在桌面上 的这些重叠窗口下面产生了阴影,使它们显得好像它们有深度.此技 术可使最终用户更加轻松地识别重叠窗口 。
我们生活在3D(三维)世界中,我们看到,根据数学的三维坐 标系,物体不仅有水平位置(x)和垂直位置(y),而且还具有深度(z) (也称为时间).对于创建最终用户的计算会话,这种以视觉计算机 比喻方式表达深度或时间的想法是非常重要的.通过在不重叠或替代 在有限的桌面上所存在的内容的虚拟空间中绘制计算机的新的输出 (而不是替换),创建贯穿深度和时间的新的虚拟空间.例如,如果 一个人移近URL h加:〃www.vahoo.com的网页,然后点击一个超级 链接(例如,finance),则其窗口中的当前网页将被替换为Yahoo! Finance的网页.
3D在计算中主要用于下列领域(1)游戏,(2) CAD/医学可视 化,以及(3)虚拟世界.虚拟世界是其用户可以栖息并通过化身与其 进行交互的计算机模拟的环境.这种栖息通常以似人机器人(或其他 图形或基于文本的化身)的两维或三维图形表示的形式来表示.
许多桌面操作系统的导航窗口使用控件和按钮,以4吏最终用户导 航到文件系统的层次结构中的其他文件夹和窗口.常常,在导航到新窗口时,新窗口替换当前窗口的显示.相应地,非常希望提供一种改 进的图形用户界面,可以使用户有效地在虚拟空间中导航,其中,窗 口的组可以轻松地组织、存储和检索。
发明内容
本发明解决了采用当前技术的系统和方法的缺点.具体来说,本
发明旨在提供用于提供改进的3D图形用户界面的系统和方法.
根据这里所描述的实施例的一个方面,提供了一种图形用户界 面,该图形用户界面使用用户的计算机的二维("2D")显示器,以在 模拟的实时3D沉浸式(immersive)笛卡儿空间显示三维("3D") 对象.
在一个实施例中,提供了一种系统,其中,新的计算输出占用了 原始输出附近的虚拟空间,而不会丟失原始输出.当最终用户点击网 页上的超级链接时,在虚拟空间中出现新的网页,该新的网页链接到 但是不替换其窗口中的当前网页;而是在新的虚拟空间中绘制新的网 页.这样,最终用户就可以访问在时间上过去的视觉计算时刻.
根据这里所描述的实施例的另 一个方面,提供了 一种用于提供三 维图形用户界面的方法,包括接收来自最终用户的输入、响应接收到 的最终用户输入,从至少一个计算机源捕获计算输出,并将计算输出 作为显示给最终用户的三维虚拟空间内的至少两个对象呈现出来.
在一个实施例中,该方法进一步包括生成时间线,该时间线包括 在虚拟空间内呈现的每一个对象的图标,其中,图标是根据对象在虚 拟空间内呈现的时间按线性的时间顺序组织的,该方法还包括在虚拟 空间内显示时间线.在另一个实施例中,该方法进一步包括提供数据 库模块(用于存储和分类有关在虚拟空间内呈现的每一个对象的数 据),将数据库模块内的超级链接提供到虚拟空间内呈现的每一个对 象的相应的视点,并显示有关与虚拟空间一起呈现的数据库模块内的 一个或多个对象的数据,
根据这里所描述的实施例的另 一个方面,提供了 一种用于提供三 维图形用户界面的系统,包括显示屏幕、用于从最终用户那里接收输入的输入设备、可操作地连接到显示屏幕和用户输入设备的处理器模 块,以及可操作地连接到处理器模块的存储器模块。优选情况下,存 储器模块包括可执行代码,用于让处理器模块响应接收到的最终用户 输入,从至少一个计算机源捕获计算输出,并将计算输出作为显示在 显示屏幕上的三维虚拟空间内的至少两个对象呈现出来.
在一个实施例中,优选情况下,存储器模块进一步包括让处理器 模块生成时间线并在虚拟空间内显示时间线的可执行代码,该时间线 包括在虚拟空间内呈现的每一个对象的图标,其中,图标是根据对象 在虚拟空间内呈现的时间按线性的时间顺序組织的。在另 一个实施例 中,存储器模块进一步包括可执行代码,用于让处理器模块提供数据 库模块(用于存储和分类有关在虚拟空间内呈现的每一个对象的数 据),将数据库模块内的超级链接提供到虚拟空间内呈现的每一个对 象的相应的视点,并显示有关与虚拟空间 一起呈现的数据库模块内的
一个或多个对象的数据.
根据这里所描述的实施例的另 一个方面,提供了 一种用于在计算 机网络中提供三维图形用户界面的系统,包括连接到计算机网络的服 务器和与服务器关联地执行的用户界面应用程序,以提供从最终用户 那里接收输入的功能,响应接收到的最终用户输入,从至少一个计算 机源捕获计算输出,以及将计算输出作为显示给最终用户的三维虚拟 空间内的至少两个对象呈现出来.
在一个实施例中,与服务器关联地执行的用户界面应用程序进一 步提供生成时间线以及在虚拟空间内显示时间线的功能,该时间线包 括在虚拟空间内呈现的每一个对象的图标,其中,图标是根据对象在 笛卡儿空间内呈现的时间按线性的时间顺序組织的 在一个实施例中
中,与服务器关联地执行的用户界面应用程序进一步提供如下功能 提供数据库模块(用于存储和分类有关在虚拟空间内呈现的每一个对 象的数据),将数据库模块内的超级链接提供到虚拟空间内呈现的每 一个对象的相应的视点,并显示有关与虚拟空间一起呈现的数据库模 块内的一个或多个对象的数据。根据这里所描述的实施例的另 一个方面,提供了 一种用于提供三
维图形用户界面的网络系统,包括包括彼此进行通信的多个服务器 的计算机服务器网络;可操作地连接到计算机服务器网络的至少一个 显示屏幕;用于从最终用户那里接收输入的至少一个输入设备,该输 入设备可操作地连接到计算机服务器网络;以及软件模块,用于向最 终用户提供一 系列屏幕显示,该软件模块可被计算机服务器网络的一 个或多个服务器访问.优选情况下,软件模块包括用于指示服务器响 应接收到的最终用户输入而从至少一个网络源捕获计算输出,并将计 算输出作为显示在显示屏幕上的模拟三维笛卡儿空间内的至少两个 对象呈现出来的指令。
在一个实施例中,软件模块进一步包括指示服务器生成时间线并 在笛卡儿空间内显示时间线的指令,该时间线包括在笛卡儿空间内呈 现的每一个对象的图标,其中,图标是根据对象在笛卡儿空间内呈现 的时间按线性的时间顺序组织的。在另一个实施例中,软件模块进一 步包括指令,用于指示服务器提供数据库模块(用于存储和分类有关 在虚拟空间内呈现的每一个对象的数据),将数据库模块内的超级链 接提供到虚拟空间内呈现的每一个对象的相应的视点,并显示有关与 虚拟空间一起呈现的数据库模块内的一个或多个对象的数据,
根据这里所描述的实施例的另 一个方面,提供了 一种用于存储计 算机程序的计算机可读取的记录介质,该计算机程序使计算机执行 从最终用户那里接收输入;响应接收到的最终用户输入,从至少一个 计算机源捕获计算输出;以及将计算输出作为显示给最终用户的模拟 三維笛卡儿空间内的至少两个对象呈现出来.
在一个实施例中,计算机程序使计算机生成时间线并在笛卡儿空 间内显示时间线,该时间线包括在笛卡儿空间内呈现的每一个对象的 困标,其中,图标是根据对象在笛卡儿空间内呈现的时间按线性的时 间顺序组织的.在另一个实施例中,计算机程序使计算机提供数据库 模块(用于存储和分类有关在虚拟空间内呈现的每一个对象的数据), 将数据库模块内的超级链接提供到虚拟空间内呈现的每一个对象的相应的视点,并显示有关与虚拟空间 一起呈现的数据库模块内的 一个 或多个对象的数据。
根据这里所描述的实施例的另一个方面,提供了一种3D图形 用户界面,该图形用户界面将用户从一个计算位置带到另 一个计算位 置,同时产生三维("3D")的无限空间的错觉.通过捕获用户的传统 的二维桌面的输出,3D GUI通过以3D的方式绘制窗口或程序的其 他图形表示,在3D空间无缝地将此输出呈现出来.在本发明的一个 实施例中,3D GUI预期用户接下来可以寻找什么(例如,搜索结果 中的下一个网页),消除了休眠的计算时间,并通过自动地绘制新的 计算体验而同时在视觉上记录旧的,将用户置于点击减少的计算环境
中,
因为3D GUI以3D方式产生无限空间的错觉,因此,它可以 产生用户的计算会话的视觉历史,其中,用户可以通过简单地导航到 以前记录的状态或视点,访问过去的视觉计算事件(或快照).相应 地,3D GUI可以充当用户的计算会话的视觉按时序排列的历史,其 中,用户可以通过3D空间中的它们的位置(或视点),命名它们当 前具有的计算机体验,并在以后通过调用名称或标题,再访问它.3D GUI通过记住用户最后离开的位置-在视觉上-以便下一次用户 需要相同的系列输入以取得该相同的给定输出,自动化计算,3D GUI 将在3D空间(用户最后离开的位置的视觉历史)给用户导航.
在一个实施例中,3DGUI可以作为计算机的桌面上的浏览器窗 口内的Active X控件运行(连同诸如Internet Explorer之类的 Web浏览器程序),此外,本发明还可以作为独立的应用程序运行, 或嵌入在HTML页面内.例如,佩带了不同式样的珠宝的模特儿的 一系列照片的3D虚拟空间(被保存在3D GUI中)可以嵌入在珠 宝电子商务站点,具体方法是,根据組件的语法,将3D GUI的 ActiveX控件版本的代码嵌入到HTML页面的标记语言中。
程序可以,例如,和Internet Explorer、其他Web浏览器或 独立应用程序一起运行.3D GUI可使用户在他们的计算机或Web上创建3D空间。通过编程访问或帮助器应用程序(例如,通过3D 空间内的交互式图标代表)3D GUI可使用户查找数据、应用程序、 由应用程序所创建的文件、桌面窗口、 HTML页面,以及3D应用 程序,它有助于或请求它们的交互式3D空间中的这些文件和程序的 图形输出。 一般而言,本发明在3D无限空间中显示来自用户的2D 有限桌面的图形,同时保留2D程序的功能和文档。用户能够在3D 空间内使用这些文件和应用程序,无需限制.
根据这里所描迷的实施例的另一个方面,3D GUI可使用户即时 地创建一个或多个3D空间,以有助于文件和应用程序的图形输出. 例如,用户可以具有将多个3D空间链接在一起,从而产生3D空 间的网络的选项.不管文件或应用程序位于什么位置(例如,在同一 个文件夹内、在子文件夹中,在不同计算机上,在网络内,在不同网 络上,跨因特网等等),用户通过其本机程序完全可以访问文件,或 通过默认浏览器完全可以访问网站.如此,3D GUI可使不同的计算 机程序的输出在视觉上聚焦于一个可展开的、可改变的3D空间中。
通过考虑优选实施例的下列详细描述,那些精通本技术的人将更 加完整地理解所说明的3D图形用户界面,并实现额外的优点和其目 标.将参考将首先简要地描述的所附的图形.
图1A-1C提供了详细描迷了用于提供改进的三维图形用户界 面的过程的一个实施例的方框图.
图2是说明了基于用户输入的周期性地重绘3D笛卡儿空间 的过程的流程图.
图3是显示了实现了虚拟空间中的交互式复合紋理映射,以及 文互性和持久性的典型的处理信息方法的流程图.
图4A和4B提供了显示用于从超级链接创建网页或其他内容 的3D输出的过程的流程图.
图5A是用于提供3D GUI的系统的一个实施例的方框困.
图5B是用于在计算机网络中提供3D GUI的系统的一个实施例的方框图。
图5C是用于提供3D GUI的网络系统的一个实施例的方框图。
图6是详细描迷了用于排序3D堆栈中的网页阵列的过程的 方框图.
图7是显示了用于排序3D堆栈中的网页阵列的过程的方框图。
图8是其中多个用户可以以协作方式同时查看和修改虚拟空间 的过程和系统的流程图。
图9显示了 3D GUI应用程序窗口的一个实施例.
图10显示了 3D GUI应用程序窗口的另一个实施例,
图11显示了具有打开的数据库模块的3D GUI应用程序窗口 的实施例。
图12显示了 3D GUI应用程序窗口的一个实施例的虚拟空间 内的窗口的布局.
图13A和13B显示了具有打开的数据库模块的3D GUI应 用程序窗口的另一个实施例,
图14显示了具有画笔功能的3D GUI的实施例.
图15显示了 3D GUI应用程序窗口中的窗口和时间线图标的 示范性布局.
图16A和16B显示了 3D GUI应用程序窗口中的3D堆栈 和时间线图标的示范性布局.
图17A-17C显示了 3D GUI应用程序窗口中的窗口和时间线 图标的示范性布局.
图18显示了 3D GUI应用程序窗口中的3D堆栈和时间线
图标的另一个示范性布局.
图19显示了为最终用户将广告提供到虚拟空间中的3D GUI 的实施例.
图20显示了数据库模块内打开了"Favorites"帮助器应用程序的3D GUI.
图21显示了数据库模块内打开了"Searches"帮助器应用程序 的3DGUI。
图22显示了在虚拟空间内打开的音乐文件的示范性帮助器应 用程序的3DGUI。
具体实施例方式
本发明满足了提供改进的三维图形用户界面的系统和方法的必 要性.具体来说,本发明旨在提供一种系统和方法,它们通过接收来 自最终用户的输入、响应接收到的最终用户输入,从至少一个计算机 源捕获计算输出,并将计算输出作为显示给最终用户的三维虚拟空间 内的至少两个对象呈现出来,显示三维图形用户界面.优选情况下, 该方法进一步包括生成时间线,该时间线包括虚拟空间内呈现的每一 个对象的图标,其中,每一个图标都是根据对象在虚拟空间内呈现的 时间按线性的时间顺序组织的。在随后的详细描述中,类似的元素编 号用于描迷一个或多个图形中所显示的类似的元素。
这里描述了这样的系统,该系统用于执行以下操作(i)有选择 地从不同的源(本地计算机或网络)捕获计算输出和信息(网页、应 用程序、文档、桌面和/或在计算机上可以可视化的任何东西);(ii)使 捕获的输出和信息通过在共同的3D虚拟空间中呈现或绘图来在视 觉上聚焦;(iii)通过利用新颖的3D GUI以有意义的方式組织此呈 现的输出,以使最终用户以更加容易和更有效的方式组织、可视化、 搜索和排序此捕获的输出和信息;以及(iv)共享这些虚拟空间,保存
这些虚拟空间,将它们发布到Web上,通过电子邮件发送它们,或 使多个用户通过同时查看和修改它们来进行协作.
这里描迷了用于基于2D操作系统的输出的现有基础架构,创 建和管理此新的3D计算体验的系统.下面进一步详细描述了图 1A-1C中所描绘的此系统的优选实施例.根据这里所描述的实施例的 一个方面,提供了用于创建3D交互式计算接口和分类接口的系统和 方法,包括来自实时和静态源的信息,包括来自Web的元搜索结果;来自API、 Web服务、搜索引擎输出、应用程序输出,以及网络的 信息;以及独特的交互式3D接口中的最终用户的台式机/笔记本电 脑的文件。
"元搜索"是指其中查询被提交到一个以上的搜索引擎或目录,并 且其中,从所有引擎报告结果(可能在删除重复和排序之后)的搜索。 "API"是指能使一个程序使用由另一个程序(无论通过调用该程序或 通过被该程序调用)所提供的功能的接口.在较高的级别,API是一 组由编程系统提供的功能,如此,特定系统中的API的组合说明了 该系统可以执行什么操作。"Web,,是指由公共协议链接在一起的服务 器的网络,允许对数百万的超文本资源进行访问.它也称为WWW、 W3和World Wide Web。 "Web服务,,是指通过因特网在各种平台 和框架上运行的不同软件应用程序之间进行交互操作的标准方法,它 是通过网络并基于XML标准提供信息服务的软件,通过URI (通 用资源标识符)地址和XML定义的信息接口访问XML标准."实 时"是指一种传输或数据处理模式,其中,在交互式对话中输入数据, 在该会话中,应用程序可以足够快地作出响应,以影响以后的数据输 入.
本发明提供了一种图形用户界面(GUI),该图形用户界面使用最
终用户的计算机的二维显示器来在模拟的实时三维沉浸式笛卡儿空 间中显示信息(例如,映射到3D对象的网页及其他信息).程序在 Web浏览器(例如,Internet Explorer和Mozilla Firefox)内运行 或作为与本地操作系统兼容的独立应用程序来运行.3D GUI程序在
计算机的桌面上的二维窗口内创建三维空间的外观,如图10的实施 例中所显示的.该程序可以利用无所不在交互式和沉浸式3D呈现浏 览器或播放器,它们将基于浏览器所固有的绘图语言编写的髙级语言 代码(程序),对3D绘图指令进行处理.
程序通过遵守透枧图的视觉规则,在最终用户的计算机的二维显 示器或窗口内创建看起来是无穷大的模拟三维笛卡儿空间,在透视图 中,显得更靠近自已的几何形状或对象显得较大(涉及它们的空间属性),显得距离较远的对象或几何形状显得较小,如图10-12的示范 性实施例所示,程序通过在由从观察者感觉到的距离确定的相对于彼 此的空间中重绘对象,在二维窗口内模拟三维空间。在远处的对象显 得较小,而靠近的对象显得较大.
程序创建模拟的实时三维沉浸式笛卡儿空间的交互性。当用户沉 浸在此3D空间中时,程序将从用户那里获取由事件处理程序进行处 理的指令,事件处理程序是由图形用户界面启动的控件呈现的,这些 控件可以通过移动得靠近它、远离它,改变他们的角度或两者,改变 他们的透视图或视点(被定义为本地坐标系或三维空间中的位置或可 视透视图)。 一旦程序接收到用户启动的输入,以改变场景的可视透 视图,程序将重绘场景,以反映用户启动的输入,以及对可视透视图 的更改。
才艮据这里所描迷的实施例的一个方面,提供了一种用于提供三维 图形用户界面的系统和方法.请参看图5A,在一个实施例中,系统 710包括显示屏幕712和用于从最终用户那里接收输入的输入设备 714、 716。系统710进一步包括处理器模块718 (可操作地连接到 显示屏幕712和用户输入设备714、 716)和存储器模块720 (可操 作地连接到处理器模块718).
优选情况下,存储器模块720包括可执行代码,用于让处理器 模块718响应接收到的最终用户输入,从至少一个计算机源捕获计 算输出,并将计算输出作为显示在显示屏幕712上的三维虛拟空间 内的至少两个对象呈现出来.在一个实施例中,优选情况下,存储器 模块720进一步包括让处理器模块718生成时间线340的可执行 代码,该时间线340包括在虚拟空间300内呈现的每一个对象的图 标,其中,围标是根据对象在虚拟空间300内呈现的时间按线性的 时间顺序組织的.在另一个实施例中,优选情况下,存储器模块720 进一步包括可执行代码,用于让处理器模块718提供罗盘或数据库 模块440 (用于存储和分类有关在虚拟空间内呈现的每一个对象的数 据),将数据库模块内的超级链接提供到虚拟空间内呈现的每一个对象的相应的视点,并显示有关与虚拟空间300 —起呈现的数据库模 块440内的一个或多个对象的数据。
根据这里所描述的实施例的另 一个方面,提供了 一种用于在计算 机网络中提供三维图形用户界面的系统。请参看5B,在一个实施例 中,系统730包括连接到计算机网络(734、 736、 738、 740)的服 务器732和与服务器732关联地执行的提供从最终用户那里接收 输入的功能的用户界面应用程序;响应接收到的最终用户输入,从至 少一个计算机源捕获计算输出;以及将计算输出作为显示给最终用户
的三维虚拟空间内的至少两个对象呈现出来。在一个实施例中,优 选情况下,与服务器732关联地执行的用户界面应用程序提供生成 时间线340以及在虚拟空间300内显示时间线340的功能,该时 间线340包括在虚拟空间300内呈现的每一个对象的图标,其中, 图标是根据对象在笛卡儿空间300内呈现的时间按线性的时间顺序 组织的,在另一个实施例中,优选情况下,与服务器732关联地执 行的用户界面应用程序提供如下功能提供罗盘或数据库模块440
(用于存储和分类有关在虛拟空间内呈现的每一个对象的数据),将 数据库模块内的超级链接提供到虚拟空间内呈现的每一个对象的相
应的视点,并显示有关与虚拟空间300 —起呈现的数据库模块440 内的一个或多个对象的数据.
根据这里所描述的实施例的另 一个方面,提供了 一种用于提供三 维图形用户界面的网络系统.请参看5C,在一个实施例中,网络系 统750包括包括彼此进行通信的多个服务器(752、 754、 756、 758) 的计算机服务器网络751;与计算机服务器网络751进行通信或可 操作地连接到计算机服务器网络751 (直接或间接地)的至少一个显 示屏幕712;用于从最终用户那里接收输入的至少一个输入设备
(714、 716),输入设备(714, 716)可操作地连接到计算机服务器 网络751;以及软件模块760,用于向最终用户提供一系列屏幕显示, 软件模块760可被计算机服务器网络751的一个或多个服务器
(752、 754、 756、 758)访问.优选情况下,软件模块760包括用于指示服务器(752、 754、 756、 758)响应接收到的最终用户输入而从至少一个网络源捕获计算 输出,并将计算输出作为显示在显示屏幕712上的模拟三维笛卡儿 空间300内的至少两个对象呈现出来的指令。在一个实施例中,软 件模块760进一步包括用于指示一个或多个服务器(752, 754, 756, 758)生成时间线340的指令,该时间线340包括在笛卡儿空间300 内呈现的每一个对象的图标,其中,图标是根据对象在笛卡儿空间 300内呈现的时间按线性的时间顺序组织的.在另一个实施例中,软 件模块760进一步包括执行如下操作的指令用于指示一个或多个 服务器(752, 754, 756, 758)提供罗盘或数据库模块440 (用于存 储和分类有关在虚拟空间内呈现的每一个对象的数据),将数据库模 块内的超级链接提供到虚拟空间内呈现的每一个对象的相应的视点, 并显示有关与虚拟空间300 —起呈现的数据库模块440内的一个
或多个对象的数据.
在3D GUI创建的3D沉浸式空间内,用户的视点可以改变, 其中,"视点,,被定义为用户可以从中查看场景或文件的本地坐标系 (3D空间)中的特定位置或透视图.如此,可以使用叫做"罗盘"440 的界面,以帮助用户名、图、浏览3D空间中的视点,如图11的示 范性实施例中所显示的。这里,罗盘或数据库模块440 (位于虚拟空 间300的显示器的左边),可以用来记录当用户沉浸在3D空间时 的任何时候用户的当前视点.例如,条目442显示了罗盘440中的 索引的视点"Yahoo!,,.罗盘440可以用来将一个或多个名称分配到 记录的枧点,和/或将视点的名称作为名称集合中的 一个名称存储在关 系数据库中.名称构成了 3D空间的图以及浏览该图的方法.例如, 在一个实施例中,提供了一种线性图,叫做时间线340,具有多个困 标(502、 504、 506、 508).时间线中的图标502、 504、 506、 508代 表罗盘440中索引的视点,并分别对应于窗口 510、 512、 514、 518. 罗盘也可以充当到存储的名称/视点的关系数据库的用户界面.罗盘可 以具有下拉菜单,其中,每一个菜单都是存储了由用户分配的或由应用程序自动地生成的视点的名称和/或字段的记录(在关系数据库中)。 罗盘可以是可展开的,以有助于有菜单或记录的无穷大的阵列,从而 创建了表或记录的组。
在如图11所示的实施例中,3DGUI窗口的资源管理器窗格在 涉及Windows环境时充当罗盘440。在此窗格中,可以看出标记为 "节省的空间"450、"桌面"451、"收藏夹"452、 "Web浏览器,,453、"搜 索"454、"图像搜索,,455、"电影搜索"456、"搜索,,457、"图像,,458、 "声音/音乐,,459、 3D 460,以及"便笺,,461.这些选项卡代表了编程访 问或帮助器应用程序,下面进行了进一步详细的描述。
如图11的实施例所示,选择叫做"Web浏览器"453的选项卡, 展开它下面的Web浏览器茱单,以及网页(主窗口或虚拟空间中显 示的)(其URL是httD:〃www,vahoo,com,在涉及罗盘440时, 其视点名称的是"http:〃www.yahoo.com ■ Yahoo!"442 )的视点名称, 更具体来说,在罗盘440的菜单列出了网页(主窗口或虚拟空间中 显示的) (其 URL是 h加:〃www.vahoo.com ,
h加〃www.google.com_赁 httD:〃www,ebav,com 和
httD:〃www,msii,com)(在它们涉及罗盘时,也是这样列出的,其视 点名称是 "h加:〃www,vahoo,com -Yahoo!"442 、
"httD:〃www.google.com - Google" 443 、 "h加〃www.ebav.com -ebay" 444和"http:〃www.msn.com - MSN,, 445)的四个视点的名 称.如此,最终用户可以使用编程访问或帮助器应用程序(450-461) 让它们的内容呈现在3D虚拟空间中,可以让它们的内容的视点表示 形式自动地索引和組织于罗盘440中,并可以通过3D图标(502、 504、 506、 508)让罗盘440中的图形亊件的线性表示形式索引在时 间线340上.
在本发明的优选实施例中,可以使帮助器应用程序在窗口内(例 如,在3D空间内)显示文件和程序的输出.在本发明的替代的实施 例中,可以使编程访问或帮助器应用程序通过自定义界面(其图形设 计看起来像它们试图代表的现实世界的对象)显示信息.例如,请参看图22的实施例,用户可以为音乐文件运行帮助器应用程序或编程 访问.在点击声音/音乐的帮助器应用程序的图标之后,3D GUI将提 示用户查找他们的本地计算机上、网络计算机或万维网上的音乐文 件。然后,帮助器应用程序将在3D空间(300)中绘制音乐文件(优 选情况下,以压缩光盘的形式存在)的界面(680、 682、 684)。然 后,用户可以与音乐文件的图形表示(例如,CD的图形表示)进行 交互,以运行和播放界面690中显示的音乐文件.
存储的视点的命名可以作为罗盘中的一个菜单中的单个名称存 在,或作为多个菜单中的多个名称的组合存在。在一个实施例中,每 一个视点都只与每一个茱单中的一个名称关联。这样,用户可以选择 多个茱单中的多个名称,以创建有意义的名称的组合,这些名称组合
动态地基于选定的名称的关系,检索存储的视点.用户可以编辑罗盘 的菜单,从而,添加或删除类别或展开茱单。所有这些都可以在用户 创作和与他的或她的3D场景进行交互时实时地发生.用户也可以能 够将两个或更多不同的罗盘界面组合起来,从而,创建一个或多个3D 空间的较大的虚拟图和导航系统.罗盘中的命名的视点可以链接到当 前场景中的一个视点,本地台式机上的另一个3D文件中的枧点,或 万维网上托管的另一个3D文件中的视点,这样,罗盘创建导航的装 置,该装置在任何给定文件(本地台式机文件、Web上的文件等等) 之间的抽象.
在本发明的一个实施例中,3DGUI进一步用于生成存储的视点 的自定义2D图和它们在罗盘中的特定菜单项的名称.具体来说,3D GUI为通过罗盘命名和创建的每一个视点创建3D图标,并将它们 绘制到3D空间中,相应的名称作为路标被分配给它们,使用户绘制 3D空间的所有视点的困,并在视点之间绘制线路,以看见不同的视 点之间的关系.
请参看图11的实施例,以无穷多的图的可能性提供了线性图 340 (在虚拟空间300的下白边处绘制),从而,可以使3D GUI将 存储的视点的图表达为3D围标,它们在罗盘440中的特定茱单项的名称(在最终用户将鼠标放在它们上方时)被表达为时间线340. 这里,时间线340是代表在最终用户以这样的顺序点击每一个3D 图标(最初在罗盘440中创建的和索引的)的情况下,从第一视点 到最后一个视点的动画的线性的进展的图。本质上,每一个3D图标
(502、 504、 506、 508)都是跳转到新的位置或视点(当点击时)的 超级链接或图形。
本系统利用叫做"时间线"的独特的图形用户界面,该图形用户界 面允许最终用户(i)索引和跟踪,(ii)导航到和(iii)重放在虚拟空间 内发生的每个视觉亊件和重要操作(在它正在发生时,实时地),做 法是,通过在虚拟空间内按线性时间顺序绘制这些视觉亊件的图标
(参见图18).如这里所使用的,"视觉事件,,是指通常通过添加从 其他来源(自动地通过编程访问或由最终用户人工地)捕获的信息和 输出所引起的,并在3D虚拟空间内绘制的3D虚拟空间的外观的 变化(参见图1和2 —方框22、 24、 26),
在一个实施例中,作为来自最终用户的输入的结果启动的,或以 别的方式通过编程访问启动的每一个新的操作(产生视觉事件),自 动地存储在罗盘中,然后作为动态时间线线性图340上的图标绘制
(参见图11、 12,以及13A),那些精通本技术的人员将理解,将 不可能列出将构成一个视觉事件(作为时间线340上的图标绘制) 的计算事件的每一种可能的类型,在一个实施例中(如图11、 l2,
以及13A)所示,时间线340是以直线方式在页面的下白边上水平 地绘制的.在另一个实施例中(未显示),时间线可以在页面的左边 或右边垂直地绘制的.
在时间线中绘制的每一项是代表最终用户启动的用于导致视觉 事件(为其创建了时间线上的困标)的搮作的图标.例如,相对于水 平时间线,时间线上的一个给定项左边的项在该给定項之前发生,而 时间线上的一个给定项右边的项在该给定项之后发生,请参看图18 的说明性实施例,为其在时间线340上绘制了图标612的视觉事件 (610)在为其在时间线340上绘制了图标6"的视觉亊件(WO)之前发生。类似地,为其在时间线340上绘制了图标632的视觉事 件(M0)在为其在时间线3卯上绘制了图标的视觉事件(620) 之后发生。
这样,最终用户可以通过点击时间线上的任何图标(以线性顺序、 随机顺序、等等)(该图标将最终用户绑定到视点(在虚拟空间内绘 制了其涉及可视事件的信息))返回到过去的计算体验(在创建图标 并将其添加到时间线时,在虚拟空间中的某些视点或x,y,z坐标中绘 制的);在此情况下,在当前实施例中的其自己的独特的3D或可视 堆栈中。
请参看图13A,在一个实施例中,提供了叫做"桌面"451的帮 助器应用程序,可被用户用来将数据库模块440的菜单441中显示 的项拖放中虚拟空间300中.提供了呈现时间线340的形式的动态 线性图(在虚拟空间的下白边绘制),以将最终用户的输入的操作表 达为为时间线340上的图标,万一用户点击时间线340上的任何图 标,则用户的视点将改变为为操作或视觉事件创建的3D堆栈(即, 3D中可视化的堆栈)中的第一项.最终,时间线340是帮助器应用 程序(450-461)在3D GUI的舞台或虚拟空间300内捕获和绘制 的所有项或输出的线性图.
在图16A中所显示的另一个实施例中,最终用户选择叫做 Yahoo! Search (520),并向帮助器应用程序的文本输入字段(530)中 键入搜索项(例如,"Albert Einstdn,,或"Thomas Edison"),帮助器 应用程序通过Web服务或其他技术(图4A和4B)收集搜索请求 的信息,并在独特的3D堆栈560(通过图标562在时间线340中 表示)中绘制搜索结杲.由帮助器应用程序在其自己的3D堆栈中对 搜索结果的绘图构成视觉事件或改变为为其绘制了图标并且图标被 添加到时间线中的3D虚拟空间.
最终用户可以选择叫做Yahoo!图像搜索(520)的另一个帮助 器应用程序,并在"Yahoo!图像搜索"文本输入字段的搜索字段(530) 中输入相同搜索项.Yahoo! Image Search帮助器应用程序通过与Yahoo!的Web服务进行连接,收集此搜索请求的信息,然后,在 被转换为预先绘制的3D堆栈或以3D可视化的堆栈的右侧(3D笛 卡儿虚拟空间中的+]0的其自己的独特的3D堆栈570中绘制搜索 结果,此外,虚拟空间内的新的可视堆栈的图形构成了可视事件,其 中,代表堆栈570另一个图标572被添加到时间线(最后一个图标 562的右侧)。
参考图 16B,在最终用户通过"address": command-line interface 464在诸如http:〃www,google.com之类的虚拟空间(图 1A-1C—方框60)内创建Web浏览器页面的情况下,其中,最终 用户可以输入URL,并将它添加到虚拟空间中(图1A-1C —方框 60),在被转换为预先绘制的3D堆栈560, 570的右侧(3D笛卡 儿虚拟空间中的十x)的右侧的其自己的3D堆栈580中绘制新的网 页.此将向时间线中添加另一个图标582 (最后一个图标572的右 侧).如果最终用户在虚拟空间内导航,改变他们的视点,并选择了 3D GUI系统的"记录视点,,功能(图1A-1C —方框50),这将记 录虚拟空间内的x, y,和z位置(视点),将此添加到数据库模块 中,如在叫做"收藏夹"的选项卡下.
如图20所示,当用户点击"记录视点"图标650时,系统记录 虚拟空间内的x, y和z位置("视点"),并将此作为叫做"收藏 夹"452下的项652添加到罗盘440中.优选情况下,系统可使用 户命名视点,并在3D虚拟空间内绘制3D图标6S4,作为路标, 指出虚拟空间内的存储的视点的位置。优选情况下,系统在被转换为 时间线上的预先绘制的图标的右侧的时间线340上绘制新创建的视 点的3D图标656,因为这将被分类为可视事件.如此,被添加到虚 拟空间的每一个可视亊件,被存档,通过其图标,实时地在时间线上 表达出来.
从左到右连续地点击时间线上的每一个图标将产生对最终用户 的视点的连续的更改.如此,虚拟空间内的可视事件在发生时被存档, 并按线性顺序实时地在时间线上表达出来.用户可以通过简单地点击时间线上的代表在虚拟空间内绘制的"可视事件,,(为其在时间线上创 建了图标)的图标,在时间上后退.通过点击时间线上的项,将会把
最终用户的视点改变为虚拟空间中的最初绘制了可视事件的位置;在 此情况下,每一个3D堆栈中的第一项.
在3D GUI系统内,将项添加到时间线的过程是动态的,在创 建新的可视事件时发生。当作者之外的最终用户查看虚拟空间时(要 么通过电子邮件,要么访问服务器上的保存的空间的发布的URL)。 在第一次查看另一个最终用户创作的虚拟空间时, 一个最终用户可以 以线性的方式从左到右地点击时间线上的图标,并按时间顺序体验到 在虚拟空间的作者在创建虚拟空间时所体验到的那样。如此,时间线 按时间顺序捕获或记录虚拟空间的可视变化,如此,查看它的其他人 可以通过从左到右地连续地点击时间线上的图标,
优选情况下,3DGUI利用被用于基于此系统执行为它编程的代 码的应用程序或运行时环境。例如,程序可以利用交互式和沉浸式3D 呈现浏览器,该浏览器基于浏览器程序所固有的绘图语言编写的高级 语言代码(程序),对3D绘图指令进行处理,有许多可以用来实现 这一点的编程语言以及运行时环境/3D呈现浏览器.运行时环境或浏 览器可以是(1)独立应用程序,("Web浏览器内的ActiveX控件 或对象,和/或(3)网页中的嵌入对象.
此系统或3D交互式计算接口将在计算机桌面上创建所谓的虚 拟空间,它通过浏览器程序运行.虚拟空间只不过是一种程序(在运 行时环境/3D呈现浏览器内运行),通过在由从观察者感觉到的距离 确定的相对于彼此的虚拟空间中重绘对象,在平面的2D显示内模拟 3D空间,图-2.在远处的对象显得较小,而靠近的对象显得较大。
此外,在最终用户的计算机的二维显示器或窗口内绘制的模拟三 維笛卡儿空间的主题,优选情况下,以循环方式被重新绘制(图1和 2-方框22、 24、 26),以刷新场景,以便基于最终用户的响应,对 绘制的对象的更改必须足够快速地发生,以便体验感觉起来确实好像 是交互式的.负责虚拟空间的信息类似于任何其他文件,其中,可以任意地存
储、命名和修改组成该文件的信息(图1A-1C—方框94).此外, 因为使用3D虚拟空间来(1)表达它用于输入和输出的图形用户界 面,(2)作为可视化待在系统上排序和搜索的信息的舞台,作为操作 系统的文件系统的一部分的许多命令也可以应用于保存的虚拟空间, 此外,每一个保存的虚拟空间(图1A-1C—方框96)都可以充当 通过帮助器应用程序(图1A-1C —方框32、 34、 36、 38, 40)被 添加到虚拟空间的所有项目的容器,帮助器应用程序充当允许信息流 入系统的虚拟空间的桥路。因特网的 一 个比较流行的功能是下载文 件,以及将文件从一个计算机传输到另一个计算机,利用虚拟空间作 为媒体向电子邮件中输出和添加文件、内容和信息或传输这些文件是 新颖而有用的。那些精通本技术的人员将认识到, 一旦作为文件存档 了虛拟空间,则它可以轻松地被通过电子邮件发送或通过FTP发送 到另一个服务器或计算机,如任何其他电子邮件或文件那样轻松地发 送。
在当前计算范例中,电子邮件消息是作为带有诸如图片、视频、 声音,以及可执行文件之类的二进制文件的附件的消息向彼此发送 的。 一旦接收到电子邮件消息,要查看附件,收件人必须(i)选择文 件,(ii)使用他们的电子邮件软件,对每一个文件进行解码,(iii)下 栽它,以及(iv)使用创建该文件的单独的程序在其自己的新窗口中启 动该文件,或查看它,相比之下,在3D GUI中,被添加到虚拟空间 (参见图1A - 1C —方框32, 42, 50, 58, 60, 62, 72, 74, 84, 86, 88,卯, 92,94,104)的诸如困片、视频、声音、网页之类的所有文件或其他内 容,可以作为整体在一个文件中通过电子邮件发送. 一旦电子邮件的 收件人接收到该电子邮件,他们就可以利用 一次点击访问带有所有其 内容的虚拟空间,通过点击到保存的空间的超级链接,无论是(i)附 加到电子邮件还是(ii)保存在服务器中(图1A-1C—方框98) 这样做,会打开虚拟空间,并呈现所有内容,最终用户无需一个一个 地分别打开文件.更具体来说, 一旦通过电子邮件接收到虚拟空间,或者,虚拟空
间从服务器或通过Web上的FTP下栽到最终用户的计算机,到负 责显示电子邮件或FTP文件的网页中的保存的空间的超级链接看 见可以利用一次点击执行通过电子邮件发送的或传输的文件的 Active X控件或应用程序的嵌入的HTML <object>标记。 一般而 言,此标记包含执行该控件所需的信息,该信息可以位于GUI服务 器上或在别处,如此,3D GUI系统(在本发明的此实施例中作为 ActiveX控件配置的)可以在任何计算机上运行,允许带有最终用户 的内容的保存的虚拟3D空间通过电子邮件、文件传输协议或其他方 法发送到任何其他计算机,最终用户可以利用一次点击即可访问虚拟 空间内的所有内容.
在本系统的一个实施例中,3D GUI程序允许最终用户向GUI 服务器(图8 —方框282)发布他们的空间,如通过点击程序内的 发布按钮或类似的元件.3D GUI程序通过将文件上传到服务器或将 文件推到服务器来保存文件,并创建此文件的地址作为URL(图8 — 方框284和286), —个或多个用户(图8—方框290i-290n)可 以同时访问此发布的URL,通过访问此URL,将启动每一个最终用 户的客户端计算机上的3D GUI ActiveX控件,独立地将文件的最近 的版本下栽到多个用户中的每一个用户的计算机(图8 —方框 288),如此他们可以与虚拟空间进行交互并使用虚拟空间.最初, 每一个最终用户将执行最初在他们的客户端计算机上下载的虚拟空 间文件的相同版本.服务器将保留通过客户端和服务器计算机之间的 网络通信下栽了文件的所有最终用户(被称为"多个用户")的索引.
通过可视事件对多个用户的虚拟空间中的任何一个虚拟空间的 任何改变将被以日志形式记录在其自己的文件中.这里,可视事件是 指通常通过添加从其他来源捕获的信息和输出所引起的,并在3D虚 拟空间内绘制的3D虚拟空间的外观的变化(图2—方框22, 24, 26).术语"以日志形式记录"是指在实际将变化写入到主文件之前将 变化记录到日志的文件系统.来自每个客户端计算机的每一个新的可视事件的每一个以日志形式记录的变化的每一个文件,将通过网络连
接推到服务器(图8 —方框296),并作为日志条目被添加到原始 文件中. 一旦服务器接收到了文件的日志条目,它会将对原始文件中 的添加内容推到多个用户的所有客户端计算机,产生了该变化的客户 端计算机除外。如此,新的可视事件或来自多个用户中的所有用户的 以曰志形式记录的文件将被更新到多个用户中的所有用户的虚拟空 间。优选情况下,此过程以循环方式很快地重现,从而允许来自多个 用户中的所有用户的所有变化实时被反映出来.
3D GUI程序提供模拟的实时三维沉浸式笛卡儿空间的交互性。 当最终用户沉浸在此3D空间中时,程序将从用户那里获取由事件处 理程序进行处理的指令,事件处理程序是由图形用户界面启动的控件 呈现的,这些控件可以改变它们的透视图或视点(是指本地坐标系或 三维空间中的位置或可视透视图).如此,最终用户将能够通过在虚 拟空间中(例如,网页)移动得更靠近对象或远离对象,和/或改变网 页在虚拟空间中的角度或透视图,在虚拟空间中取得多个、独特的视 点.
在本发明的一个实施例中,帮助最终用户改变他们在虚拟空间中 的透视图的图形用户界面控件叫做"导航器",从图11和12可以看 出.通过点击导航器上的图标,最终用户可以改变他们在3D虚拟空 间中的透视图或枧点.在如图11和12所示的实施例中,(1)通过 导航器上的"+"按钮,会将最终用户沿着3D笛卡儿空间中的z轴向 前移动;(2)通过导航器上的"-"按钮,会将最终用户沿着3D笛卡儿 空间中的z轴向后移动;(3)通过导航器上的"向上箭头"按钮,会将 最终用户沿着3D笛卡儿空间中的y轴向上移动;(4)通过导航器 上的"向下箭头"按钮,会将最终用户沿着3D笛卡儿空间中的y轴 向下移动;(5)通过导航器上的"向左箭头"按钮,会将最终用户沿着 3D笛卡儿空间中的x轴向左移动;以及(6)通过导航器上的"向右 箭头"按钮,会将最终用户沿着3D笛卡儿空间中的x轴向右移动。
一旦程序接收到用户启动的输入,以改变场景的可视透视图,程序将重绘场景,以反映用户启动的输入,以及对可视透视图的更改,
如图2所示.程序重新计算场景/3D笛卡儿空间中的对象的形状和 大小或几何形状,以反映最终用户在本地坐标系中的位置或可视透视 图。为了获得逼真的实时体验,程序将以循环的方式重绘场景。
事件处理程序是一种用于告诉程序响应特定的事件(例如,点击 鼠标、拖动滚动条,或按动按钮)程序如何操作的计算机程序.程序 的自定义事件处理功能将由事件调度器执行,事件调度器是操作系统 的负责检测图形用户界面(GUI)事件并调用执行程序中的处理那些 事件的功能的那一部分(参见en.wikipedia.org/wiki/Event handler )。
程序重新计算场景/3D笛卡儿空间中的对象的形状和大小或几 何形状,以反映最终用户在本地三维坐标系中的位置或可视透视图 (基于由事件处理程序收集到的输入)。为了获得逼真的实时体验, 程序将以循环的方式重绘场景.如此,最终用户可以控制他们在3D 沉浸式空间中的导航、位置,以及视点,给予它们在选择的任何角度 或视点可视化3D空间内的任何几何形状的自由(参见图2),
根据这里所描述的实施例的一个方面,提供了用于通过来自搜索 引擎输出的交互式元搜索结果,产生来自超级链接的网页的3D输出 的方法和系统。参考图4A和4B的实施例,提供了图形用户界面, 如3D场景内的输入界面或帮助器应用程序(方框162), 一旦最终 用户在他们的3D空间内,它们可使最终用户输入搜索项或搜索项的 组合.帮助器应用程序或编程访问可以允许最终用户不仅输入搜索 项,而且,还可以输入应该从其中始发搜索结果的源(例如,eBay、 Yahoo!、 Google、电子邮件、桌面、MySpace、 MSN,或任何其他可 用的信息源(如图4A和4B所示一方框164),相应地,必须 自定义适当的帮助器应用程序,以捕获或将3D GUI系统与信息的起 源连接.万维网上的大多数搜索引擎、门户和倌息的发布者需要不同 的编程访问技术,以通过Web服务暴露他们的信息,以允许其他系 统与它们的信息进行连接。那些精通此技术的人应该理解,必须作出 轻微的改变,以将3D GUI桥接到此信息,而不会偏离系统.例如,该方法可以包括与http:〃www,google,com进行连接,以〗更于将信息 桥接到3D GUI系统中,
类似于搜索引擎的网络爬虫通过访问超级链接、存储URL,以 及索引每一个遇到的页面的关鍵字和文字,漫游万维网的方式,在一 个实施例中,3DGUI程序可以实时地进行万维网搜索,通过作为3D GUI内的子窗口,打开所选定的搜索引擎的主页的一个2D HTML 页面(通过操作系统的Web浏览器控件(图4A和4B-方框184 184 )在屏幕外绘制的(隐藏))(在此情况下,h加:〃www.google.com 图4A和4B —方框184),在最终用户的选择的搜索系统或网站 中使用这些搜索项.然后,我们的程序将搜索项输入到搜索引擎的主 页的屏幕外文本输入字段中(图4A和4B —方框188),模拟回 车,检索搜索结果(图4A和4B—方框192),对每一个HTML 页面中查找的搜索结果进行分析,识别搜索引擎作为搜索结果返回到 最终用户的每一个超级链接,并将此存储在阵列中。在一种方法中, 对于此阵列的每一个元素或将显示在给定超级链接的URL中查找 到的网页的搜索系统的结果页面中发现的每一个超级链接,程序将在 3D空间中打开一个新的网页或窗口 (在搜索结果页面后面)
如果最终用户进行新的搜索,对于输入到输入界面中每一个搜索 短语,程序将利用它们的选择的屏幕外搜索系统的URL打开一个新 的浏览器窗口,将关鍵字短语作为临时区域传输到此搜索页面,并模 拟回车. 一旦搜索结果出现,它们会再次进入程序.然而,每一个新 的搜索结杲都让其自己的浏览器窗口在屏幕外绘制,然后进入3D笛 卡儿空间.
此外,应该指出的是,Windows操作系统中的Web浏览器控 件向应用程序中添加浏览、文档查看,以及数据下栽能力.使用此控 件的应用程序将允许用户浏览万维网上的站点,以及本地文件系统和 网络上的文件夹.Web浏览器控件用于本发明的某些实施例中,然 而,值得注意的是,3D GUI系统可以利用操作系统外壳的任何一部 分或Web浏览器控件之外的其他组件,作为从计算机捕获和显示输出的方法.
对于此阵列的每一个元素或将显示在给定超级链接的URL中 查找到的网页的搜索系统的结果页面中发现的超级链接,3D GUI程 序将在3D虚拟空间中打开一个新的网页或窗口(在搜索结果页面后 面,图4A和4B —方框202),如此,3D GUI与搜索引擎的网 络爬虫类似,只是这里,系统在3D虚拟空间中实时地可视化它遇到 的实际网页、信息和超级链接,而不是将它作为索引存储在数据库中。 在图4A和4B—方框202 ,可以识别在两个网页的前面绘制的搜 索结果页面。系统默认在所谓的"3D堆栈"(即,以3D方式可视化 的堆栈,有时简称为3D堆栈)绘制每一个新的网页,如图所示,其 中,每一个新的网页都占用类似于现有的网页的位置的x,y,z坐标; 只是它沿着z轴进一步被绘制到更远的距离(从给定透视图,它显 得较小),并在x或y或x, y轴两者上平移,以允许最终用户从 任何给定透视图看见多个网页.例如,在图9的实施例中,可以看 出虚拟空间300中绘制的四个3D堆栈302、 304、 306、 308的鸟 瞰图,其中,每一个3D堆栈(在此实施例中,每一个都包含大约十 个项目)都代表一个新的搜索.
请参看图10的实施例,框架366和371提供了使用搜索引擎 (例如,Google)进行的两个搜索结果.每一次搜索都会导致创建其 自己的3D堆栈(360, 370),每一个堆栈都包括大约十个网页 3D 虚拟空间300中的这些3D堆栈(360, 370)的动态创建是默认完全 形态,供3D GUI显示引擎用来输出3D虚拟空间的組织的信息的 输出内查找到的元素.在另一个实施例中,显示引擎可以加栽其他自 定义模板以实现一个或多个不同完全形态(例如,3D堆栈等等)
继续参考图io,提供了导航器380的另一个实施例.通过点击 导航器380上的图标,如下一页382和前一页384,最终用户可以 轻松地改变他/她的透视图或视点,以与导航器380上的按钮的含义 一致.例如,通过导航器380上的下一页382,会将最终用户绑定 到3D堆栈中的下一页的特写视点(例如,,从页面/框架/窗口 361移动到页面/框架/窗口 364) 另外,(a)通过+按钮3卯,会将最终 用户沿着3D笛卡儿空间中的+z轴向前移动,(b)通过-按钮 392,会将最终用户沿着3D笛卡儿空间中的-z轴向后移动.
还在屏幕的底部附近提供了一组导航按钮396.通过点击按钮 324,会显示出3D堆栈的第一页(例如,,堆栈360的页面361), 而通过按钮406,会移近3D堆栈的最后一页(例如,堆栈360的 页面368).换句话说,通过点击按钮398,会将最终用户绑定到3D 堆栈中的第一页的特写视点,而通过点击按钮406,会将用户绑定到 堆栈中的最后一页的特写视点。类似地,通过点击按钮400,会显示 出前一页,而通过按钮404会移近给定堆栈中的下一页。通过点击 按钮402,会使程序拍摄窗口和对象的当前笛卡儿空间布局的快照, 这可以使用户稍后移近当前笛卡儿空间.通过点击"下10页"按钮 (未显示),在3D堆栈中绘制下十个页面,将它添加到原来的十个 页面中,在3D堆栈中总共产生了二十个页面,通过点击"前10页" 按钮408,会将最终用户绑定到3D堆栈中的前10个页面(例如, 从笫二十页后移到第十页).
在图10的实施例中也显示了补充的导航按钮"0,用于改变他 /她在3D虚拟空间300中的透视图或视点.例如,(a)通过向上箭 头412,会将最终用户沿着3D笛卡儿空间中的+y轴向上移动,(b) 通过向下箭头414,会将最终用户沿着3D笛卡儿空间中的誦y轴 向下移动,(c)通过向左箭头414,会将最终用户沿着3D笛卡儿空 间中的-x轴向左移动,以及(d)通过向右箭头416,会将最终用户 沿着3D笛卡儿空间中的+x轴向右移动.
当最终用户点击3D堆栈中表示的Web浏览器控件的任何紋 理困上的关闭按钮420时,3D GUI会从3D堆栈中删除页面,使 被删除的页面之后向前的下一页动画化,以替换堆栈中的被删除的页 面的位置,使前面已动画化的页面之后的页面动画化为在它被移动之 前前面动画化的页面的原始位置,使3D可视堆栈中的向前的下一页 动画化,以替换前面已动画化的页面的位置,使堆栈中的下一页动画化为前面已动画化的页面的位置,以及重复此过程,直到到达3D堆 栈的末尾或阵列中的最后一个元素。
此外,在本发明的另 一个实施例中,可以轻松地自定义3D GUI, 以接纳动态地计算3D堆栈内绘制的每一个网页的位置或x,y,z坐 标(或其他项目)的公式,以获得所谓的自定义完全形态的全景,从 而,元素的配置或模式(虚拟空间中的x,y,z坐标)作为整体如此统 一,以至于不能仅仅作为其各部分的总和来描迷.例如,在一个实施 例中(未显示),绘制的网页的不同完全形态或模式呈现三维立方体 的形状,其中,每一个网页都在立方体的三个侧面的交叉点处绘制(不 同于图9中的列完全形态).
在另一个实施例中,3DGUI从帮助器应用程序检索图像,然后, 这些图像被呈现于矩阵中,其中,四个图片位于沿着虚拟空间内的x 和y平面的每一个3D堆栈的两行和两列中.在再一个实施例中, 可视完全形态是一个矩阵,其中,十六个图片位于沿着虚拟空间的完 全形态内的x和y平面的每一个3D堆栈的四行和四列中.
根据这里所描述的实施例的另一个方面,可以使3D GUI"完全 形态"提供"链入/链出"功能,与虚拟空间内的搜索结果中的任何对象 或Web页面的完全形态.首先,在用户请求的情况下,程序将自动 地允许最终用户绘制3D虚拟空间内的任何给定Web页面或对象 "链出"的所有Web页面或对象.其次,在用户请求的情况下,程序 将自动地允许最终用户绘制"链入到"3D虚拟空间内的任何给定 Web页面或对象的所有Web页面或对象.
也可以使3D GUI系统的显示引擎输出适合于电子邮件的自定 义完全形态.3D笛卡儿空间中绘制的标记,它们的位置和"链入/链 出"的角度可以被自定义,以显示对应于呈现的数据的类型的任何标 题.用于绘制3D堆栈中显示的信息的3D笛卡儿空间中的每一个 坐标或位置和"链入/链出",是可以在自定义模板(与程序兼容,以改 变3D笛卡儿空间中的完全形态的外观)内修改的变量.这可以通过 使用模板中的利用程序的可扩展的本质的xml编码数据来完成的.那些精通本技术的人员将能够创建同该系统一道工作的这些可扩展
的数据表a程序可以通过模板文件立即处理多个模板,并通过来自界 面面板的输入,应最终用户的请求,实时地在不同主题之间进行切换。
在一种方法中,在3D堆栈中显示的3D笛卡儿空间中的每一 个坐标或位置都是由自定义模板(与程序兼容,以改变3D笛卡儿空 间中的完全形态的外观)修改的变量.这是通过使用模板文件中的利 用程序的可扩展的本质的xml编码数据来完成的.例如,可以在立 方体配置的拐角处组织一簇八个窗口,其中,可以通过立方体布局, 旋转每一个窗口,以通过簇中的页面,进行排序。可以通过连接每一 个簇的线段来表示"链入和链出"功能。值得注意的是,立方体簇只是 示范性的,具有可变数量的页面的簇也是可以的。例如,在另一个实 施例中,在具有锥体配置的簇中表示了五个窗口,其中,该锥体包括 矩形基座,有四个点和单一的点位于矩形基座的上方.
在本发明的一个实施例中,3DGUI可以是用户的计算会话的历 史可视时序,其中,应用程序可以通过记录该计算会话的该日期和时 间的视点,存档每一个新的可视事件的日期和时间,并通过恢复该曰 期和时间的视点,再访问这些可视事件.这里,我们将"可视事件"叫 做通常通过添加从其他来源捕获的信息和输出所引起的,并在3D虚 拟空间内绘制的3D虚拟空间的外观的变化(图2-方框22、 24、 26),在本发明的一个实施例中,创建如图21所示的虚拟空间.此 外,还利用叫做"Yahoo! Search"的帮助器应用程序,进行搜索,并在 其自己的3D堆栈中的3D虚拟空间中绘制搜索结果的网页.选择 罗盘440中的搜索选项卡454,该选项卡在它下面按时间顺序显示 了在窗格中在虚拟空间内绘制每一个搜索结果或网页的日期和时间 (看见罗盘440的菜单441中的条目660-672)
我们将程序中的可以将信息存储在与诸如视点之类的程序关联 的3D GUI中的一个区域叫做"罗盘(compass),,.罗盘可以具有存储 了信息的多个类别.通过改变类别,可以使最终用户访问不同信息, 可以使人基于选择的驻留了信息的类别,过滤或发现信息.这里,我们看到,在虚拟空间300中所显示或绘制的事件(674, 676 )对应于为罗盘的搜索选项卡中的每一个事件索引的存档日期和 时间.由于3D虚拟空间具有(i)被称为(x)的水平位置,(ii)被称 为(y)的垂直位置,和(iii)也称为时间的深度(z)的位置,可以看 出,如何通过进一步沿着(z)轴在新的位置绘制新的输出,创建最终 用户的计算会话的可视历史,并给它加盖时间戳(例如,读做2006年 8月8日-6:00下午的条目670).事实上,系统可以被编程为在 自定义帮助器应用程序帮助下,在要在3D虚拟空间中绘制的下一可 视事件中存档任何信息,并与适当的操作系统控件或其他输出相结 合.例如,图形亊件可以是,通过在标记为"address :,,464的命令行 界面鍵入诸如h加:〃www.vahoo.com之类的URL,接下来是回车 键,在GUI的3D虚拟空间中创建网页.
3D GUI通过记住用户最后离开的位置画在视觉上-以便下 一次用户需要相同的系列输入以取得该相同的给定输出,在计算中自 动化导航,3D GUI将在记录的3D空间(用户最后离开的位置的视 觉历史)给用户导航,输出到虚拟空间的项目将按照它们的原样被呈 现,
请参看图13A,在一个实施例中,3D GUI作为Internet ExplorerWeb浏览器内的ActiveX控件来运行应用程序.可以在资 源管理器窗格中选择"保存的空间"选项卡,以暴露它下面的菜单中的 所有保存的空间.通过点击保存的空间,将会将3D虚拟空间加栽到 主窗口中.窗口 490显示了叫做Desktop 451 (其名称显示为罗盘 440中的一个选项卡)的另一个帮助器应用程序的输出.在所显示的 实施例中,保存的Microsoft Word文档500在3D虚拟空间300 内的窗口 4卯中运行,在项目492、 494、 496、 498旁边.这些项 目的所有输出都是通过最终用户的输入,通过帮助器应用程序,使用 叫做"交互性和持久性"的方法捕获的(看见如图3所示的典型的方 法),这里作为虚拟空间300保存的此输出可以将来自不同的源的 东西结合在一起,并一起作为一个整体保存在虚拟空间300中.此外,Microsoft Word文档500 (其输出正在3D虚拟空间窗 口 490中运行被最终用户通过拖放操作(图1A-1C -方框78)从 标记为Desktop 451的帮助器应用程序(在显示为图形亊件的3D GUI应用程序的资源管理器窗格中)的菜单中输入(到3D虚拟空 间300 ).通过使用叫做Desktop 451的帮助器应用程序,以 Microsoft Word文档500被添加到虚拟空间300的同样的方式, 任何文件、文档、应用程序或桌面都可以通过拖放操作被添加到3D GUI虚拟空间(图1A-1C-方框78),此外, 一旦文件、文档、应 用程序或桌面被添加到虚拟空间300中,它完全是交互式的,并正 常运行,无异于,或接近于,当它不在三维笛卡儿空间300中时程 序运转的原来的方式.
图13B显示了保存的虚拟空间,其文件名是ncn(510),在3D GUI窗口的资源管理器窗格441中索引了来自叫做"Yahoo! Search,,(520)的帮助器应用程序的逐条的输出.通过点击这些被索引 名称(视点)中的一个,会将最终用户绑定到由帮助器应用程序所创 建的一个视点,该帮助器应用程序将3D虚拟空间中的此特定网页的 输出的有利的视点/透视图引入到最终用户的视图中,如此,搜索选项 卡454下的窗口 (罗盘或数据库模块440)的资源管理器窗格中索
引的每一个名称既充当由帮助器应用程序收集到的搜索结果的索引, 又充当搜索结果内的每一个网页的3D虚拟空间内的有利的视点的 超级链接或触发器.
在某些情况下,可能难以与3D虚拟空间内的文件、文档、应 用程序、桌面或其他输出进行交互.如果最终用户占用了虚拟空间中 的不利的视点(在虚拟空间内歪斜地绘制对象),这会是这种情况。 在这样的情况下,3D GUI系统使用叫做"BindtotheHUD"的技术, 涉及通过在HUD上绘制来使文件、文档、网页、应用程序、桌面或 其他输出带入到视图中.那些精通相关技术的人将认识到,术语 "HUD,,或"抬头显示(heads-up display)"—般是指将信息直接投射到 人的视野中的方式.此技术在军用航空技术中首先采用,但是,也在其他应用场合试验性地使用.这可以通过改变最终用户在虚拟空间内 的视点,以使它直接在最终用户的视野中.
当最终用户在虚拟空间内的视点导致网页歪斜时,正态分布的形
状朝着一侧或另一侧发生扭曲。在这样的情况下,3D GUI系统利用 "Bind to the HUD"功能,其中,通过点击图标或底部(类似于 Windows操作系统环境中的最小化按钮),触发最终用户的视点在 虚拟空间内的变化,以便网页直接在最终用户的视野内,从而使得交 互更容易.在一个实施例中,这是这样完成的通过暴露网页(最初 被隐藏或离开屏幕)的2D版本,并将它定位在3D虚拟空间的前 面的层中,以便最终用户可以与2D中的此层进行交互.此外,最终 用户通过点击适当的按钮(再次,类似于Windows操作系统环境中 的最小化按钮),可以自由地与HUD拆散或将最初被隐藏的或离开 屏幕的2D网页再次隐藏.如此,最终用户可以在2D和3D之间 切换,以便有选择地捕获计算输出和信息(网页、应用程序、文档、 桌面和/或在计算机上可以可视化的任何东西),它们是通过使用此技 术,在3D虚拟空间内绘制的.
因为3D GUI利用表面上无限的空间,应用程序和文档的输出 不必关闭、隐藏或存档.它们被呈现,并可以永久地在视觉上打开(通 过在3D虚拟空间记录它们的输出),它们如用户最后保留它们的一 样,3D GUI通过允许用户记录它们曾经在视觉上执行的一切来这样 做,并让它们通过无限的空间对它进行再访问.在用户需要新的计算 体验的情况下,他们简单地创建更加虚拟的空间,并通过帮助器应用 程序或编程访问,在此新创建的虚拟空间内绘制新的应用程序和文 档.
在用户需要旧的计算体验的情况下,3DGUI改变屏幕的图形输 出,以在视觉上代表它们在旧的计算体验过程中看见的东西(例如, 在特定日期和时间记录的特定枧点处的数据或在文件名下存档的数 据).此旧的计算体验可以保存在文件中,作为所谓的"保存的空间". 保存的空间与任何其他文件相同,因为它存储信息,该信息被最终用户在任何时候通过利用保存空间命令选择的3D GUI程序在虚拟空 间中看见.此外,3D GUI可以有系统地存档任何新的可视变化或按 曰期和时间添加到虚拟空间,并按日期和时间调用在过去的虚拟空间 中所看到的内容.这样,3D GUI可以让人在计算时间中后退(在视 觉上)。
根据本发明的一个实施例,3D GUI提供重新绘制为新颖的模拟 的实时3D沉浸式笛卡儿空间的用户的计算机的2D显示的全面的 功能和交互性(包括图形窗口、桌面、HTML页面以及通用程序输 出的选择性的和隔离的捕获),其中,2D图形被绘制到或映射到3D 对象.
3D GUI发明是提供了 3D舞台的新颖的系统,以将信息桥接 到操作系统的输出,并处理来自操作系统的输出的此信息。可以使这 里所说明的3D GUI系统从任何操作系统捕获任何输出,以操作系统 的语言,不管对操作系统的任何编程或结构变化,它输出的方式,或 用于对操作系统进行编程或与它进行交互的编程事件的序列。
在一个实施例中,3DGUI系统实现了操作系统控件或其他操作 系统输出到无限地沉浸式交互式3D笛卡儿空间的交互式复合紋理 映射,以便于搜索、排序和浏览信息的GUI系统(例如,但不仅限 于网页、应用程序、文档、窗口、网络、Web服务等等)
不管(1)进入到程序中的信息的类型(通过操作系统的输出), 无论它是网页、图片、窗口、应用程序、桌面屏幕、pdf文件,等等, 或(2)程序捕获信息的方法,无论是通过API、 Meta Search还是 Web服务,或(3)用来提供它的编程访问(控件、窗口、桌面、图 像、VNC),程序将信息如此引入到模拟三维交互式笛卡儿空间中, 以便被引进的信息完全是交互式的,并正常运行,无异于,或接近于, 当它不在三维笛卡儿空间中时程序运转的原来的方式.
根据这里所描述的实施例的一个方面,从操作系统提供了特殊控 件,以便正在被处理的信息(例如,网页)正确地在3-D空间中起 作用,如在3D中应有的那样.相应地,在计算领域,"控件"被定义为能进行用户交互或输入,常常启动操作,显示信息或设置值的对象。
例如,为了使万维网上的网页在最终用户的计算机的2-D桌面上的 典型的窗口中的操作系统中正确地起作用,必须由操作系统程序或 CONTROL读取该网页的语言(HTML),以便使该网页正确地显示 和起作用,由Windows操作系统使用的一个这样的特定控件叫做 Web浏览器控件,它负责处理网页以及典型的桌面窗口.当前,使 用2-D范例,可视化大多数Windows控件. 一个这样的控件的名 称叫做MSHTML/Web浏览器控件,用于在窗口内的Windows桌 面上呈现HTML网页及其他内容。
网页,与最终用户简单地查看的图片不同,需要进行互动,才能 正确地在虚拟空间中起作用.由于3D交互式虚拟空间内的最终用户 的视点可以改变,因此,基于最终用户在虚拟空间内的导航,正在被 绘制的对象的形状和大小也会变化.如果在3D虚拟空间内绘制的对 象具有诸如映射到它们的诸如控件之类的操作系统输出,则必须创建 特殊系统,以确保最终用户可以与3D虚拟空间中的映射的对象进行 交互,输入和输出的响应性与2D桌面中的响应性相同,如此,这里 描述了交互式3D复合紋理映射,它充当从操作系统的二维输出(例 如,正在为其显示二维效果的编程访问利用控件,以及一个控件能够 显示的所有信息)到三维交互式笛卡儿空间的可视桥路,其中,从最 终用户选择的任何视点,代表的对象在沉浸式空间中保持完全正常运 行(参见图3).
如此,程序提供了重新绘制为新颖的模拟的实时3D沉浸式笛 卡儿空间的最终用户的计算机的二维显示的全面的功能和交互性(包 括一个控件可以显示的图形窗口、桌面、HTML页面以及通用程序 输出的选择性的和隔离的捕获,或非控件项),其中,2D图形被绘 制到或映射到3D对象.
当沉浸在此3D空间中时,最终用户可以看到它们的捕获的和 重新绘制的二维计算机显示組件,并完全地与它们进行交互,产生了 全新的计算方式.当与他们的映射的或重新绘制的二维显示进行交互时,最终用户可以通过移动得靠近它、远离它,改变它们的角度或两 者,改变他们的透视图或视点(被定义为本地坐标系或三维空间中的 位置或可视透视图)。
在一个示范性实施例中,通常将在2D桌面上输出的操作系统 的控件的可视输出(例如,Web浏览器控件/ msHTML)被紋理映 射到GUI系统的3D沉浸式虚拟空间中的3D几何形状(例如, 立方体、锥体等等)。这是从可能的操作系统控件、API或任何输出 的无穷大的库中选择的一个操作系统控件,其输出可以由3D GUI捕 获,并被绘制到3D空间中的任何对象中.此外,操作系统的控件的 可视输出的起源和方法可以被紋理映射到GUI系统的3D沉浸式 虚拟空间中的3D几何形状,不管它是什么,或它是如何捕获的.
请参看图3,该图提供了交互性和持久性图形,显示了实现虚拟 空间中的交互式复合紋理映射以及交互性和持久性所需的信息的处 理。在该图形中,此过程是通过启动3D GUI应用程序而启动的,该 应用程序可以安装在客户端计算机或服务器计算机上.
在服务器上运行的3D GUI可以向通过网络链接的计算机提供 信息和软件.这里,客户端是客户端/服务器关系中的发出请求的应用 程序或用户.例如,3D GUI客户端应用程序通过Web有效地发出 从3D GUI服务器获取信息的客户端请求.3DGUI程序本身是在其 与获得并返回请求的信息的计算机的关系中的客户端.处理该请求并 发回信息的计算机是3D GUI服务器。
在此实施例中,3D GUI应用程序将在计算机上本地运行,而不 是通过网络连接作为Web应用程序或网络应用程序来运行的.然 而,这两种配置都是可能的.在本发明在服务器或其他这样的计算机 上执行的情况下,客户端计算机的用户将可以访问其他计算机的操作 系统的输出.最初,如所描述的,应用程序是由图形中的Launch Application启动的.在计算机桌面上创建虚拟空间"创建交互式3D 笛卡儿空间",它通过程序运行.虚拟空间只不过是一种程序(在运 行时环境/3D呈现浏览器内运行),通过在虚拟空间中重绘对象,在平面的2D显示内模拟3D空间.取决于手头的应用程序或计算目 的,程序将基于预定的程序自定义,捕获用户输入的请求.
通过编程访问,应用程序将来自3D虚拟空间的用户请求传输 到2D桌面,并启动用户请求,或通过API调用直接传输到计算机 的操作系统.如果用户请求直接从3D传输到2D,无需API调用, 通过模拟或再现请求或从亊件处理程序画外输入到隐藏的2D反射 镜組件,并同步地再次捕获响应或从2D反射镜输出的变化,并将它 映射回任意的3D几何形状,传输用户请求.我们说画夕卜,是因为2D 桌面或操作系统控件被隐藏,最终用户看不见,注意力被集中在3D 虚拟空间中.如此,最终用户可以利用来自他们的2D桌面的相同输 出,通过充当2D输出的3D窗口的3D虚拟空间,进行计算,设
置用于利用无缝地无限的虚拟空间进行计算的舞台.
基于程序自定义,应用程序将使最终用户手到擒来地"确定适当 的OS控件以检索请求的信息类型,,.例如,这可以包括(但不仅限 于)(1)打开网页,(2)打开文件或文档,(3)启动应用程序,(4)创 建窗口或(5)本地或通过网络连接执行任何其他程序.
如此, 一旦指定和定位了适当的操作系统控件,便为此系统控件 执行应用程序接口调用,为了在虚拟空间内启用此控件或其他操作系 统应用程序接口的可用性和功能,3D GUI会将OS控件的可视输 出、位图或APIblit或映射到任意3D几何形状.短语"任意3D几 何形状,,用于阐明,此几何形状可以是通过利用特定完全形态的模板 3D GUI被自定义到的虚拟空间的主题所特有的.
值得注意的是,3D GUI不仅限于用于捕获此困或"OS控件的 可视输出,,或模拟或将用户的请求传递到反射镜的一种方法,因为每 一个操作系统都具有用于处理控件以及它们的输出的独特方法.
在3D虚拟空间内,利用设备输入亊件处理程序来将鼠标点击、 光标位置、鍵盘输入和移动从映射到3D几何形状上的操作系统控件 传递到在2D环境中运行的反射镜控件.
当前,此方法或捕获操作系统输出并将它绘制到3D虚拟空间的循环过程是为了克服操作系统的手头的缺点实现的解决方法或手
动过程,在另一个实施例中,操作系统可以在未来的某个时间(3D GUI 系统可以利用此API)利用一个简单API调用,来包括此功能或类 似于它的功能.
以循环的方式重复此过程(1)从虚拟空间中的3D几何形状上 的操作系统控件映射可视,(2)扫描设备输入事件处理程序,以及(3) 将此输入传递到在2D环境中运行的反射镜控件或直接传递到操作 系统,以创建与虚拟空间中的所述操作系统控件或操作系统输出进行 交互的实时体验,不管最终用户在虚拟空间中的视点或透视图。3D GUI应用程序实时运行,其中,接收信息,并立即作出响应,而在虚 拟空间和2D图或操作系统API输出之中,没有任何时间延迟.此 同步通信是有益的,因为太多的延迟将使系统滞后。
从图3可以看出,在没有操作系统控件或编程访问用于捕获操 作系统控件的图或可视输出的情况下,包括一个偶然性,以通过blit (将图像、或图像的一部分从一个位置复制到另一个位置),周期地 从帧緩冲器、枧频驱动程序、操作系统图形API或视频存储器作为 位图捕获操作系统控件或输出(例如,窗口)的屏幕上的输出.进一 步参考图3,值得注意的是,如这里所描迷的用于提供3D GUI的方 法和系统允许系统从任何计算机源捕获可视输出,不管其起源如何或 它是如何输出的.例如,尽管图3中的方框128、 140、 142是指OS 控件和/或说"Execute Proper OS Control Specific to the Kind of information Requested ...,,,值得注意的是,本发明不仅限于涉及OS 控件的应用程序,但是,可以更一般地与涉及编程访问或类似的东西 的应用程序关联.例如,在某些实施例中,图3的流程图的方框140 可以读作"Execute Proper Programmatic Access to the Kind of Information Requested which will act as a Mirror to its 3D Representation."
通过捕获用户的传统的二维桌面的输出,3D GUI通过以3D 的方式绘制窗口或程序的其他图形表示,在无缝的3D空间将此输出呈现出来.在本发明的一个实施例中,3D GUI预期用户接下来可以 寻找什么(例如,搜索结果中的下一个网页),消除了休眠的计算时 间,并通过自动地绘制新的计算体验(在新空间中,而不是将它重叠 到别的东西上)而同时在视觉上记录旧的,将用户置于点击减少的计 算环境中.因为3D GUI以3D方式产生无限空间的错觉,因此, 它可以产生用户的计算会话的视觉历史,其中,用户可以通过简单地 导航到以前记录的状态,访问过去的视觉计算事件(或快照).这可 以完成,因为在虚拟空间中用图形方式表达的新的信息不会通过替换 它重叠来替换旧的信息,相反,它在新的虚拟空间中被绘制.相应地, 3D GUI可以充当用户的计算会话的历史可视时序,其中,用户可以 通过3D空间中的它们的位置(或视点),命名它们当前具有的计算 机体验,并在以后通过调用名称或标题,再访问它.
当沉浸在此3D空间中时,用户可以看到它的捕获的和重新绘 制的二维计算机显示,并完全地与它进行交互,产生了全新的计算方 式.当与他们的映射的或重新绘制的二维显示进行交互时,用户可以 通过移动得靠近它、远离它,改变它们的角度或两者,改变他们的透 视图或视点(被定义为本地坐标系或三维空间中的位置或可视透视 图)。
被绘制到(或旁边的)的3D对象可以笼统地代表被重新绘制 的内容的主题或背景幕,如房屋、库,甚至邻近地区.例如,电子音 乐文件可以映射到CD或唱片的3D图片上,电子视频文件可以映 射到电视或电影屏幕等等上(参见图22).通过将2D计算机屏幕 重绘到交互式3D对象,可以增大可视计算空间,并允许用户将计算 机输出組织到对象或附近的对象,其3D可视结构可以代表计算机输 出所关联的现实世界对象.
根据本发明的一个方面,可以使3D GUI创建可视计算历史, 其中,对2D计算机显示输出的普通的改变被绘制或映射到新的3D 对象,而不是一旦作出改变,替换当前输出或2D显示.例如,在一 个实施例中,当用户点击网页A上的超级链接时,这会导致创建新的网页B,而不是替换A.例如,随着用户通过与映射到三维对象 的二维输出进行交互来浏览因特网,用户通过点击一个链接而通常超 级链接到的页面将会替换2D计算机显示.然而,可以使3D GUI创 建全新的3D对象,其表面利用通常将替换原始2D交互式页面的 新的显示内容映射。通过存储和存档每一个新的图形事件的日期和时间,用户创建他 们的计算会话的可视时序,该计算会话可以通过点击时间线上的图标 来调用,其中,时间线上的每一个图标代表最终用户在特定日期和时 间执行的操作,负责过去的图形事件的编程访问也将被存档。例如, 在查看一个HTML页面超级链接到笫二个HTML页面的情况下, 前面的URL将被保存,这样,用户可以始终回头看在计算机输出当 前视图并利用用图形方式代表的预先保存的计算状态进行交互和发 挥作用之前计算机预先显示了什么.此在视觉上捕获3D中的计算历 史的过程可以无限地持续,其中,可以保存、存档和再访问3D可视 空间,时间线将随着图标的添加动态地增长,以代表此情况.根据本发明的一个实施例,提供了罗盘(或数据库模块)应用程 序.用户被允许点击罗盘上的至少一个按钮(当沉浸在三维交互式空 间中时),并将一个或多个名称分配到视点(被定义为本地坐标系或 三维空间中的一个位置或可视透视图).然后,用户可以查看与视点 关联的三维图像,将此枧点(或可视透视图)与其对应的名称一起保 存在文件(其内容或数据可以被罗盘访问)中.在本发明的一个实施 例中,罗盘充当电子组合锁,由用户分配的并添加到罗盘的转盘中的 一个或多个名称的組合或序列标识了存储的位置.例如,假设这样的情况用户沉浸在显示了 The Beatles (甲壳 虫乐队)的光盘的3D对象的3D交互式空间中.要查看当前枧点, 用户可以分配多个名称,如MUSIC、 ROCK、 FOREIGN、 BRITISH INVASION,每一个名称都将占用图形用户界面的许多转盘中的一个 转盘上的一个空间。通过将转盘转到名称MUSIC 、 ROCK、 FOREIGN、 BRITISH INVASION,程序将启动将视点改变为显示了来自The Beatles的光盘的3D对象的3D交互式空间的过程。用 于命名、存储和重新访问3D空间中的视点的界面功能的使用是通用 的,并可以应用于用户的计算机上的3D空间的本地文件、网络文件 或万维网上的文件。根据本发明的一个方面,用户能够访问叫做罗盘的图形界面上的 存储的视点,而罗盘可以充当电子组合锁。在此实施例中,当通过分 配给每一个转盘的适当的名称,通过转盘的正面标识的位置的预定的 序列,转动其转盘时,罗盘将打开(或可视地访问)存储的视点.因 此,罗盘可以用来将一 系列视点连接在一起并可视地访问 一 系列连接 的存储的视点.根据本发明的一个方面,用户沉浸在3D空间中,并为用户提 供了叫做"新建空间,,的按钮或类似的按钮.当点击此按钮时,会创建 全新的3D交互式空间的另一个文件,可以通过点击3D对象或门 户按钮,从当前空间访问新的3D交互式空间.以电子方式将新空间 链接到当前空间的门户按钮,可以通过新空间的视点或可视透视图的 图像来代表,通过点击"新建空间,,按钮,3D GUI将自动地在链接到 新空间的当前空间内创建门户按钮.此外,3D GUI还可以允许用户 同时将一个或多个名称分配到新空间,并将这些名称添加到数据库模 块(也称为"罗盘").在用户创建新空间然后保存此空间或以电子邮件发送它的情况 下(图1A-1C-方框96、 98) , 3D GUI可以用于自动地通过写入 描迷新空间的HTML页面的标记,通过罗盘分配给新空间的 the—names,通过3D文件的不同视点或可视透视图的快照的新空间 的图像,创建目录页面(图1A-1C -方框100),所有此信息可以 汇编到HTML文件中,该文件将由文件传输协议(FTP)自动地发 布或发送到一个或许多万维网服务器,以进行推广,以便遍历万维网 的许多搜索引擎查找和爬行.实时地创建新创建的3D空间的这些HTML目录的页面并将 它们发布到万维网的一个目的是,以便它们可以用作门户页面,从而,用户可以(i)使用关鍵字搜索万维网,(ii)查找其主题对应于关鍵字的目录页面,以及(iii)将最终用户从2D目录页面超级链接到其主 题对应于目录页面的3D交互式空间.例如,HTML目录页面可以包 含(i)作为HTML页面的标题的新空间的名称,(ii)元标记,其名 称将取自分配给罗盘界面的视点的名称,(Hi)新空间的原始视点或可 视透视图的光栅图像或图片,(iv)在新空间内查找的所有超级链接的 列表,(v)场景的描述,(vi)场景的作者,(vii)远程桌面连接设置和 /或(viii)到新空间内所显示的所有远程桌面连接链接的桌面的 URL,由于索引万维网上的信息的搜索引擎主要为HTML(网页)、 图片和(在某些情况下)文件主要这样做,因此,这里所说明的内容 页面的HTML表充当保存的3D虚拟空间的门口,以包括在搜索引 擎的索引中,有关负责运行控件的3DGUIActiveX控件的信息,通 过使用HTML<object>标记,与构成了目录页面的这里所说明的其 他信息一起,被编码到HTML目录页面中。如此,3D GUI系统可 使最终用户通过他们的3D虚拟空间创作内容,通过目录页面在服务 器上发布它们,并确保这些页面可以通过万维网的当前范例被搜索引 擎爬行和看见,其中,搜索引擎主要使用网络爬虫或网络掩蛛来检查 网页上的超级链接和单词.根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质.此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.在 本发明的一个实施例中,可以通过交互式困标(这些图标便于文件的 显示输出或3D空间内的窗口内的程序的功能)的围形用户界面,从 播放器访问帮助器应用程序(当最终用户正在使用3D空间并沉浸在 3D空间内时).在一个实施例中,通过运行诸如eBay Search或Yahoo Images Search之类的帮助器应用程序,生成3D GUI应用程序的虚拟空间的内容输出。由帮助器应用程序生成最终的第一产品图像输出和它们的产品信息,图4A和4B显示了帮助器应用程序的功能图.优选 情况下,输出包括线性图(例如,在虚拟空间的下白边处绘制),其 中,可以使3D GUI将存储的搜索的图表达为3D图标,特定搜索 项的名称(在最终用户将鼠标放在它们上方时)被表达为时间线.这 里,时间线是代表在最终用户以这样的顺序点击每一个3D图标(最 初在罗盘中索引的)的情况下,从每一个3D堆栈中的第一项的第一 视点到最后一个3D堆栈中的笫一项的最后一个视点的动画的线性 的进展的图。本质上,每一个3D图标都是超级链接;是一个图形, 当点击时,跳转到对应于3D图标的当前虚拟空间中的新的位置或视 点.在本发明的此实施例中,每一个新的搜索都会产生为在3D虚拟 空间中绘制的该搜索结果创建的新的3D堆栈,并绘制了其对应的 3D图标.例如,在图9的实施例中,可以看到时间线340中的三个3D 图标(342, 344, 346, 348),代表利用eBay Search帮助器应用程 序进行的四个唯一的搜索(即,rolex Daytona, ibm laptop, plasma tv, 以及treo 650)。每一个唯一搜索都会导致创建其自己的3D堆栈 302、 304、 306、 308 (在此实施例中,每一个堆栈都显示了一次十个 东西)以及在3D虚拟空间300的下白边处的时间线图340中绘制 的它们自己的唯一 3D图标.在本发明的此实施例中,在最终用户点 击任何超级链接或3D图标的情况下,3D GUI将在视觉上将最终用 户带到其3D堆栈内的笫一 eBay搜索结果项目的视点.如此,最终用户可以(1)连续地将新的搜索项输入到eBay帮 助器应用程序中,(2)按下回车鍵以启动他们的搜索,(3)将绘制的搜 索结果可视化为它们自己的唯一可视列,(4)可视化表达为虚拟空间 的下白边上的时间线的3D困标的图,(5)通过简单地点击时间线上 的3D图标的超级链接,在搜索中快速地导航(通过每一个唯一 3D 堆栈中的笫一项的视点),如它们在3D堆栈中所表达的,通过点击 导航器320上的命令,如下一页322、末页324、下10页326,以及最后10页328, shuffle或sort through每一个3D堆栈中的 每一个项目.此外,通过点击导航器320上的图标,最终用户可以 改变他们在3D虚拟空间300中的透视图或视点.例如,(1)通过+ 符号337,会将最终用户沿着3D笛卡儿空间中的+z轴向前移动, (2)通过-符号338,会将最终用户沿着3D笛卡儿空间中的-z轴 向后移动,(3)通过向上箭头330,会将最终用户沿着3D笛卡儿空 间中的+y轴向上移动,(4)通过向下箭头334,会将最终用户沿着 3D笛卡儿空间中的-y轴向下移动,(5)通过向左箭头336,会将最 终用户沿着3D笛卡儿空间中的-x轴向左移动,以及(6)通过向右 箭头332,会将最终用户沿着3D笛卡儿空间中的+x轴向右移动.在图11的实施例中,提供了 address: command line 464界面 或帮助器应用程序,其中,最终用户可以输入本地操作系统的本地文 件系统中的窗口、文档或应用程序的URL或地址等等。当最终用户 在命令行界面的地址字段中鍵入h加:〃www.vahoo.com时,应用程 序会通过适当的Web浏览器控件将HTML页面绘制到所描述的 3D虚拟空间中.可以无限地重复此过程,在标记为"address:"的命令 行上输入额外的URL,以让它们存入3D堆栈中。在连续地输入了 h加〃www.vahoo.com +回车键,h加〃www.google.com +回车键, httu:〃www.ebav,com +回车鍵,然后,h加:〃www.msn.com +回车 鍵的3D GUI虚拟空间中,创建了四个网页(510、 512、 514、 516)。 命令行界面、帮助器应用程序464是用户创建和创作HTML页面、 桌面窗口、文档、应用程序、vnc桌面、或能够在虚拟空间中即时地 应命令被可视化的其他东西的一种方式.在本发明的替代的实施例中,可以使每一个帮助器应用程序通过 自定义3D界面(其图形设计和结构看起来像它试图代表的现实世界 的对象)显示信息.例如,可以为一个音乐文件运行帮助器应用程序。 在点击帮助器应用程序的图标之后,3D GUI可以提示用户或自动地 查找他们的本地计算机上、网络计算机或万维网服务上的音乐文件. 然后,帮助器应用程序可以在3D空间中绘制音乐文件的界面.然后,用户可以与音乐文件的图形表示(例如,CD的图形表示)进行交互, 以运行和播放音乐文件。不管3D GUI中显示的文件或应用程序位于何处(例如,在同 一个文件夹、子文件夹内、位于不同计算机上、在网络内、位于不同 网络上,跨因特网等等),用户都可以通过它的本机程序完全访问该 文件,或通过默认浏览器完全访问该网站.如此,3D GUI可使不同 的计算机程序的输出在视觉上聚焦于一个可展开的、可改变的3D空 间中.3D GUI也可以提示用户搜索或扫描本地计算机、网络计算机、 Web服务器或因特网中的文件夹和子文件夹,以查找给定种类或判别 条件的任何文件,并通过帮助器应用程序将它们的输出作为窗口自定 义的3D现实世界对象图标全体地显示在3D空间中.这样,用户 可以使用此功能有选择地只选择一个文件或自动地选择对他们可用 的所有文件。根据这里所描述的实施例的另 一个方面,给最终用户提供了有选 择地捕获计算输出和信息(网页、应用程序、文档、桌面和/或在计算 机上可以可视化的任何东西),并允许它在视觉上聚焦在3D虚拟空 间内的能力.在本发明的一个实施例中,3D GUI提供了将以最终用 户的桌面(或联网桌面)上表达的文件、文件夹、应用程序、窗口、 文档或其他东西的形式存在的内容拖放到3D虚拟空间中的能力通 过将它定位在桌面上或桌面上的窗口内,并将某一个东西的图标(或 通过其窗口打开某一个东西)拖动到3D GUI窗口的虚拟空间,以添 加到其中.拖放操作描述了您可以利用鼠标执行的特定操作.点击诸 如文件夹之类的对象,然后按住鼠标按钮,将该对象拖动到一个新的 位置.可以通过松开鼠标按钮来放下该对象.可以使用拖放操作轻松 地移动对象或文件,或将对象或文件嵌入到另一个对象或文件中.一旦图标被拖放到虚拟空间中,文档、应用程序、文件或其他东 西可以(i)在虚拟空间中的窗口内打开或(ii)可以通过虚拟空间内 的其图标来表示.在本发明的一个实施例中,如果被拖放的东西通过 虚拟空间内的图标来表示,那么,它可以被双击以在虚拟空间内或在2D桌面上的虚拟空间的外面打开它.例如,虚拟空间内的Internet Explorer应用程序的图标可以被拖放到3D GUI中,并显示为图标.如果最终用户双击此图标,Internet Explorer窗口可以在3D 虚拟空间内打开.在一种方法中,如果最终用户双击此图标并同时按 下Shift键,则Internet Explorer窗口将作为桌面的一部分,在2D 窗口在3D虚拟空间的前面打开.每当最终用户完成一个拖放操作 时,单个拖放操作中的所有项进入它们自己的3D堆栈中,在时间线 上绘制图标,以代表此,在本发明的另 一个实施例中,如果最终用户从桌面中拖放包舍多 个项的文件夹,在3D虚拟空间内的它们自己的3D堆栈中分别地 绘制(在文件夹的外面)文件夹中的所有那些项.此外,通过最终用 户的改变3D虚拟空间的拖放操作来代表此可视事件的图标,优选情 况下,根据其功能,被添加到时间线中.在此情况下,在时间线上绘 制代表此操作(文件夹的拖放到虚拟空间中)的文件夹的图标,如它 在时间线中被索引那样。根据本发明的一个方面,最终用户可以自动地通过为特定目的 (如排序)编写的帮助器应用程序(图1A-1C-方框32)的脚本或 程序,或人工地通过点击一个项目或多个项目作为一个組(ctrl-点击), 并通过拖放操作将它们移动到他们的新的位置,重新排序、来回移动 或进一步组织3D虚拟空间内绘制的项目.拖放操作描述了您可以利 用鼠标执行的特定操作.点击诸如图片或网页之类的对象,然后按住 鼠标按钮,将该对象拖动到一个新的位置,可以通过松开鼠标按钮来 放下该对象.例如,在一个实施例中,如图17A所示,可以看到虚拟空间300 中的五个项目(外O、 592、 594、 596,以及598),其中,分别通过 困标600、 602、 604、 606,以及608在时间线340中表示这五个 项目.最终用户可以将3D虚拟空间中的任何项目移动到虚拟空间内 的任何其他位置通过点击它,按住鼠标按钮,将对象拖动到新的位 置,松开鼠标按钮,沿着x, y轴平移。例如,如果最终用户点击网页590,按住鼠标按钮,并将该网页拖动到3D虚拟空间内的左侧 (-x)和向上(+y)拖动,并松开鼠标按钮,该网页将占用一个新的位 置(参见图17B) 最终用户也可以通过沿着z轴平移项目,将项 目在虛拟空间内移动得靠近他们的视点(显得较大)或远离它们(显 得较小).为了完成项目在虚拟空间内在-z(向远处)或十z(靠近) 方向的平移,最终用户在启动所述项目的拖放操作的同时按住Shift 鍵.例如,请参看图17A-17C,如果最终用户点击图像596,同时按 住鼠标按钮和Shift鍵,并将鼠标向后拖动更靠近他们自已,则图片 596将在+z方向向前平移,显得较大,并将占用虚拟空间中的一个 新的位置.类似地,如果最终用户点击一个网页,同时按住鼠标按钮 和Shift鍵,并在朝前的方向拖动鼠标远离他们自己,则该网页将在-z 方向向后平移,显得较小,并将占用虚拟空间中的一个新的位置(未 显示).根据本发明的一个方面,用户可以通过点击位于屏幕的底部的任 务栏上的图标,当沉浸在3D交互式场景中时访问帮助器应用程序。 通过点击这些动画的3D图标,图标可以复制其本身,或使它们本身 成为3D场景中的动画,并作为最初点击了其图标的手头的任务的 3D图形对象,提供功能的开始。例如,任务栏上的启动此帮助器应 用程序的图标可以是一个打开的门口.一旦点击了任务栏上的3D打 开的门口图标,则新空间的视点或可视透视图的图片可以从任务栏动 画到场景.如杲从3D场景内点击此图片,则它将充当一个门口,将 用户从当前场景超级链接到另一个场景.根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质.此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.可 以通过交互式图标(便于2D和3D对象显示或输入到3D场景) 的图形用户界面,基于几何对象(立方体、球体、锥体)的用户界面 或现实世界对象(房间、办公桌、建筑物、楼梯、CD架),从播放器访问几何形状的帮助器应用程序(当最终用户正在使用3D空间并 沉浸在3D空间内时).通过将几何形状实时地添加到3D场景中, 帮助给出了 3D空间的否则无尽的连接,用户可以填充他们的输出。 3D GUI还可以进一步包括一个特殊的"搜索和浏览,,应用程序,以定 位3D几何形状文件。用户可以使用"搜索和浏览"应用程序,例如, 搜索位于本地计算机、网络计算机、Web服务器或万维网上的文件夹 和子文件夹中的(之外的)几何形状文件。根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质。此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.可 以通过交互式图标(这些图标提供预先记录的音频、声音和音乐,也 可以便于通过连接到计算机并通过图标(例如,扬声器等等的图标) 插入到3D场景中的麦克风实时地记录声音,作为标记(或叙述)场 景并在场景中的对象旁边记录想法,以进一步给出它们的含义)的图 形用户界面,从播放器访问音频、声音和音乐的帮助器应用程序(当 最终用户正在使用3D空间并沉浸在3D空间内时) 用户还可以 进一步使用"搜索和浏览"应用程序,例如,搜索位于本地计算机、网 络计算机、Web服务器或万维网上的文件夹和子文件夹中的(之外的) 音频、声音或音乐文件.根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质.此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.3D GUI的独特之处在于,它在交互式3D虚拟空间内組合了最终用户 的创作能力(图2 -方框22、 24、 26).例如,可以通过交互式图 标(这些图标帮助定位图片、动画、电影和视频,并实时地应最终用 户的命令,将这样的媒体插入到3D场景中)的图形用户界面,从播 放器访问图片、动画、电影和枧频的帮助器应用程序(参见图1A-1C-方框74, 86,当用户正在使用3D空间并沉浸在3D空间内时)。 在一个实施例中,如图13A所示,最终用户选择数据库模块 440中的Desktop帮助器应用程序451.通过选择桌面选项卡451, 会暴露出最终用户的本地硬盘驱动器或网络中的窗格中的文件或下 面的茱单441。可以查看此窗格441内的最终用户的本地硬盘驱动 器上显示的文件.也可以将这些文件中的一个或多个文件拖放到(图 1A-1C-方框78) GUI 3D虚拟空间300,这会产生集成到3D虚 拟空间中的所述图片、视频和网页与3D虚拟空间300的时间线 340中表示的它们的3D交互式图标一起显示出来在另一个实施例中,如图15所示,输出到3D GUI应用程序 的虚拟空间的内容是利用帮助器应用程序522 (例如,Yahoo! Image Search)启动的搜索所产生的.此帮助器应用程序显示了输入到此帮 助器应用程序的文本输入字段530中的搜索项vangogh。由帮助器 应用程序522生成的开头四个图像输出(552、 554、 556、 558)(看 见图4A和4B中的功能图),从Yahoo! Web服务创建了图像和 信息的3D输出,如3D虚拟空间所示.提供了图或时间线340的 开始(即,虚拟空间的下白边处的图标550),其中,可以使3D GUI 通过具有名称(在最终用户将鼠标放在它们上方时)的3D图标,将 图表达为存储的搜索的时间线.这里,时间线340是代表虚拟空间 内的事件的线性的进展的图.通过点击3D图标(例如,图标550), 在最终用户以这样的顺序点击每一个3D图标(最初在数据库模块中 索引的)的情况下,将会从每一个3D堆栈中的第一项的笫一视点到 最后一个3D堆栈中的第一项的最后一个视点,形成动画.本质上,3D图标550类似于超级链接画即,跳转到对应于3D 图标的当前虚拟空间中的新的位置或视点的图形(当点击时).在图 15的示范性实施例中,每一个新的Yahoo! Image Search都会产生 为在3D虚拟空间中绘制的该搜索结果创建的新的3D堆栈,并在 时间线上绘制了其对应的3D图标,对信息的搜索可以是图像、视频 或可以从Web服务中获得的任何其他内容.用户还可以进一步使用"搜索和浏览"应用程序,例如,搜索位于本地计算机、网络计算机、Web服务器或万维网上的文件夹和子文件夹中的(之外的)图片、 动画、电影和视频文件.根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质,此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.3D GUI的独特之处在于,它在交互式3D虚拟空间内组合了最终用户 的创作能力,在一个实施例中,如图14所示,用户可以通过选择数 据库模块或罗盘440中的3D帮助器应用程序选项卡460,然后选 择菜单441中的"添加画笔,,功能,来访问画笔功能.交互式图标 542, 544的用户界面出现在虚拟空间200中,其中,图标542, 544 便于基于实时地描画为场景的鼠标事件,显示或输出2D和3D自 由形成的线条和图形546,作为批注或修饰场景中的对象或在对象旁 边创建图形以进一步给它们提供含义的方式.更具体来说,通过点击 画笔图标542,可以使画笔工具出现在虚拟空间300中.在本发明的此实施例中,3D GUI系统基于最终用户的输入,以 循环的方式重绘3D虚拟空间,以反映3D空间内的内容和透视图 的变化(参见图1和2-方框22).程序对亊件处理程序进行扫描, 以查找来自许多帮助器应用程序中的一个帮助器应用程序的输入(图 1A-1C-方框30).在本示范性实施例中,帮助器应用程序是"添加 画笔".最终用户选择画笔图标542,这会将最终用户的光标改变刷 子图标.3DGUI捕获最终用户的鼠标移动,并绘制或描画此移动(如 果按下鼠标按钮),在此示例中是:(i)箭头,(ii)下划线,以及(iii)以 红色在虚拟空间的3D笛卡儿空间内的最终用户的视点的x和y 平面以红色(546)描画的重要单词.根据本发明的另一个方面,提供了文本的帮助器应用程序,可以 通过交互式图标的图形用户界面,从播放器访问该帮助器应用程序, 这些交互式图标便于将2D和3D文字实时地显示或输出到场景中,作为标记场景中的对象并在场景中的对象的旁边写下想法,以进 一步给它们提供含义的方式。在一个实施例中,帮助器应用程序是"添加文字"命令(图1A -1C-方框72),例如,如图14的实施例所示,当最终用户通过点 击图标544选择"添加文字,,命令时,最终用户的光标变为文字I型 光标。3D GUI捕获最终用户的键盘输入,并将此文字绘制或描画到 虚拟空间的3D笛卡儿空间内的最终用户的视点的x和y平面上,根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录,作为单向广播介质.此3D空间的编程是通过 对程序进行手动编码或使用准备播放器的文件的编辑器来完成的.一 旦最终用户在他们的Web浏览器上或独立的应用程序上通过播放 器,查看他们的计算机上的3D空间或场景,则可以使用Search应 用程序输入一个或多个搜索项.然后,3D GUI将进行万维网搜索,在至少一个搜索引擎 (Google, MSN, Yahoo!)中使用这些搜索项,对于每一个搜索引擎, 通过打开绘制成窗口的一个2D HTML页面或绘制成3D场景的其 他对象,以对于每一个搜索,显示HTML页面的输出.然后,3DGUI 可以对在每一个HTML页面中查找到的搜索结果进行分析并识别 搜索引擎作为搜索结果返回到最终用户的每一个超级链接. 一旦识 别,对于在搜索结果页面中发现的至少一个超级链接(将在该超级链 接的URL处显示查找到的网页(例如,下一搜索结果集,特定搜索 结果,特定广告等等)),3D GUI可以在3D空间中打开一个新窗 口 (在搜索结果页面的后面).在本发明的一个实施例中,对于一个或多个搜索引擎,3D GUI 可以对于搜索结果页面上发现的每一个超级链接,整体地执行此操 作,并将它们在空间中平铺,将搜索结果绘制到3D场景中,对于消 费者是有益的,对于Web搜索和因特网浏览,它扩展了可用的可视 计算空间.在本发明的另 一个实施例中,当最终用户连接到网络时,3D GUI 利用休眠的计算时间。例如,大多数用户将进行搜索,扫描页面,并 点击一个链接, 一旦他们认识到他们点击的链接不足,他们将点击他 们的浏览器上的后退按钮,再次扫描页面,并点击另一个链接.消费 者扫描页面、点击一个链接,读取新的链接处的页面以及返回到原始 搜索结果页面的时间是休眠的计算时间,其中,计算机连接到万维网, 并能够连续地下栽所有(或部分)原始搜索结果页面中发现的超级链 接页面,并将这些结果绘制到3D场景中.3D GUI可使用户有系统 地访问一个视点,该视点一次一个地显示了每一个搜索结果页面,以 便于查看起来方便.图形用户界面将具有将当前搜索结果保存到文件 中以及将搜索的名称、超级链接的名称、URL、日期/时间和/或源张 贴到数据库模块上的选项.通过使用此相同的表面上无限的3D可视空间,3D GUI可以 允许用户自动地对任何打开的或活动的网页进行分析,(i)确定哪些 HTML页面链接到它,(ii)确定它链接到哪些HTML页面,以及 (Hi)作为组或簇绘制这些页面.还可以进一步有链接到任何给定活动 网页的3D空间中绘制的页面可视分组或簇,如此,用户可以在3D 空间中的一簇网页的给定视点处看一眼就可以确定点击链接到它们 的活动页(或从它们的活动页)的哪些页面。此外,用户可以通过选 择3D空间中绘制的任何簇中的任何活动网页,创建此活动页链接到 的新的网页的簇,或通过创建链接到此活动页的新的网页的簇,在视 觉上扩展此网页的网络.如此,3D GUI应用户的要求创建万维网的 可视完全形态.根据本发明的另一个方面,计算机屏幕上的3D的显示可以涉 及运行时执行模型,该模型播放预先编程的3D空间,如窗口或Web 浏览器中的磁带记录或动画,作为单向广播介质.此3D空间的编程 是通过对程序进行手动编码或使用准备播放器的文件的编辑器来完 成的, 一旦最终用户在他们的Web浏览器上或独立的应用程序上通 过交互式播放器,查看他们的计算机上的3D空间或场景,3D GUI可以提供文本、音频、视频、多媒体、Web广告和/或3D广告,其 呈现自动地集成到负责3D的当前视图的编程中.这样,基于用户输 入(这些输入帮助定义他们正在搜索或计算的主题或上下文),3D GUI 可以提供一个广告或广告的组合(例如,预先放到3D空间中的广告 等等).
这里所描述的3D GUI是对播放三维动画的现有的播放器的改 进,改进之处在于,这里所描述的3D GUI预期最终用户的输入以导 航并实时地将内容添加到3D虚拟空间(通过帮助器应用程序),它 允许最终用户创建;将3D的编辑器概念和播放器概念合并到一个混 合型编辑器和播放器.这样做时,3D GUI系统基于最终用户的输入, 以循环的方式重绘3D虚拟空间,以反映3D空间内的内容和透视 图的变化(参见图1和2-方框22).程序对事件处理程序进行扫 描,以查找来自许多帮助器应用程序中的一个帮助器应用程序的输入 (图1A-1C -方框30 )。
帮助器应用程序可以启动将内容输出到3D虚拟空间的过程, 如,但不仅限于(i)通过编程访问,加栽自定义脚本和其图标以改 变3D虚拟空间的应用程序逻辑,以在新的信息中流出,并呈现新的 主题(也叫做,诸如eBaySearch之类的帮助器应用程序,(ii)访问 视点命令,以改变当前虚拟空间或超级链接到的另 一个虚拟空间中的 最终用户的可视透视图,(iii)在虚拟空间中记录当前视点,(iv)在虚 拟空间中添加桌面的输出,(v)将Web浏览器添加到虚拟空间中, 以通过3D虚拟空间中的窗口查看桌面上的文档、网页或文件和文件 夹,(vi)向虚拟空间中添加文字命令,(vii)向3D虚拟空间中添加 图片,(viii)向3D虚拟空间添加音乐(图22-项目A),(iv)向3D 虚拟空间中添加枧频,(x)记录声音并将它添加到3D虚拟空间中, (xi)向3D虚拟空间中添加图,(xii)通过VRML, X3D或其他文 件格式向3D虚拟空间中添加3D,和/或(xiii)以文字、图片、视频 或其他多媒体的形式(例如,图19的实施例,下面将进一步详细描 述),向3D虚拟空间中添加广告,在图1A-1C-方框32、 42、 50、58、 60、 62、 72、 74、 84、 86、 88、 90、 92、 94、 104中图解了将这 样的内容添加到3D GUI系统内的3D虚拟空间中.
一旦基于将输出、信息和内容添加到3D虚拟空间中的结果, 3D GUI场景重新计算场景中的几何形状(图1和2 —方框24), 它重绘场景图1和2 —方框26),以反映此新的内容的添加.3D GUI系统将通过与下列各项关联的所有单词,确定3D虚拟空间内 的输出、信息和内容的主题或含义(i)文件、HTML页面、视点、 超级链接的名称,以及与场景中的3D虚拟空间内容关联的任何其他 可用的信息,(ii)文件、HTML页面、视点、超级链接内的实际数据, 及3D虚拟空间内的其他可用的信息或输入到帮助器应用程序的输 入字段中的单词(图1A-1C—方框106) , (iii)通过识别最频繁出 现的单词,按照频率对索引字进行排序,以确定3D虚拟空间的主题,
或利用其他方法确定含义,(iv)通过因特网请求,向广告服务器发送 3D虚拟空间的主题(图1A-1C—方框110) , (v)从广告服务器、 Web服务或其他位置,返回适当的文字、图片、视频、声音、音乐、 超级链接或其他广告内容和相应的软件代码,(vi) ^使用程序代码,将 来自广告服务器或其他位置的文字、图片、视频、声音、音乐、超级 链接或其他广告内容绘制到3D虚拟空间中(图1A-1C -方框 114),以及(vii)重绘场景(图1和2 -方框26),那些精通相关 技术的人可以知道这种通过因特网作出广告请求的过程,因为许多网 站利用此技术通过因特网分发广告.
在一个实施例中,如图19所示,当最终用户向帮助器应用程序 640 (例如,Yahoo! Search)中输入搜索项news时,帮助器应用程 序640返回网页642(例如,URL http:www.ncn.com ). 3D GUI系 统可以进一步利用输入项(在此情况下news)(参见图1A-1C-方 框104),并返回一組广告文字644.通过与下列各项一起呈现文字, 广告文字644可以集成到3D虚拟空间300中(a)超级链接和关 联的标题(News on eBay) ; (b)描迷(Find news items at low prices. With over 5 million items for sale every day, you'll...); 以及(c) urlwww.ebav.com,从而产生比较详细的广告646。当前,文字广告在 万维网上是普遍的,因此,在本发明的此实施例中说明了文字广告. 然而,应该理解,其他广告形式,如,例如,图片、视频、声音、音 乐、超级链接和/或多媒体,和/或其組合,可以集成到3D虚拟空间 300中。
与现有技术相比,本发明提供了许多优点,包括,但不仅限于, 用户的桌面上的空间增大,不需要在每当用户需要程序时不断地打开 和关闭程序或隐藏和暴露它们,利用休眠的计算时间下栽和/或显示信 息,减少了鼠标点击次数,比传统的"文件夹内的文件夹"存储系统, 提供了访问程序和文档的更加天然的备选方案,例如,在图12的示 范性实施例中,四十个网页被输出到组织成它们的相应的3D堆栈 470、 472、 474、 476和478的3D虚拟空间300中,其中,堆栈 分别作为图标480、 482、 484、 486和488在时间线340中表示出 来。如上所述,本发明还通过提供新颖的3D图形用户界面,改进了 Web浏览器和桌面体验。
根据这里所描述的实施例的再一个方面,提供了存储器管理方 法,其中,计算机存储器应程序的请求被分配给3D GUI系统,当不 再需要时通过卸栽存储器,腾空以供重复使用,更具体来说,提供了 一种使用虚拟存储器的方法,其中,当RAM不足而难以保存所有这 样的数据时, 一部分硬盘用于转储此数据.在一个实施例中,最终用 户将信息的输出绘制到3D堆栈内的3D GUI中,其中,其中,每 一个新的视觉事件都另外用时间线上的图标进行标记.通过将信息另 外输出到3D GUI虚拟空间中,导致在时间线上创建新的3D堆栈 以及连续地绘制的新的图标,通过虚拟空间创建了所谓的最终用户的 操作的线性路径,如通过时间线和3D堆栈所表达的.如果此过程无 限地持续,则3D GUI系统可以访问的此数据的存储器或电子保存位 置将被^L快地用完.为了创建结束的计算机体验(其中,最终用户不 必到达这样的存储量极限),这里提供了一种系统,其中, 一旦到达 存储量极限,3D GUI系统就会在程序中标记一个点,代表最终用户
6在此线性路径上的位置,并通过将它保存到虚拟存储器中来解除存储 器的负荷。这种腾空存储器的过程将使得最终用户连续地向虚拟空间 中输出新的信息.这种将存储器的负荷转移到虚拟存储器中以及连续 地向虚拟空间输出新的信息的过程可以无限地进行。在最终用户在已 经完成的线性路径的一部分中返回或折回一个过程的情况下, 一旦最
终用户再访问线性路径上的任何标记,3D GUI系统会将存储在虚拟 存储器中的信息重新加栽到存储器中.
本发明可以用于许多应用场合,包括,但不仅限于,搜索引擎、 桌面、可视音乐下栽服务、购物中心、共享的文档的协作空间、视频 会议的协作空间、用于发布网页的工具、虚拟网络电脑系统,有线电 视机或多媒体PC的界面、大平板显示器的计算界面,教育培训和可 视化的论坛,以及电子邮件可视化程序,仅举几个例子.尽管这里是 在利用具有监视器的台式个人计算机的操作系统的实施例内描述本 发明的,但是,那些精通本技术的人员将能够使该系统在其他电子设 备上工作,诸如,例如,蜂窝电话、PDA、手持式移动设备、平板显 示器,或类似的设备等等,而不会丧失本发明的精神.
如此,描述了用于提供改进的三维图形用户界面的方法和系统的 优选实施例,对那些精通本技术的人员显而易见的是,实现了该系统 的某些优点。还应该理解,可以在本发明的范围和精神内作出各种修 改、改编,和备选实施例.例如,在Windows操作系统的上下文中 呈现了改进的3D GUI,但是,显而易见的是,上文所描述的许多发 明构思同样适用于其他操作系统和设备.
权利要求
1.一种用于提供三维图形用户界面的方法,包括从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将所述计算输出作为显示给所述最终用户的三维虚拟空间内的至少两个对象呈现出来;生成时间线,所述时间线包括所述虚拟空间内呈现的每一个对象的图标,其中,每一个所述图标都是根据所述对象在所述虚拟空间内呈现的时间按线性的时间顺序组织的;以及在所述虚拟空间内显示所述时间线。
2. 根据权利要求1所述的方法,其中,将所述计算输出作为三 维虚拟空间内的至少两个对象呈现出来的步骤包括在模拟三维笛卡 儿空间内呈现所述至少两个对象。
3. 根据权利要求1所述的方法,其中,接收输入的步骤包括接 收所述最终用户输入的搜索查询。
4. 根据权利要求1所述的方法,其中,从至少一个计算机源捕 获计算输出的步骤包括从网络服务器捕获至少 一个输出,
5. 根据权利要求4所述的方法,其中,从远程因特网站点捕获 至少一个输出的步骤包括从第一 Web搜索服务捕获笫一输出;以及 从第二 Web搜索服务捕获第二输出.
6. 根据权利要求5所述的方法,其中,从第一 Web搜索服务 捕获第一输出的步骤包括基于所述最终用户输入的笫一搜索项,运行 第一 Web搜索.
7. 根据权利要求6所述的方法,其中,从第二 Web搜索服务 捕获第二输出的步骤包括基于第一搜索项,运行第二 Web搜索。
8. 根据权利要求6所述的方法,其中,从第二 Web搜索服务捕获笫二输出的步骤包括基于所述最终用户输入的第二搜索项,运行笫二 Web搜索。
9. 根据权利要求1所述的方法,其中,从至少一个计算机源捕 获计算输出的步骤包括从本地操作系统捕获至少 一个输出.
10. 根据权利要求9所述的方法,其中,从本地操作系统捕获 至少一个输出的步骤包括将第 一对象从所述本地操作系统拖放到所 述虚拟空间中,
11. 根据权利要求1所述的方法,其中,从至少一个计算机源 捕获计算输出的步骤包括从远程操作系统捕获至少 一个输出。
12. 根据权利要求1所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括在所述虚拟空间内彼此关联地显 示所述至少两个对象.
13. 根据权利要求12所述的方法,其中,彼此关联地显示所述 至少两个对象的步骤包括在所述虚拟空间内将所述至少两个对象作 为3D堆栈显示出来。
14. 根据权利要求1所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括根据可改变的完全形态在所述虚 拟空间内显示所述至少两个对象.
15. 根据权利要求1所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括在所述虚拟空间内作为3D堆栈 显示所述至少两个对象中的一个。
16. 根据权利要求1所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括在所述虚拟空间内作为窗口显示 所述至少两个对象中的一个.
17. 根据权利要求1所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括利用编程访问生成所述至少两个 对象.
18. 根据权利要求3所述的方法,其中,将所述计算输出作为 至少两个对象呈现出来的步骤包括给笫 一对象提供笫 一超级链接
19. 根据权利要求18所述的方法,其中,通过点击所述第一超 级链接,使笫二对象与所选定的完全形态关联地出现在所述虚拟空间 中*
20. 根据权利要求19所述的方法,其中,通过点击所迷第一超 级链接,使第三对象与所述所选定的完全形态关联地出现在所述虚拟 空间中。
21. 根据权利要求1所述的方法,进一步包括将所述至少两个 对象的布局作为视点保存起来,供以后检索.
22. 根据权利要求21所述的方法,进一步包括将代表所述视点 的视点图标添加到所述时间线中,供以后检索所述视点,
23. 根据权利要求22所述的方法,进一步包括当所迷最终用户 点击所述时间线中的所述视点图标时,重新创建所述视点供显示在所 述虚拟空间内.
24. 根据权利要求1所迷的方法,进一步包括将所述时间线中 的所迷图标的布局保存起来供以后检索.
25. 根据权利要求1所述的方法,进一步包括将所述至少两个 对象中的一个作为抬头显示投射,
26. —种用于提供三维图形用户界面的系统,包括 显示屏幕;用于从最终用户那里接收输入的输入i殳备; 可操作地连接到所述显示屏幕和所述用户输入设备的处理器模 块;以及可操作地连接到所述处理器模块的存储器模块,所述存储器模块 包括用于使所述处理器模块执行如下操作的可执行代码响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将所迷计算输出作为显示在显示屏幕上的三维虚拟空间内的至少两个对象呈现出来;生成时间线,所述时间线包括所述虚拟空间内呈现的每一个对象的图标,其中,每一个所述图标都是根据所述对象在所述笛卡儿空间内呈现的时间按线性的时间顺序组织的;以及 在所述虚拟空间内显示所述时间线。
27. 根据权利要求26所述的系统,其中,所述处理器模块通过 将所述至少两个对象呈现在模拟三维笛卡儿空间内,来将所述计算输 出作为三维虚拟空间内的至少两个对象呈现出来。
28. 根据权利要求26所述的系统,其中,所述处理器模块通过 接收所述最终用户输入的因特网搜索查询来接收输入.
29. 根据权利要求26所述的系统,其中,所述处理器模块通过 从远程因特网站点捕获至少一个输出,来从至少一个计算机源捕获计 算输出.
30. 根据权利要求26所述的系统,其中,所述处理器模块通过 从本地操作系统捕获至少一个输出,来从至少一个计算机源捕获计算 输出。
31. 根据权利要求26所述的系统,其中,所述处理器模块通过 从远程操作系统捕获至少一个输出,来从至少一个计算机源捕获计算 输出.
32. 根据权利要求26所述的系统,其中,所述处理器模块通过 将所述至少两个对象作为3D堆栈显示在虚拟空间内,来将所述计算 输出作为至少两个对象显示出来.
33. 根据权利要求26所述的系统,其中,所述处理器模块通过 将所迷至少两个对象作为3D堆栈显示在虚拟空间内,来将所迷计算 输出作为至少两个对象显示出来.
34. 根据权利要求26所述的系统,其中,所述处理器模块通过 将所述至少两个对象作为两个或更多3D堆栈显示在虚拟空间内,来 将所述计算输出作为至少两个对象显示出来.
35. 根据权利要求26所述的系统,其中,所述处理器模块通过 利用编程访问生成所述至少两个对象,来将所述计算输出作为至少两 个对象呈现出来.
36. 根据权利要求29所述的系统,其中,所述处理器模块通过 在所述虚拟空间内提供至少一个Web页面,来将所述计算输出作为 至少两个对象呈现出来。
37. 根据权利要求26所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器将所述虚拟空间中的所述至少 两个对象的布局作为视点保存起来,供以后检索。
38. 根据权利要求38所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器将代表所述视点的视点图标添 加到所述时间线中,供以后检索所述视点。
39. 根据权利要求38所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器当所述最终用户点击所述时间 线中的所迷视点图标时重新创建所述视点,以便显示在所述虚拟空间 中。
40. 根据权利要求26所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器将所述时间线中的所述图标的 布局保存起来,供以后检索.
41. 根据^5L利要求26所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器将所述至少两个对象中的 一个 作为抬头显示投射.
42. —种用于在计算机网络中提供三维图形用户界面的系统,包括连接到所迷计算机网络的服务器,以及与所述服务器关联地执行以提供下列功能的用户界面应用程序 从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将所述计算输出作为显示给所述最终用户的三维虚拟空间内的 至少两个对象呈现出来;生成时间线,所述时间线包括所述虚拟空间内呈现的每一个对象的图标,其中,每一个所述图标都是根据所述对象在所述笛卡儿空间内呈现的时间按线性的时间顺序组织的;以及 在所述虚拟空间内显示所述时间线。
43. 根据权利要求42所述的系统,其中,所述服务器通过将所 述至少两个对象呈现在模拟三维笛卡儿空间内,来将所述计算输出作 为三维虚拟空间内的至少两个对象呈现出来.
44. 根据权利要求42所述的系统,其中,所述服务器通过接收 所述最终用户输入的因特网搜索查询来接收输入.
45. 根据权利要求42所述的系统,其中,所述服务器通过从远 程因特网站点捕获至少 一个输出,来从至少 一个计算机源捕获计算输 出。
46. 根据权利要求42所述的系统,其中,所述服务器通过从本 地操作系统捕获至少一个输出,来从至少一个计算机源捕获计算输 出。
47. 根据权利要求42所述的系统,其中,所述服务器通过从远 程操作系统捕获至少一个输出,来从至少一个计算机源捕获计算输 出.
48. 根据权利要求42所述的系统,其中,所述服务器通过将所 述至少两个对象作为3D堆栈显示在虚拟空间内,来将所述计算输出 作为至少两个对象显示出来.
49. 根据权利要求42所述的系统,其中,所述服务器通过将所 迷至少两个对象作为3D堆栈显示在虚拟空间内,来将所述计算输出 作为至少两个对象显示出来.
50. 根据权利要求42所述的系统,其中,所述服务器通过将所 述至少两个对象作为两个或更多3D堆栈显示在虚拟空间内,来将所述计算输出作为至少两个对象显示出来,
51. 根据权利要求42所述的系统,其中,所述服务器通过利用 编程访问生成所述至少两个对象,来将所述计算输出作为至少两个对 象呈现出来.
52. 根据权利要求45所述的系统,其中,所述服务器通过在所 述虚拟空间内提供至少一个Web页面,来将所迷计算输出作为至少 两个对象呈现出来.
53. 根据权利要求42所述的系统,其中,所述用户界面应用程 序与所述服务器关联地执行,以提供进一步的功能将所述虚拟空间 中的所述至少两个对象的布局作为视点保存起来,供以后检索.
54. 根据权利要求53所述的系统,其中,所述用户界面应用程 序与所述服务器关联地执行,以提供进一步的功能将代表所述视点 的视点图标添加到所述时间线中,供以后检索所述视点。
55. 根据权利要求54所述的系统,其中,所述存储器模块进一 步包括可执行代码,用于使所述处理器当所述最终用户点击所述时间 线中的所述视点图标时重新创建所述视点,以便显示在所述虚拟空间中*
56. 根据权利要求42所述的系统,其中,所述用户界面应用程 序与所述服务器关联地执行,以提供进一步的功能将所述时间线中 的所述图标的布局保存起来供以后检索。
57. 根据权利要求42所述的系统,其中,所述用户界面应用程 序与所述服务器关联地执行,以提供进一步的功能将所述至少两个 对象中的一个作为抬头显示投射.
58. —种用于提供三维图形用户界面的网络系统,包括 包括彼此进行通信的多个服务器的计算机服务器网络; 可操作地连接到所述计算机服务器网络的至少 一个显示屏幕; 用于从最终用户那里接收输入的至少一个输入设备,所述输入设备可操作地连接到所述计算机服务器网络;以及软件模块,用于向所迷最终用户提供一系列屏幕显示,所述软件 模块可被计算机服务器网络的一个或多个所述服务器访问,所述軟件 模块包括用于指示所述服务器执行如下採作的指令响应所迷接收到的最终用户输入,从至少 一个网络源捕获计算输将所述计算输出作为显示在显示屏幕上的模拟三维笛卡儿空间内的至少两个对象呈现出来;生成时间线,所述时间线包括所述笛卡儿空间内呈现的每一个对 象的图标,其中,每一个所述图标都是根据所述对象在所述笛卡儿空 间内呈现的时间按线性的时间顺序组织的;以及在所述笛卡儿空间内显示所述时间线.
59. 用于存储使计算机执行如下操作的计算机程序的计算机可 读取的记录介质从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将计算输出作为显示给所述最终用户的模拟三维笛卡儿空间内 的至少两个对象呈现出来;生成时间线,所述时间线包括所述笛卡儿空间内呈现的每一个对 象的图标,其中,每一个所述图标都是根据所述对象在所述笛卡儿空 间内呈现的时间按线性的时间顺序组织的;以及在所述笛卡儿空间内显示所述时间线,
60. —种用于提供三维图形用户界面的方法,包括 从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将所迷计算输出作为显示给所述最终用户的三维虚拟空间内的 至少两个对象呈现出来;提供用于存储和分类有关在所述虚拟空间内呈现的每一个对象 的数据的数据库模块;以及显示有关与虚拟空间 一起呈现的所述数据库模块内的 一个或多 个对象的所述数据.
61. 根据权利要求60所述的方法,进一步包括在所述数据库模 块内提供到为其显示所述数据的所述对象的相应视点的超级链接.
62. 根据权利要求60所迷的方法,进一步包括生成时间线,所述时间线包括所述虚拟空间内呈现的每一个对象 的图标,其中,每一个所述图标都是根据所述对象在所述虚拟空间内 呈现的时间按线性的时间顺序组织的;以及在所述虚拟空间内显示所迷时间线。
63. —种用于提供三维图形用户界面的系统,包括 显示屏幕;用于从最终用户那里接收输入的输入设备; 可操作地连接到所述显示屏幕和所述用户输入设备的处理器模 块;以及可操作地连接到所述处理器模块的存储器模块,所述存储器模块 包括用于使所述处理器模块执行如下操作的可执行代码响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将所述计算输出作为显示在显示屏幕上的三维虚拟空间内的至少两个对象呈现出来;提供用于存储和分类有关在所述虚拟空间内呈现的每一个对象 的数据的数据库模块;在所述数据库模块内提供到所述虚拟空间内呈现的每一个对象 的相应视点的超级链接;以及显示有关与虚拟空间一起呈现的所述数据库模块内的一个或多 个对象的所述数据.
64. —种用于在计算机网络中提供三维图形用户界面的系统,包括连接到所述计算机网络的服务器,以及与所述服务器关联地执行 以提供下列功能的用户界面应用程序 从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少 一个计算机源捕获计算输出;将所述计算输出作为显示给所述最终用户的三维虚拟空间内的至少两个对象呈现出来;提供用于存储和分类有关在所述虚拟空间内呈现的每一个对象 的数据的数据库模块;在所述数据库模块内提供到所述虚拟空间内呈现的每一个对象 的相应视点的超级链接;以及显示有关与虚拟空间一起呈现的所述数据库模块内的一个或多 个对象的所述数据.
65. —种用于提供三维图形用户界面的网络系统,包括 包括彼此进行通信的多个服务器的计算机服务器网络; 可操作地连接到所述计算机服务器网络的至少 一个显示屏幕; 用于从最终用户那里接收输入的至少一个输入设备,所述输入设备可操作地连接到所述计算机服务器网络;以及軟件模块,用于向最终用户提供一系列屏幕显示,所述软件模块 可被计算机服务器网络的一个或多个所述服务器访问,所述软件模块 包括用于指示所述服务器执行如下操作的指令响应所述接收到的最终用户输入,从至少一个网络源捕获计算输出;将所述计算输出作为显示在显示屏幕上的模拟三维笛卡儿空间 内的至少两个对象呈现出来;提供用于存储和分类有关在所述虚拟空间内呈现的每一个对象 的数据的数据库模块;在所述数据库模块内提供到所述虚拟空间内呈现的每一个对象 的相应视点的超级链接;以及显示有关与虚拟空间一起呈现的所述数据库模块内的一个或多 个对象的所述数据.
66. 用于存储使计算机执行如下操作的计算机程序的计算机可 读取的记录介质从最终用户那里接收输入;响应所述接收到的最终用户输入,从至少一个计算机源捕获计算输出;将计算输出作为显示给最终用户的模拟三维笛卡儿空间内的至 少两个对象呈现出来;提供用于存储和分类有关在所述虚拟空间内呈现的每一个对象 的数据的数据库模块;在所述数据库模块内提供到所述虚拟空间内呈现的每一个对象 的相应视点的超级链接;以及显示有关与虚拟空间一起呈现的所述数据库模块内的一个或多 个对象的所述数据.
全文摘要
提供了用于提供改进的三维图形用户界面的方法和系统。在一个实施例中,该方法一般包括从最终用户那里接收输入,以及响应接收到的最终用户输入,从至少一个计算机源捕获计算输出。计算输出可以作为显示给最终用户的三维虚拟空间内的两个或更多对象呈现出来。在一个实施例中,该方法进一步包括生成时间线,该时间线包括在虚拟空间内呈现的每一个对象的图标。在另一个实施例中,该方法进一步包括提供一种数据库,用于存储和分类有关在虚拟空间内呈现的每一个对象的数据。
文档编号G06T15/20GK101300621SQ200680040521
公开日2008年11月5日 申请日期2006年9月13日 优先权日2005年9月13日
发明者E·E·贝克哈什 申请人:时空3D公司