首页> 中国专利> 结合经典运动力学关于显示框移动对象

结合经典运动力学关于显示框移动对象

摘要

用于结合经典运动力学使对象比如显示窗口关于显示框移动的方法、系统和计算机产品。窗口轻推方法从人机界面设备接收离散用户界面手势,根据离散用户界面手势,将窗口对象瞬间加速到初始速度。一旦窗口处于运动,方法就使用真实运动变化施加第一移动以使窗口对象动画起来。这样的真实运动变化包括摩擦模型,它使滑动摩擦与流体摩擦结合以确定逐帧的速度变化。使滑动摩擦与流体摩擦结合的摩擦模型能够被应用到显示框中的任何对象。一个对象与另一个对象之间或者一个对象与其环境之间的碰撞使用临界阻尼弹簧模型模拟。

著录项

  • 公开/公告号CN103842952A

    专利类型发明专利

  • 公开/公告日2014-06-04

    原文格式PDF

  • 申请/专利权人 甲骨文国际公司;

    申请/专利号CN201280048343.4

  • 发明设计人 M·P·罗德吉尔斯;

    申请日2012-09-27

  • 分类号

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人冯玉清

  • 地址 美国加利福尼亚

  • 入库时间 2023-12-17 00:25:44

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-09-26

    授权

    授权

  • 2014-11-12

    实质审查的生效 IPC(主分类):G06F3/0481 申请日:20120927

    实质审查的生效

  • 2014-06-04

    公开

    公开

说明书

技术领域

本公开涉及显示屏的用户界面领域,更特别地,涉及关于显示框 移动对象的技术。

版权声明

本专利文件的公开内容的一部分包含受版权保护的材料。版权拥 有者不反对任何人复制专利文件或专利公开内容,如同专利商标局的 专利文件或记录的形式,但是在其他方面保留一切版权权利。

背景技术

本公开的某些实施例涉及一种通过结合经典运动力学关于显示 框移动对象的改善的方案。更特别地,本文公开的是使用真实移动的 方法和系统。

引人注目的用户界面必须提供一定程度的连续性,并且引人注目 的用户界面也必须鼓励互动,不过,提供连续性和鼓励互动的传统努 力以牺牲真实性为代价。因而需要改进的方法用于实施真实的图形用 户界面,尤其是实施真实动画的用户界面。

更确切地说,上述技术无法实现结合经典运动力学关于显示框移 动对象,也无法应对虚拟尺寸大于显示器表面的可显示对象的动画(如 旋转木马、地图、照片图库)。

所以需要改进的方案以用于使用真实移动实施关于显示框移动 对象。

发明内容

本公开提供在结合经典运动力学关于显示框移动对象的方法、系 统和计算机程序产品中使用的若干技术的详细说明。

本公开的一个应用被有利地应用在对象动画方法中,用于其显示 内容无法在一时刻被方便地全部显示的大对象(比如幻灯片、地图、 幻灯片集合等)。示范方法始于接收手势和确定环境变量,手势包括 来自人机界面设备的信号,环境变量包括若干数值,比如来自人机界 面设备的手势的强度、显示框的高度、显示框的宽度以及窗口对象的 质量值等,然后根据质量值向窗口对象施加移动,移动包括结合滑动 摩擦项和流体摩擦项,根据质量值计算窗口对象的运动。一个对象与 另一个对象之间或者一个对象与其环境之间的碰撞(或其他模拟的互 动)通过把临界阻尼弹簧模型加入到所结合的滑动摩擦和流体摩擦模 型而得到模拟。

本公开的另一个应用被有利地应用在企业应用系统的台式或便 携式窗口环境中。这样的部署提供了一种窗口轻推方法,其始于从人 机界面设备接收离散用户界面手势(如轻推),比如鼠标点击或击键, 并且根据离散用户界面手势,将窗口对象瞬间加速到初始速度。一旦 窗口处于运动,就应用第一移动以使用真实运动变化使窗口对象动画 化。这样的真实运动变化包括摩擦模型,它结合了滑动摩擦与流体摩 擦以确定速度的逐帧变化。结合了滑动摩擦与流体摩擦的摩擦模型能 应用到显示框中的任何对象。一个对象与另一个对象之间或者一个对 象与其环境之间的碰撞使用临界阻尼弹簧模型来模拟。

根据某些实施例,用于关于显示框移动窗口对象的计算机实施的 方法包括:接收手势,手势包括来自人机界面设备的信号;确定环境 变量,环境变量至少包括来自人机界面设备的手势的强度以及窗口对 象的质量值,其中窗口对象的质量值对应于窗口对象移动的惯性值; 向第一窗口对象施加第一移动,第一移动基于第一窗口对象的第一质 量值以及手势的至少一个方面;以及向第二窗口对象施加第二移动, 第二移动基于第二窗口对象的第二质量值以及手势的相同至少一个方 面,其中当第二质量值与第一质量值不同时,第二移动与第一移动不 同。

在一个或多个实施例中,第一窗口对象的第一质量值基于第一窗 口对象的内容。

在一个或多个实施例中,第二窗口对象的第二质量值基于第二窗 口对象的内容。

当第一移动包括运动积分器时可以实现附加的目标和优点。

当第一移动包括环境反馈时可以实现附加的目标和优点。

在一个或多个实施例中,手势的强度从离散手势导出。

在一个或多个实施例中,手势的强度从连续手势导出。

根据某些实施例,一种计算机实施的方法使用离散手势使显示对 象在显示框内移动,所述方法包括:接收离散手势,离散手势包括来 自人机界面设备的信号;根据离散手势的至少一个方面,将显示对象 加速到初始速度;以及至少根据初始速度,对显示对象应用第一动画, 其中第一动画包括摩擦模型,摩擦模型结合了滑动摩擦项与流体摩擦 项以确定速度变化。

在一个或多个实施例中,初始速度基于显示屏的尺寸。

一个或多个实施例进一步实施:接收第二离散手势,第二离散手 势包括来自人机界面设备的第二信号;以及根据第二离散手势的至少 一个方面,对显示对象应用第二动画。

在一个或多个实施例中,初始速度赋予显示对象的虚拟能量等于 通过施加第一动画失去的虚拟能量。

一个或多个实施例进一步实施:接收事件,事件包括显示对象与 显示屏回弹周边之间的碰撞或互动;以及根据事件的至少一个方面, 对显示对象施加第三动画。

当第三动画包括摩擦模型时可以实现附加的目标和优点。当摩擦 模型结合了滑动摩擦项时可以实现附加的目标和优点。当包括流体摩 擦项和阻尼弹簧项时可以实现附加的目标和优点。

当显示对象包括视口(viewport)下的显示内容时可以实现附加 的目标和优点。

附图简要说明

图1A描绘了根据某些实施例,用于结合经典运动力学关于显示 框移动对象的动画下的运动对象。

图1B描绘了根据某些实施例,用于结合经典运动力学关于显示 框移动对象的若干力的状况的表示。

图1C描绘了根据某些实施例,用于结合经典运动力学关于显示 框移动对象的若干力的状况的表示。

图2描绘了根据某些实施例,用于结合经典运动力学关于显示框 移动对象的系统框图。

图3描绘了根据某些实施例,用于结合经典运动力学关于显示框 移动对象的系统内通过视口的动画。

图4显示了根据某些实施例,曲线图上对象的速度变化,曲线图 示出了用于结合经典运动力学关于显示框移动对象的多种机制。

图5描绘了根据某些实施例,用于结合经典运动力学关于显示框 移动对象的系统内的反馈回路的框图。

图6描绘了根据某些实施例,用于结合经典运动力学关于显示框 移动对象的系统中使用的动画框架的框图。

图7描绘了根据某些实施例的库的组织。

图8描绘了根据某些实施例,执行计算机系统的某些功能的系统 的框图。

图9描绘了根据某些实施例,执行计算机系统的某些功能的系统 的框图。

图10描绘了适于实施本公开的实施例的计算机系统的实例的框 图。

具体实施方式

本公开的某些实施例涉及一种改进的方法,用于实施结合经典运 动力学关于显示框移动对象。更特别地,本文公开的环境、方法和系 统用于实施通过结合经典运动力学关于显示框移动对象。

概述

引人注目的用户界面提供了连续性和真实性。同样,引人注目的 用户界面鼓励用户互动。然而,连续性、真实性以及鼓励互动(如使 用用户将视为真实的运动模型)不能以牺牲功能性为代价。

在现代用户界面中,存在着真实运动的许多机会,比如当有对象 或一组对象大到不能在显示面上一次看全时。这样的对象的示例包括 旋转木马、大地图、照片图库等。此外,往往更引人注目的是与这些 对象直接互动,而不是使用滚动条。换言之,用户偏爱直接与内容互 动,而不是伪互动,比如使用与内容本身分离的控制(如滚动条)与 对象互动。例如,用户认为更自然和真实的方式为通过滑动内容来使 旋转木马左右滑动,而不是使用鼠标或其他指向设备来触摸滚动条。 此外,如果用户一“放开”(如鼠标按钮放开动作),正被移动的项 就突然停止移动,则加重了真实性的缺乏。再者,随着屏幕尺寸增加, 或者随着内容尺寸增加,用户可能希望在内容内“行进”相当大的距 离,这使得拖放界面模型变得越来越难以使用。

如上所述,有时候内容大到无法一次看到整个内容。部分地针对 这种情况的一种可能技术是使用窗口对象内的视口,使得在任何时刻 仅一部分内容在屏幕上可见(比如旋转木马),在旋转木马视口下显 示幻灯片上几十幅(或更多)图像当中的仅几幅图像。通过使用传统 鼠标或触摸屏技术拖动该对象的内容(如经由视口),能够便于用户 与这样的对象互动。

不过,拖动并非在所有情况下都适用。例如,使用(用于示例) 只有触控板或橡皮头风格鼠标的便携式计算机时拖动工作并不好,对 只有键盘的接口而言它工作也不好(另一个示例)。在这样的情形中, 期望某种技术或某些技术使用单次点击(或击键、或触摸事件、或其 他类似基本互动)来拖动或移动。然而,实施这样的技术提出了几个 问题要解决,比如(1)对象应移动多远?在一种情形中看起来适当的 距离在另一种情形中有可能不适当。(2)对象应移动多快?如果对象 从A位置立即跳跃到B位置,用户可能找不到原来的位置。然而,如 果对象逐渐移动,这必须以节约用户时间且与用户的期待一致的方式 实现。在一种情形中看起来适当的距离在另一种情形中有可能不适当 还有再另外的情形;例如,与视口相比内容量特别大(与小相对)。

接下来的附图和说明针对以上问题,并且针对传统实施中的至少 某些不足。

示范实施例的说明

图1A描绘了用于结合经典运动力学关于显示框移动对象的动画 下的运动对象。作为选项,本动画1A00可以在本文介绍的实施例构 架和功能的语境中实施。同样,在显示框边界或其中任何方面内的动 画1A00(如动画1A001、动画1A002)也可以在任何期望的环境中实 施。

如上所述,拖动并非在一切情况下都适用。本文附图和说明提供 的用户界面运动模型(以数学形式)回答了若干问题,比如(1)对象 应移动多远?(2)对象应移动多快?以及(3)如何以节省用户时间 且不转移用户关注的方式移动对象?

图1A示出动画1A00,包括由周边(如边界或界限或回弹边界 110)界定的显示框102(如计算机监视器屏幕、触摸屏、帧缓冲器等)。 周边内显示的是显示对象112(见显示对象的初始位置1121、显示对 象的第二位置1122和显示对象的第三位置1123)。在动画1A00中还 显示了脉冲输入时间序列图104以及作为时间函数的速度图106。如 图所示,脉冲轻推(nudge)114(如脉冲轻推1141,如图所示)在时 间T1被传递给显示对象(如窗口对象),赋予显示对象1121初始速 度,使之以初始速度行进到显示对象的第二位置1122。为了说明运动 的真实性,初始速度(见在T1脉冲处的图例速度)被赋予给显示对象 1121,该速度在阻尼作用下随时间减速,直到(如图所示)在时间T2传递第二脉冲轻推1142。在时间T2传递的脉冲轻推提高了速度(见在 T2脉冲处的图例速度),该速度与在时间T1相同(或稍大)。该对象 随时间减速,直到在显示对象的第三位置1123静止。

例如,在一个具体实施中,向对象赋予第二脉冲轻推引起该对象 的速度回到由先前轻推达到的相同速度值,即使该对象已经在运动。 在这样的情况下,达到的最大速度由某恒量确定,而不是使脉冲幅度 由某恒量确定。

某些实施例依赖于在输入脉冲轻推后赋予显示对象的初始虚拟 能量或初始速度的选择。也就是说,用户会期待真实的运动,无论屏 幕是大屏幕还是小屏幕。在某些实施例中,有可能赋予固定能量的脉 冲值。不过,可能选择的任何固定能量脉冲值在大屏幕上可能太小(如 要求过多附加点击),而在小屏幕上可能太大(如剧烈过冲)。

一种方式是选择特定的能量脉冲(如脉冲轻推114),它将赋予 对象足够的虚拟动量,把对象运送到从该对象至回弹边界的距离的 85%,计算了阻尼作用下的速度减速(以及停止)。在某些使用情况 下,85%的值是最佳值,此时意味着用户能够在动画期间保持上下文。 例如,如果用户正在摇移到地图右边,地图的最右15%(如轻推前) 在轻推后仍然可见(现在在左边)。这让用户看到大量新内容,然而 也提供足够上下文使得该用户没有忘记其在“何处”。

特定的能量脉冲可以计算为视口尺寸、内容尺寸或质量以及可能 其他模型驱动的若干因素的函数。

在另一实施例中,用户有可能期望把对象移动很长距离。为了把 对象移动很长距离,用户可以重复地点击。每次用户点击时,脉冲能 量(如脉冲轻推114)就被传递到内容,该内容根据经由轻推给予的 能量改变速度并且衰减以便在回弹周边的边界内停止。只要用户继续 轻推(如使用点击或击键),该内容将根据经由轻推给予的能量改变 速度。一旦用户停止施加另外的轻推,该对象将迅速但平滑地达到停 止。在一种实施中,当对象行进到无限接近边缘的位置时(如1个像 素至2个像素),便禁用启动轻推的GUI控制(如灰化或隐藏),以 便从当前位置无法启动进一步的轻推。在另一种情况下,轻推将使得 对象动作过度,然后使用本文公开的阻尼弹簧范例弹回。

也可以应用其他模型,例如,轻推后立即给予该对象特定计算的 所得速度的模型。或者,一个替代实施将使得经由轻推给予的能量(如 导致非零惯性值被赋予给对象)精确地为把内容带到特定位置(如到 边缘)所需的能量。

在某些实施中,确定轻推能量(或特定计算的所得速度)的计算 以及与阻尼有关的计算可以使用包括各种各样的“脉冲”函数的库进 行编码,有可能包括把多个脉冲函数结合为库函数工具。严格作为示 例,可以把以下技术编码到库函数中并在动画中使用:

●当向对象传递初始脉冲时:该对象移动,然后在涉及质量值、 加速度、能量传输和能量损失的经典力学模型下减速(如遵 循牛顿力学)。

●当向对象传递初始脉冲时:该对象移动,然后在涉及质量值、 加速度、能量和摩擦的经典力学模型下减速。摩擦可以包括 静态滑动摩擦力学、运动滑动摩擦和流体摩擦力学等。

●当向对象传递初始脉冲时:该对象移动,然后在涉及质量值、 加速度、能量和流体摩擦的经典力学模型下减速。

●当动量存在突然改变(如撞击在回弹周边上或撞击在另一个 对象上)时,运动响应与非弹性碰撞或撞击行为一致,这种 撞击行为与按击鼠标按钮(点击)类似。同样,来自人机界 面设备的手势(如换能器,比如鼠标按钮或键盘上的键)也 是突然的(不是逐渐的)。示例包括点击鼠标或击键,或者 离散的触摸手势,并且这样的离散事件(如离散手势)产生 了类似的运动响应(如突然的脉冲轻推)。

●用于根据屏幕尺寸模拟脉冲轻推幅度的库函数。在一种情况 下,脉冲轻推被计算为传递必要的脉冲轻推力,使得行进的 总距离(脉冲轻推下、摩擦模型下等)是显示框102宽度(如 果是水平运动)或高度(用于垂直运动)的固定百分比(如 85%)。

●用于根据从对象到回弹周边的屏幕距离模拟脉冲轻推幅度的 库函数。在一种情况下,脉冲轻推被计算为传递必要的脉冲 能量,使对象行进与垂直回弹周边(如果是水平运动)的距 离的固定百分比(如100%),或者使对象行进与横向回弹周 边(用于垂直运动)的距离的固定百分比(如100%)。

图1B描绘了对于结合经典运动力学关于显示框移动对象,若干 力的状况的表示。作为选项,本若干力的状况1B00可以在本文介绍 的实施例构架和功能的语境中实施。同样,在对象动画或其中任何方 面中使用的若干力的状况1B00也可以在任何期望的环境中实施。

某些用户界面模型响应于用户输入赋予对象速度。不过传统模型 具有若干缺陷要被应对,比如:

●传统模型可能太迅速地减速至停止(如震动行为)。

●传统模型可能太缓慢地减速至停止(如缓慢行为)。

●传统模型观察固定边界,当超过时使某些屏幕面积被浪费。 例如,如果要观看的内容比视口宽,那么过冲(如内容的某 些部分超出视口边界)应被调整(如通过调整内容的位置) 以便显示尽可能多的内容。本文公开了使用阻尼调整内容位 置的若干技术。

●硬停止(震动)或缓慢地赋予速度(缓慢(sluggish))可能 是恼人地不真实的。

●回弹(尤其是如“硬”非弹性碰撞环境中的回弹那样)可能 使得对象在与用户期望不同的某处结束,而通过回弹应对过 冲的传统技术使用户迷惑。

●传统模型在许多其他行为方面可能是不真实的。

所以,在若干力的状况1B00中给出了解决以上(和其他)缺陷 并产生美感令人愉悦的运动行为的技术。再次参考经典力学运动,运 动中的“对象”(如具有质量值的对象)以不变速度移动直到受到力 的作用。所示的力学机制总和1B00包括摩擦模型150(如显示为图表 的摩擦模型1501,或显示为代数方程的摩擦模型1502),它计算了与 流体摩擦模型的力结合的滑动摩擦模型的力的总和。

根据滑动摩擦模型(如运动学摩擦模型),对象沿表面滑动时由 于摩擦而失去动(运动)能。在真实(如地面)设置中,摩擦与垂直 于表面的力成正比;例如,由于对象(如虚拟对象)的(虚拟)重量 而出现的力。这样的力(见以下Fnormal)被模拟为与对象的质量成正 比。从而具有初始滑动速度的对象在对象的动能丧失于滑动摩擦时将 停止移动。

示范实施例使用了摩擦模型1502,其包括滑动摩擦项130(如滑 动摩擦函数)和流体摩擦项140(如流体摩擦函数)。在某些情况下, 摩擦模型可以给出如下:

Fnet=Ffluid+Fsliding  (等式1)

或者,以另一种形式:

Ftotal=-(kfluidv+Fnormalkslidingsign(v))  (等式2)

其中:kfluid=作用在对象上的流体摩擦强度。预期为正值,而零值将意 味着没有流体摩擦;

ksliding=作用在对象上的滑动摩擦强度。预期为正值,而零值将意 味着没有滑动摩擦;

Fnormal=在对象与它沿其滑动的表面之间的垂直力,通常由于重力 引起;以及

sign(v)在v>0时为1,在v=0时为0,而在v<0时为-1。

等式1中的项Fsliding可以被展开为:

Fsliding=(Fnormal)*(–Ksliding)*sign(v)

其中:

Fnormal=在对象与它沿其滑动的表面之间的垂直或正交力。在某些 模型中,Fnormal力是对象由于重力作用的重量。预期为正值,而零值 将使滑动摩擦对量Ftotal的贡献为零。

在许多情况下,Fnormal可以是常数值,在对象速度从某一初始值 连续变化到零而不过零的时段,sign(v)也将是常数;所以,在这样的 情况下,可以用单一常数Ksliding取代整个流体摩擦项,它合并了真正 的常数Ksliding、垂直力Fnormal和符号项sign(v)。

以上等式中的摩擦项(如滑动摩擦项130和流体摩擦项140)来 自上述运动力学原理,并且能够被区别如下:

●流体摩擦与速度(见等式1右边的第一项)成正比,因此流 体摩擦在高速时起主要作用而在低速时作用不大。所以,仅 使用流体摩擦的模型一开始将快速地从初始高速减速,但是 在低速时将拖延长得不真实的时间并花费很长时间才能停 止。

●静态摩擦是固定常数,并且在低速时起主要作用,而在高速 时作用不大。仅使用静态摩擦的模型在初始速度很快时将花 费很长时间减速下来。为了应对高速度,滑动摩擦系数可以 很高,使得对象停止得非常突然而产生震动和不真实的运动 行为。

通过结合流体摩擦项和静态摩擦项,在应对对象以任何速度行进 时的初始释放时,可以创建真实体验(因为它与日常地表物理原理一 致)。

现在再次参考若干力的状况1B00,将滑动摩擦模型与流体摩擦 模型进行对照,滑动摩擦模型对低速(或静止)对象作用最强,流体 摩擦模型对高速对象作用最强。把流体摩擦模型的作用与滑动摩擦模 型的作用合并,当使对象以任何运动速度关于显示框运动时都产生令 人愉悦且看起来真实的运动模型。

状况1B00中的若干力模拟了作为速度的函数,相对于滑动摩擦 模型,来自流体摩擦模型的贡献(如力)。例如,参考曲线CS和曲线 CF,在速度范围上给出了相对于滑动摩擦模型的贡献百分比(如S%) 的流体摩擦模型的贡献百分比(如L%)。如图所示,流体摩擦模型 的百分比贡献相对于滑动摩擦模型一开始为低(如在低速),这种关 系在速度范围上被逆转,来自流体摩擦模型的力随着速度而增大,最 终在更高速度下起主要作用。

正如先前指出的那样,摩擦模型可以给出如下:

Fnet=Ffluid+Fsliding

或者以另一种形式:

Ftotal=S%(Fsliding)+L%(Ffluid)

其中S%+L%=100%。

图1C描绘了对于结合经典运动力学关于显示框移动对象,若干 力的状况的曲线表示1C00。所示图表给出了根据若干力把速度绘制为 时间的函数的曲线图。如图所示,存在着许多可能的曲线,取决于指 数衰减速率和斜率幅度以及其他变量和常数。如图所示,这些曲线符 合等式v(t)=v0e-at–bt,其中v0是初始速度,a和b分别是与流体/指 数部分和滑动/线性部分相关的常数。正先前表明的那样,本文的改进 胜过了传统模型,也就是,仅包括滑动摩擦的传统模型。为了适应这 样的模型,即使在中等初始速度(更不用说高初始速度),要使对象 以及时形式停止,系数可能需要非常大。不过,这样的摩擦系数导致 从更低初始速度不真实地快速和突然的减速。在低速或许有可能实现 真实的减速(例如,使用低的滑动摩擦系数),但是当初始速度为高 时对象为了减速将花费非常长的时间。

同样,正如先前表明的那样,本文的改进胜过了传统模型,也就 是,仅包括流体摩擦的传统模型。因为流体摩擦与速度成正比,所以 在更高速度更剧烈。不过,流体摩擦导致对象在低速时拖延不真实的 长的时间。并且仅使用流体摩擦,对象在这些低速时发费太长时间几 乎不移动。

复合摩擦模型(如使用滑动摩擦和流体摩擦二者)起到很好的作 用,因为流体摩擦在高速起主要作用(对减速的前一部分产生真实的 减速),而滑动摩擦在慢速起主要作用(对减速的后一部分产生真实 的减速)。不仅如此,还可以选择若干系数,模拟流体摩擦和滑动摩 擦对对象行为的贡献。

可以按其他方式结合流体摩擦和滑动摩擦。例如,不是把来自流 体摩擦模型或滑动摩擦模型的非零贡献求和,而是可以在行为的特定 时间窗口期间,来自仅一个模型或另一个模型的贡献为非零的。

图2描绘了用于结合经典运动力学关于显示框移动对象的系统的 框图。作为选项,本系统200可以在本文介绍的实施例构架和功能的 语境中实施。同样,系统200或其中任何方面也可以在任何期望的环 境中实施。

对于在台式计算机应用或网络应用中实施结合经典运动力学的 模型而言,方便的是使用积分器模型。图2展示了根据某些实施例的 用于运动的积分器模型。严格地作为示例,比如系统200中描述的模 型之类的模型可以包括多个运动模型、包括多个摩擦模型(如摩擦模 型150)、以及多种力学结合方式。如图所示,流体摩擦和滑动摩擦 (如静态摩擦或运动摩擦)都能够被结合。

遍历经由系统200的流程,用户通过人机界面设备220提供某种 用户输入,人机界面设备220提供人机界面设备信号221,它又用于 形成手势205。手势可以是离散手势206(如击键、点击或屏幕触摸) 或连续手势207(如鼠标移动或多点触摸、轻拂手势等),并且这样 的手势被传递给用户输入模型210。用户输入模型接收手势并将该手 势与诸如屏幕高度和屏幕宽度(如图所示)的环境变量2081结合,以 确定能量(例如,赋予对象的能量)和质量值(如对象被指派的质量 值、根据手势的脉冲轻推被指派的质量值等)的数值量形式的输出。

用户输入模型210考虑与手势输入结合的环境变量208(如屏幕 尺寸、对象尺寸、信号校准值等),并且确定要向换能器模块212提 供的能量“e”和质量值“m”。从而换能器模块把来自用户(如手势) 的能量和质量值“m”的形式转换为能量的形式,该能量被施加为关 于显示框要移动的对象的速度。如图所示,换能器输出的形式为速度 的变化,这种速度变化可以是小的加速度(比如说从每秒100像素到 每秒101像素),速度变化也可以是大的加速度(比如说从静止到每 秒100像素)。同样如图所示,速度变化(表示为VΔ)可以源自环境 反馈(见环境反馈模块214)。

这样的速度变化被提供给运动积分器模块218。并且,运动积分 器模块218结合环境变量(如由环境变量模块提供)根据给定的速度 变化执行计算。例如,显示对象可能从回弹周边110弹离,回弹周边 的特征被提供为一组环境变量2182之一,在这样的回弹中有可能失去 某些能量及/或经历速度变化,可能包括运动方向的变化。这种现象有 可能又被反馈给换能器模块以说明来自环境(如由于回弹事件)的能 量(或能量损失)的形式,并且转换为作为关于显示框移动对象的速 度赋予的能量的形式。

除了先前介绍的关于显示框移动的、有可能与其他对象互动或有 可能与回弹周边110互动的对象之外,也可能显示对象在视口下移动。

图3描绘了用于结合经典运动力学关于显示框移动对象的系统内 对象通过视口308的动画。作为选项,本旋转木马300可以在本文介 绍的实施例构架和功能的语境中实施。同样,旋转木马300或其中任 何方面也可以在任何期望的环境中实施。

如图所示,图3展示了根据某些实施例的带有运动控制的旋转木 马类型视口。严格地作为示例,旋转木马使用了结合经典运动力学关 于显示框移动对象的若干技术。

正如早先指出的那样,传统方式使用了控制图标310中的点击, 以便在视口306中单幅图像地移动幻灯片(如单幅图像3081、单幅图 像3082、单幅图像3083等)。同样,某些其他传统方式使用了在这样 的控制图标中的点击,以便把幻灯片移动至并非精确等于一幅图像所 需距离的某种其他固定距离。并且其他传统方式使用了拖动手势(如 按下鼠标按钮的鼠标运动)以便单幅图像地移动幻灯软片,使得通过 视口306相继显示下一幅单幅图像。不过,点击控制图标或鼠标拖动 技术并非在全部情景中都适用。作为示例,使用(例如)只有触控板 或橡皮头风格的鼠标的便携式设备时拖动幻灯软片不适用,对只有键 盘的接口它也不适用(再例如)。在这样的情形中,期望使用单次点 击(或击键)以拖动或移动的某种和某些技术。

然而,实施这样的技术提出了几个问题要解决,比如(1)使用 离散手势206时,为了响应离散手势应当移动多少单幅图像?(2)使 用离散手势206时,幻灯片应移动多快?如果幻灯片从A位置立即跳 跃到B位置,用户可能找不到原来的位置。然而,如果对象逐渐移动, 这必须以节约用户时间且与用户的期待一致的方式实现。

在系统200中给出的若干函数包括环境变量,其又可以包括具有 初始速度和达到停止所需时间的环境情景,和/或计算要行进的总距离 (如要前进的单幅图像的数量,以什么速度,以及什么时候减慢和什 么时候停止等)。这样的函数可以包括加速度曲线,比如以下所给出 的那样。

图4显示了曲线图上对象速度的变化,曲线图示出了结合经典运 动力学关于显示框移动对象的多种机制。作为选项,显示多种机制的 本曲线图400可以在本文介绍的实施例构架和功能的语境中实施。同 样,能够在若干系统或其中任何方面中实施的显示多种状况的曲线图 400也可以在任何期望的环境中实施。

诸如系统200给出的函数包括若干环境变量,它们又可以包括具 有初始速度406、终止速度408以及在距离区间上从初始速度到终止 速度408经过的减速曲线(如f1(滑动、流体)、f2(滑动、流体)) 的环境情景。在距离区间上从初始速度到终止速度408可经过许多路 径,显示多种机制的曲线图400只不过描绘了一些。例如,显示多种 机制的曲线图400描述了“缓慢”减速曲线,其受到太低的初始速度 并且随着对象逼近Xfinal而迅速减速至非常慢的速度(但是可能太迟钝 以至于实际上未到达Xfinal)。标注为“震动”的另一条曲线以恒定速 度从Xinitial移动到Xfinal,然后突然停止。另一条减速曲线展示了从 Xinitial到Xfinal通过线性降低速度的运动,它被视为不真实的。又另外 的曲线源自经典运动力学的组合,也就是其中速度根据结合了滑动摩 擦与流体摩擦的函数而变化。

诸如系统200给出的函数能够包括曲线图,比如在前述段落中介 绍的那些。或者,函数可包括在表中表示的减速曲线,还能包括具有 初始速度和停止移动所需时间的表,考虑了真实或虚拟的环境因素(如 质量值、要行进的总距离、摩擦系数、粘度、表面特征等)。在某些 情况下,函数包括x(t)(距离作为时间的函数)的导数(如一阶导数) 并能够使用它受到控制,及/或能够在靠近Xfinal的区间中包括运动的 导数dx/dt。

通过结合经典运动力学计算其运动的对象被视为提供了舒适且 真实的运动。作为进一步示例,如果用户期望把对象移动小距离,那 么用户以柔和轻拂方式给予输入。或者,如果用户期望把对象移动大 距离,那么用户给予急速拂动。在任一情况下,因为内容平稳地移动, 所以用户不会丢失其位置。

上述柔和轻拂只不过是手势的一种可能,并且根据手势的若干方 面能够与急速拂动区分开。例如,可以根据鼠标按钮向下与鼠标按钮 向上之间的持续时间判定柔和轻拂。或者,能根据键按下按键放开之 间的持续时间判定柔和轻拂。

上述手势的若干方面能够被施加到不同特征的窗口对象,并且被 施加到不同特征的两个窗口对象的相同手势(或具有相同手势方面的 不同手势)在各自窗口对象上产生了两种不同的动画。例如,轻推可 引起第一动画被施加到第一窗口对象,第一动画特征是基于第一窗口 对象的质量值和手势的某方面(如轻拂)的。具有与第一轻推相同轻 推方面(如相同轻拂)的轻推的另一次出现有可能引起向第二窗口对 象施加动画,第二窗口对象的动画特征是基于第二窗口对象的质量值 和该手势的该方面的。在示范情况下,由于质量值不同(即使确定动 画所依据的手势方面相同),第二窗口对象的动画与第一动画不同。

使用这种技术,用户保持了显示的方位,因为窗口对象以真实方 式移动。

图5描绘了用于结合经典运动力学关于显示框移动对象的系统内 的反馈回路的框图。作为选项,本系统500可以在本文介绍的实施例 构架和功能的语境中实施。同样,系统500或其中任何方面也可以在 任何期望的环境中实施。

在某些情况下,运动积分器模块218的实施例产生反馈,该反馈 能够来源于环境(如经由环境反馈模块214)或来源于用户对屏幕上 若干变化的互动(如经由用户反馈模块514)。例如,对象有可能穿 过回弹周边(如过冲(overshoot))并且作为响应受到某些特定运动 (如弹回到过冲附近的位置)。存在可能遇到和/或仿真的各种各样不 同的回弹周边。例如,对象有可能通过碰撞刚性固定(仿真的)对象 而经历弹性或非弹性碰撞,导致方向突然逆转,有可能速度降低。作 为替代,对象可能碰撞柔软的固定对象,它将吸收某些或全部碰撞能 量。作为又一种替代,对象可能遇到可动弹簧似的对象,它将暂时存 储某些或全部碰撞能量,然后在另一个方向上将其返回给对象。这样 的弹簧似的周边可以经历阻尼也可以不经历阻尼,阻尼意味着某些碰 撞能量会消散而不返回到该对象。重要的是注意,这些仅仅是可能的 回弹周边的实例,的确存在着其他回弹周边。当然,当用户认为横越 “太慢”时,对象有可能受到附加的用户输入。用户可以经由附加的 手势输入而添加附加的速度。或者,对象有可能与另一个对象碰撞, 或者到达虚拟边界(如虚拟幻灯片的“末端”)。在这些和其他情况 下,系统500用于处理来自反馈回路的信号。

至于过冲和返回,可以使用结合经典运动力学的模型实现期望的 运动。在某些这样的情况下,临界阻尼弹簧模型用于模拟能量是如何 从动力学运动的突变或渐变(如由于在回弹周边的碰撞或其他互动) 被转换为逆转方向的动力学运动的。这被用户视为“真实的”,因为 它模拟了弹簧和减震器的真实世界情形。此外,与上面的摩擦模型150 结合时,运动能够被描述为相当平滑连续的函数,即使在碰撞时刻(如 与回弹周边的碰撞),以及即使当对象由于碰撞而改变方向时。碰撞 作用在滑动对象上仿佛它击中了带有弹簧的减震器。它是平滑运动, 运动响应快而不太突然。

使用临界阻尼弹簧意味着尽快返回到中间位置而不过冲。撞击 (如与回弹周边)后对象快速地减速并且“自然地”瞬间停止。能够 调谐弹簧的硬度和减震器的阻尼系数以调整应当使其多快地停止移 动,以及在弹回动作中向对象返回多少能量(如果有的话)。作为另 一个实例,当在视口下操纵的幻灯片到达卷末端时(如幻灯片末端处 的最后单幅图像),幻灯片将表现为仿佛它遭遇了临界阻尼弹簧以至 于尽可能快地返回到幻灯片卷位置的末端,同时保持真实而没有过冲。

模拟在碰撞或其他互动点开始的动画行为的一种可能性是包括 来自临界阻尼弹簧项的力:

Fnet=Fsliding+Ffluid+Fspring(等式3)

在涉及碰撞的实施例中(如与回弹周边碰撞等),动画下的显示 对象的能量被临界阻尼弹簧消散。在示范情况下,动画下的显示对象 的能量完全被临界阻尼弹簧消散。在这样的示范情况下,随着对象过 冲并减速,某些初始能量被消散,某些被存储在弹簧中,然后把存储 的能量返回到对象,使其在相反方向上加速。在这种示范情况下,阻 尼以一速率连续地消散动能,使得恰好在对象返回到回弹周边处的初 始碰撞点(或初始互动点)时全部动能已经被消耗,使之平稳滑动至 停止。所以,动画下的显示对象经过回弹周边,平稳地逆转方向,并 且在非常靠近碰撞点的一点处逐渐停止移动。

在某些情况下,当用户认为横越“太慢”时,对象有可能经受附 加的用户输入。用户可以经由附加的手势输入而添加附加的速度,比 如附加的轻拂或击键或鼠标点击等。

应认识到,某些手势包括速度概念,并且在某些情况下确定稳定 信号(如从信号中去除了噪声)可以通过在某范围的时间步上采样一 系列值并且仅选择某些先前样本进行处理(如进行滤波或平均)来实 现。

现在考虑以上所示和介绍的系统,实现对象跨显示屏幕运动的逼 真动画的方法可通过如下步骤来实践:接收来自人机界面设备的手势, 然后根据手势的某些方面(如柔和轻拂、急速轻拂、强度等)把显示 对象瞬间加速至初始速度,并且对显示对象施加动画,其中动画把滑 动摩擦项与流体摩擦项结合起来以确定速度的瞬间变化(如显示框之 间移动的距离的变化)。为了产生美感令人愉悦的运动,同时行进量 在显示最新内容方面而又保持某些重叠背景方面对用户是有用的,在 收到了不具有固有幅度的离散手势(比如点击或按钮按压)之后,计 算初始速度以赋予显示对象虚拟能量,使得施加第一动画和支配虚拟 能量损失的规则将使对象沿运动方向行进大约等于视口长度的85% 的距离后停止。在运动方向上大约等于视口长度的85%以外的其他值 作为替代也可以使用。在默认行进距离将导致对象遇到回弹周边的情 景下,行进距离和赋予的对应能量可以也可以不减小以避免碰撞。在 离散手势内在地包含幅度的情况下,比如来自测量每次击键的力和/ 或速度的键盘的按键动作,手势的幅度可以考虑也可以不考虑,并且 在确定赋予对象的能量时可以起某种作用也可以不起作用。

当然,有可能在通过行进距离的动画过程中,显示对象与另一个 显示对象碰撞。在这种和其他情况下,第二动画(如用于碰撞/停止) 和第三动画(如用于弹回)被应用,有可能包括来自阻尼弹簧(如临 界阻尼弹簧)的力。

这样的动画的复杂度会随着真实程度的提高而增加,从而应当迅 速定义编程框架以便缓解实现期望动画的编程负担。

图6描绘了显示在用于结合经典运动力学关于显示框移动对象的 系统中使用的动画框架的框图。作为选项,本系统600可以在本文介 绍的实施例构架和功能的语境中实施。同样,系统600或其中任何方 面也可以在任何期望的环境中实施。

结合经典运动力学关于显示框移动对象的一个便利是提供库,库 包括模型(如经典力学模型)、脉冲运动控制和多种实用功能(如显 示模型、预构动画等)。

这样的便利变得越来越有利,因为开发人员日益关注创建高度互 动并且具有非常流畅的用户界面运动的网页和网络应用。提供丰富的 桌面应用的障碍之一是使用在Javascript中可得到的工具实现动画的 困难。这样的困难的原因是:

●在Javascript中缺少真正线程支持。

●缺少非忙碌“睡眠”功能。

●要求仅使用本地Javascript和特定版本的CSS(如由于这些 语言被大多数或全部浏览器所服务)的代码开发或平台约束。

一种解决方案是开发动画框架(包括库)以用于执行带有本文公 开特征的基于框的动画。

图6展示了具有动画库602的这样的框架,动画库602包括模型、 脉冲运动控制和多种实用方法。在框架的示范使用中:

●使用库的程序员能够快速容易地定义如何绘制窗口或其他显 示对象(如显示对象1121、显示对象1122)。

●程序员应能快速容易地把动画对象与特定显示对象关联起 来,并且能够对与动画对象606相关联的特定显示对象调用 动画。

●程序员不必处理何时呈现各帧的具体细节。

●在主机的限制内尽可能平滑地呈现动画,然而动画不过度地 消耗系统资源。

●动画不使终端用户的步调慢下来。

在一个实施例中,库的客户(如客户应用610)创建动画对象并定义 方法doFrame()。这个doFrame()方法在动画期间将由库代表客户调 用。库收到四个变元(argument)(如从客户应用610):

●Object:是DOM的一部分并且具有ID的任何HTML元素; 动画所作用的主对象。

●VO和Vf:在动画范围内的两个数字常数,旨在用作初始和终 止值。

●T:要呈现的帧进入动画的时间量,跨区间[0,1]规范化;动画 的整个持续时间在呈现该帧时已经过去的那部分。

另外,能够定义类库,并且面向对象模型能被观察。例如:

ANIM.Animations.fade = new Object();

ANIM.Animations.fade.doFrame = F(obj, v0, vF, t)

{

var opacity = v0 + t * (vF - v0);

obj.style.opacity = opacity;

obj.style.filter = 'alpha(opacity='+Math.round(opacity*100)+')';

}

如果在动画结尾应当采取某种特殊动作的话,客户应用610还具 有实施doEnd()方法的选项。在这个示例中,库将检查这个方法的存 在并且如果定义了它的话则调用它。它接收两个变元:obj和vF。

为了开始动画,客户应用只要调用单个方法animate。

例如,给出了对象“ANIM“:

ANIM.animate(obj,‘fade’,0,1,500);

以上示例将使对象obj通过遵循由方法“animate”使用的规则 而在500ms(半秒)的过程中从完全透明淡入到完全不透明。在示范 实施例中,方法“animate”有七个变元,其最后两个是可选的。

概要:

ANIM.animate=

F(obj,animation,v0,vF,duration,delay,callback)

其中:

obj=被操纵的对象

animation=要使用的动画(如渐变)

V0=初始值

VF=终止值

duration=该动画应当持续多久

delay=开始动画前等待多长时间(在客户希望把若干动画链接在 一起并且希望动画n-1完成后立即开始动画n的情况下提供给客户; 如果未明确规定,则假设为0,意味着代码行一执行就开始动画)。

callback=当动画完成时将作为javascript代码评估的可选字符 串。这与可选的doEnd方法用于类似目的。差异是这个callback应用 于特定的动画调用(如它会应用在淡入一个特定的页面元素时)。方 法doEnd适用于动画的每次调用(如doEnd应用于无论何时淡入或 淡出任何事物时)。

库提供了处理帧定时的一组方法。animate方法用于开始动画。 核心功能利用了使用setTimeout()对未来执行的代码和事件进行调度 的能力。方法setTimeout展示的特征使得浏览器大约在计划执行受调 度的代码时执行它。不过,取决于浏览器和系统负载,受调度的代码 可以比计划执行它的时间更晚或甚至更早地执行。

每次执行代码时库都检查实际时间。库把这个绝对时间转换为t 值(如时间值),其反映了动画从t0向tfinal已经前进了多远,然后调 用方法doFrame。浏览器在前一帧之后16ms调度要呈现的下一帧。

●16ms的标称帧间隔对应于每秒60帧。该速率对应于大多数 现代(LCD)监视器的最大刷新速率,也大约是人的眼睛所 能够感知的极限。任何比16ms间隔更快的刷新动画都将不 再具有任何人能够感知的效应。

●在慢机器上,下一帧实际上可能超过16ms也没有呈现。不 过,由于库根据时间片段调度事件,并且在确定要呈现哪些 事件时考虑了实际时间,所以库将呈现的事件对应于代码实 际运行之时,而不是它最初计划运行之时。这意味着动画将 随着系统资源变得不足而适度地降级。例如,在非常慢的机 器上,动画有可能由于帧速率低而稍微地“突变”,但是在 正确的预期的总持续时间期间动画将仍然完整。这种智能化 投放帧的方法极为优越,使动画呈现每个单帧,所以比其假 设持续时间更长,这可具有阻止用户使用该应用继续的效果。

有时浏览器在代码按调度运行之前就执行代码。这可能导致机器 陷入困境,因为它将计算许多不必要的帧。例如,当监视器仅能够每 16ms显示一帧时,浏览器可能要计算每1至2ms的帧。库通过对最 新的帧在何时产生保持跟踪并智能地检查产生新帧是否有益而避免了 这样的不必要的系统减速。如果呈现某帧无益,库就不呈现该帧,而 是改为仅调度下一帧在它会有益时立即呈现。例如,如果计划的事件 发生在最后一帧呈现之后仅4ms,库将不呈现新帧。库而是会调度要 在12ms呈现的下一帧,使得从呈现最近帧以来总共前进了16ms。

当然,可以开发并且很快而容易地使用无数动画,使得动画尽可 能平滑地运行而不给机器增加负担。不仅如此,动画在更老硬件上适 度地降级。

图7描绘了库700的组织。作为选项,本库700可以在本文介绍 的实施例构架和功能的语境中实施。同样,库700或其中任何操作也 可以在任何期望的环境中实施。

如图所示,库700被组织为层次结构,包括摩擦模型、弹簧和阻 尼模型、力学合成器和帧环境模型。

本公开的附加实施例

图8描绘了执行计算机系统的某些功能的系统的框图。作为选项, 本系统800可以在本文介绍的实施例构架和功能的语境中实施。不过, 系统800或其中任何操作当然可以在任何期望的环境中实施。如图所 示,系统800包括至少一个处理器和至少一个存储器,存储器用于存 储系统的若干操作所对应的程序指令。如图所示,使用模块可访问的 程序指令能够整体地或部分地执行某操作。若干模块被连接到通信通 道805,任何操作都能够在通信通道805上与其他操作通信。系统的 若干模块能够单独地或结合地执行系统800内的方法操作。在系统800 内执行的任何操作都可以以任何顺序执行,除非在权利要求书中指定。 图8的实施例实施了计算机系统的一部分,显示为系统800,包括执 行一组程序代码指令的计算机处理器(见模块810)和访问存储器的 模块,存储器保持的程序代码指令用于执行:接收离散手势,离散手 势包括来自人机界面设备的信号(见模块820);根据离散手势的至 少一个方面,将显示对象瞬间加速到初始速度(见模块830);根据 至少该初始速度,把第一动画施加到显示对象,其中第一动画包括摩 擦模型,摩擦模型结合了滑动摩擦项与流体摩擦项以确定速度的瞬间 变化(见模块840)。

使窗口对象关于显示框移动的其他示范情况包括根据各窗口对 象的质量值把一个或多个移动施加到窗口对象。例如,某些实施例把 第一移动施加到第一窗口对象,其中第一移动基于第一窗口对象的第 一质量值,把第二移动施加到第二窗口对象,其中第二移动基于第二 窗口对象的第二质量值。在涉及多个窗口的这样的情况下,当第二质 量值与第一质量值不同时第二移动与第一移动不同。

图9描绘了执行计算机系统的某些功能的系统的框图。作为选项, 本系统900可以在本文介绍的实施例构架和功能的语境中实施。不过, 系统900或其中任何操作当然可以在任何期望的环境中实施。如图所 示,系统900包括至少一个处理器和至少一个存储器,存储器用于存 储系统的若干操作所对应的程序指令。如图所示,使用模块可访问的 程序指令能够整体地或部分地执行某操作。若干模块被连接到通信通 道905,并且任何操作都能够在通信通道905上与其他操作通信。系 统的若干模块能够单独地或结合地执行系统900内的方法操作。在系 统900内执行的任何操作都可以以任何顺序执行,除非可以在权利要 求书中指定。图9的实施例实施了计算机系统的一部分,显示为系统 900,包括执行一组程序代码指令的计算机处理器(见模块910)和访 问存储器的模块,存储器保持的程序代码指令用于执行:接收手势, 手势包括来自人机界面设备的信号(见模块920);确定环境变量, 环境变量至少包括来自人机界面设备的手势的强度、显示框的高度、 显示框的宽度和窗口对象的质量值(见模块930);根据质量值和手 势的至少一个方面,把第一动画施加到窗口对象(见模块940);根 据质量值,把第二动画施加到窗口对象,其中第二动画包括通过结合 滑动摩擦项与流体摩擦项根据质量值计算窗口对象的运动(见模块 950)。

系统架构综述

图10描绘了适于实施本公开实施例的计算机系统1000的实例框 图。计算机系统1000包括用于传输信息的总线1006或其他通信机构, 它互连若干子系统和设备,比如处理器1007、系统存储器1008(如 RAM)、静态储存设备1009(如ROM)、盘驱动器1010(如磁性或 光学)、数据接口1033、通信接口1014(如调制解调器或以太网卡)、 显示器1011(如CRT或LCD)、输入设备1012(如键盘、光标控制)、 外部数据储存库1031和数据库1032。

根据本公开一实施例,计算机系统1000执行若干特定操作,方 式为处理器1007执行在系统存储器1008中包含的一条或多条指令的 一个或多个序列。这样的指令可以从另一计算机可读/可用介质读入到 系统存储器1008中,比如静态储存设备1009或盘驱动器1010。在替 代实施例中,硬连线电路可以用于取代软件指令或与之结合以实施本 公开。因此,本公开的实施例不限于硬件电路和/或软件的任何特定结 合。在一实施例中,术语“逻辑器”应意味着用于实施本公开的全部 或部分的软件或硬件的任何组合。

本文使用的术语“计算机可读介质”或“计算机可用介质”是指 参与向处理器1007提供用于执行的指令的任何介质。这样的介质可以 采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性 介质包括例如光盘或磁盘,比如盘驱动器1010。易失性介质包括动态 存储器,比如系统存储器1008。

计算机可读介质的普通形式包括例如软盘、硬盘、磁带或任何其 他磁性介质;CD-ROM或任何其他光学介质;穿孔卡片、纸带或具有 穿孔图案的任何其他物理介质;RAM、PROM、EPROM、 FLASH-EPROM或任何其他存储器芯片或盒式磁带,或者计算机能够 从其读取数据的任何其他非暂时性介质。

在本公开的实施例中,实践本公开的指令序列的执行由计算机系 统1000的单个实例进行。根据本公开的其他实施例,由通信链路1015 (如LAN、PTSN或无线网络)连接的两个或更多计算机系统1000 可以彼此协调地执行实践本公开所需的指令序列。

计算机系统1000可以经由通信链路1015和通信接口1014发送 和接收消息、数据和指令,包括程序即应用代码。收到的程序代码可 以由处理器1007在其被收到时执行,并且/或者存储在盘驱动器1010 或其他非易失性存储器中用于后来执行。计算机系统1000可以经由数 据接口1033与外部数据储存库1031上的数据库通信。实施本文使用 的模块时能够使用系统存储器1008的任何部分以及任何程度的硬连 线电路的任何混合,包括实施为处理器1007的硬连线电路。

在以上说明书中,已经参考本公开的特定实施例介绍了本公开。 不过显而易见,可以对其进行多种修改和改变而不脱离本公开的更广 阔的实质和范围。例如,参考处理动作的特定顺序介绍了上述处理流 程。不过,介绍的许多处理动作的顺序都可以改变而不影响本公开的 范围或操作。所以,说明书和附图被视为示例意义而不是限制意义。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号