CN102981818A - 基于情境的动画库 - Google Patents
基于情境的动画库 Download PDFInfo
- Publication number
- CN102981818A CN102981818A CN2012103316308A CN201210331630A CN102981818A CN 102981818 A CN102981818 A CN 102981818A CN 2012103316308 A CN2012103316308 A CN 2012103316308A CN 201210331630 A CN201210331630 A CN 201210331630A CN 102981818 A CN102981818 A CN 102981818A
- Authority
- CN
- China
- Prior art keywords
- animation
- definition
- library
- storyboard
- situation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
各种实施例基于各种常见用户界面情境提供了动画描述的库。应用开发者可以基于用户与用户界面的交互而针对动画查询动画库。该库定义了用于创建特定动画的变换原语的用法、变换原语的故事板制作以及相关联的计时功能。这些定义可以被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
Description
背景技术
许多常见用户界面情境利用(leverage)转变和动画,从而创建更流畅的视觉效果以将用户体验联系在一起。例如,当在应用之间转变时,一个应用可以在视觉上逐渐消失,同时另一个应用在视觉上逐渐显现。为了创建统一、标准化的用户体验,应当以一致的方式应用运动,使得该运动感觉好像它在讲述单个连贯的故事。然而到目前为止,动画倾向于使用诸如转变、旋转等之类的不同元素以零碎的方式执行。这使得开发者或动画设计者必须单独地编程代码以执行这些不同的动画元素,从而导致在相关***上不一致的用户体验。
发明内容
该发明内容被提供以通过简化形式引入在下面的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识要求保护的主题的关键特征或必要特征,也不旨在用作在确定要求保护的主题的范围方面的辅助。
各种实施例基于各种常见用户界面情境提供了动画描述的库。应用开发者可以使得该动画库基于用户与用户界面的交互而被针对动画查询。该库定义了用于创建特定动画的变换原语(transformation primitive)的用法、变换原语的故事板制作以及相关联的计时功能。这些定义可以被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
利用动画库,应用开发者可以将在他们的特定用户界面中的情境映射到匹配动画,而无需理解特定动画后面的细节。该抽象不仅简化了应用开发者的任务,而且它允许动画设计在特定***上一致地应用。
附图说明
参照附图描述具体实施方式。在附图中,附图标记的最左边的(多个)数字标识该附图标记在其中第一次出现的附图。在说明书和附图中,不同实例中相同附图标记的使用可以指示相似或相同的项目。
图1是根据一个或多个实施例的示例实现方式中环境的图示。
图2是图1所示的示例实现方式中***的更详细的图示。
图3是根据一个或多个实施例的示例动画库的图示。
图4是根据一个或多个实施例的动画定义的示例集合的图示。
图5是根据一个或多个实施例的示例XML定义的故事板的图示。
图6是示例XML定义的故事板和该故事板涉及的各种相关联的用户界面状态。
图7是与图6相关的、视觉地示出图6的XML定义的故事板中定义的变换之间的时序关系的图示。
图8是描述根据本发明的一个或多个实施例的方法中的步骤的流程图。
图9图示了可以被用于实现本文描述的各种实施例的示例计算设备。
具体实施方式
概述
各种实施例基于各种常见用户界面情境提供动画描述的库。应用开发者可以使得该动画库基于用户与用户界面的交互而被针对动画查询。该库定义了用于创建特定动画的变换原语的用法、变换原语的故事板制作以及相关联的计时功能。这些定义可以被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
利用动画库,应用开发者可以将在他们的特定用户界面中的情境映射到匹配动画,而无需理解特定动画后面的细节。该抽象不仅简化了应用开发者的任务,而且它允许动画设计在特定***上一致地应用。
例如,在特定***中,具有“页码”情境的各种应用可以利用动画库以基于在动画库中出现的“页码”动画定义来转变。因此,在不同应用上的页码可以以标准化方式实现。而且,动画库允许统一的、集成的未来更新。
在一个或多个实施例中,动画库可以在多种不同的平台上被利用,并且在此意义下,动画库可以是平台无关的。
因此,动画库提供各种动画的统一的、标准化的描述所驻留的中央位置。所述定义基于通常发生在特定用户界面内的用户界面情境。通过示例而非限制,通常发生的用户界面情境可以包括用户界面的渐显或渐隐的部分、用户界面的滑上或滑落屏幕的对话框或其他部分、在用户界面元素被触摸或另外地被占用时发生的效果、在新用户界面元素出现在屏幕上时发生的效果、和/或在窗口希望发布用户通知时发生的什么。动画库提供远离再现和复合技术的抽象的水平,其导致它的上述平台无关的属性。而且,各种实施例利用标准化语言来描述可以在多个元件、元件的阵列等上操作的动画。
在下面的讨论中,首先描述可操作来使用本文所描述的技术的示例环境。然后,描述各种实施例的示例图示,其可以在示例环境中以及在其他环境中使用。因此,该示例环境不限于执行所描述的实施例并且所描述的实施例不限于在该示例环境中实现。
示例环境
图1是可操作来使用本文档中所描述的动画技术的示例实现方式中的环境100的图示。所图示的环境100包括可以以多种方式配置的计算设备102的示例。例如,计算设备102可以被配置为传统计算机(例如台式个人计算机、膝上型计算机等等)、移动站、娱乐器具、通信地耦合到电视的机顶盒、无线电话、上网本、游戏控制台、手持式设备等等,如关于图2进一步描述的。因此,计算设备102的范围可以是从具有大量存储器和处理器资源的全资源设备(例如,个人计算机、游戏控制台)到具有有限的存储器和/或处理器资源的低资源设备(例如,传统机顶盒、手持式游戏控制台)。计算设备102还包括使计算设备102执行下述一个或多个操作的软件。
计算设备102包括动画库104以用于提供如在本文档中描述的动画功能。动画库可以结合任何适当类型的硬件、软件、固件或其组合来实现。在至少一些实施例中,动画库在驻留在某种类型的有形的、计算机可读存储介质上的软件中实现,下文中提供了所述存储介质的示例。
动画库104表示基于各种常见用户界面情境提供动画描述的库的功能。动画库可以基于用户与用户界面的交互而被针对动画查询。该库定义了用于创建特定动画的变换原语的用法、变换原语的故事板制作以及相关联的计时功能。这些定义可以被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
因此,如上所记录,动画库提供各种动画的统一的、标准化的描述所驻留的中央位置。所述定义基于通常发生在特定用户界面内的用户界面情境。动画库提供远离再现和合成技术的抽象的水平,其导致它的上述平台无关的属性。而且,各种实施例利用标准化语言来描述可以在多个元件、元件的阵列等上操作的动画。
计算设备102还包括手势模块105,其辨识可以由一个或多个手指执行的手势并且使得执行对应于这些手势的操作。手势可以由模块105以多种不同方式辨识。例如,手势模块105可以被配置成辨识触摸输入,比如邻近使用触摸屏功能的计算设备102的显示设备108的用户的手106a的手指。模块105可以被用于辨识单手指手势和边框手势(bezel gesture)、多手指/同一只手的手势和边框手势、和/或多手指/不同手的手势和边框手势。
计算设备102还可以被配置成检测(例如由用户的手106a的一个或多个手指提供的)触摸输入和(例如由触控笔116提供的)触控笔输入并区分它们。所述区分可以以多种方式执行,比如通过检测被用户的手106的手指接触的显示设备108的量对比被触控笔116接触的显示设备108的量。
因此,手势模块105可以通过辨识和利用触控笔与触摸输入之间的划分(division)以及不同类型的触摸输入支持多种不同的手势技术。
图2图示了示例***200,其示出如在其中通过中央计算设备互连多个设备的环境中实现的动画库104和手势模块105。中央计算设备对多个设备而言可以是本地的,或者可以位于远离所述多个设备的地方。在一个实施例中,中央计算设备是“云”服务器群,其包括一个或多个通过网络或因特网或其他装置连接到多个设备的服务器计算机。
在一个实施例中,该互连架构使得能够在多个设备上递送功能,以便向多个设备的用户提供共同的且无缝的体验。多个设备中的每一个可以具有不同的物理需求和能力,并且中央计算设备使用平台以使得既针对该设备定制而又针对所有设备共同的体验能够递送到设备。在一个实施例中,创建目标设备的“类”并且针对设备的通用类定制体验。设备的类可以通过设备的物理特征或用途或其他常见特性来定义。例如,如前所述,计算设备102可以以多种不同方式来配置,比如针对移动装置202、计算机204和电视206的使用来配置。这些配置的每一个具有通常对应的屏幕尺寸并且因此计算设备102可以被配置为该示例***200中这些设备类之一。例如,计算设备102可以采用包括移动电话、音乐播放器、游戏设备等的移动装置202类设备。计算设备102还可以采用包括个人计算机、膝上型计算机、上网本等的计算机204类设备。电视206配置包括涉及在休闲的环境中的显示的设备的配置,例如电视、机顶盒、游戏控制台等。因此,本文描述的技术可以由计算设备102的这些各种配置支持并且不限于下面部分中描述的特定示例。
云208被图示为包括用于web服务212的平台210。该平台210使云208的硬件(例如服务器)和软件资源的底层功能抽象化并且因此可以充当“云操作***”。例如,平台210可以使资源抽象化以将计算设备102与其他计算设备连接。平台210还可以用来使资源的缩放抽象化以按照所遇到经由平台210实现的web服务212的需要提供对应的缩放水平。多种其他示例也被预期,比如在服务器群中的服务器的负载平衡、防范恶意方(例如垃圾邮件、病毒或其他恶意软件)等等。
因此,云208作为关于经由因特网或其他网络被使得可用于计算设备102的软件和硬件资源的策略的一部分而包括在内。例如,动画库104可以部分地在计算设备102上以及经由支持web服务212的平台210来实现。
由手势模块支持的手势技术可以使用在移动配置202中的触摸屏功能、计算机204配置的跟踪板功能来检测,通过作为不涉及与特定输入设备接触的自然用户接口(NUI)的支持的一部分的相机来检测,等等。而且,用于检测和辨识输入以识别特定手势的操作的执行可以遍及***200而比如由计算设备102和/或云208的平台210支持的web服务212来分配。
一般地,本文所描述的任何功能可以使用软件、固件、硬件(例如固定的逻辑电路)、手动处理或这些实现方式的组合来实现。如本文所使用的术语“模块”、“功能”和“逻辑”一般地表示软件、固件、硬件或其组合。在软件实现方式的情况下,模块、功能或逻辑表示当在处理器(例如一个或多个CPU)上执行或由处理器执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中。下文所述的手势技术的特征是平***立的,这意味着所述技术可以在具有多种处理器的多种商业计算平台上实现。
在下面的讨论中,各个部分描述各种示例实施例。标题为“示例动画库”的部分描述根据一个或多个实施例的示例动画库。此后,标题为“示例故事板”的部分描述根据一个或多个实施例的示例故事板。接下来,标题为“示例方法”的部分描述根据一个或多个实施例的示例方法。最后,标题为“示例设备”的部分描述可以用于实现一个或多个实施例的示例设备的各个方面。
已经描述了可以在其中利用动画库的示例操作环境,现在考虑根据一个或多个实施例的示例动画库的讨论。
示例动画库
图3一般地在300处图示了根据一个或多个实施例的示例动画库。在该示例中,动画库300包括动画定义302的集合、语言分析器304和情境仓库306。
在一个或多个实施例中,动画定义集合302包括以标准化语言表达的一组情境描述。情境描述提供了由可以包括应用的各种***使用的预定义的动画和视觉风格,所述应用包括本地应用、web应用和托管应用。所述集合内所包含的动画定义提供了在各种情境中一致的动画和视觉风格。所述集合内的动画定义定义了用于创建特定动画的变换原语的用法、变换原语的故事板制作以及相关联的计时功能。这些定义被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
如上所记录,情境描述以标准化语言表达。可以利用任何适当的标准语言,而不脱离要求保护的主题的精神和范围。在至少一些实施例中,标准化语言包括可扩展标记语言(XML),下文提供其示例。
在所图示和描述的实施例中,语言分析器304被配置成与动画定义302的集合交互以处理这些定义和与之相关联的图形资产,并且使得这些定义能够被调用应用访问。
情境仓库306包括多个应用程序接口,其使得调用应用能够访问驻留在动画定义的集合中的情境描述。
图4更详细地图示了根据一个或多个实施例的动画定义302的集合。在该示例中,每个动画定义或情境描述被表示为单独的故事板。每个故事板被配置成定义或描述可以被调用应用利用的动画。任意适当数量的故事板400、402可以包括在动画定义302的集合内。
在所图示和描述的实施例中,每个故事板包括一个或多个计时功能404和故事板内容406。如技术人员将领会,动画中的计时功能支配被图示的动作发生的速度以及其他属性。例如,在平板电脑环境中,如果用户在足以使键盘暴露的显示屏上轻敲,则计时功能支配在用户界面中键盘暴露到用户的速度和方式。同样,如果用户界面将在两个不同的应用之间的转变,则计时功能支配这些应用彼此间的转变的速度和方式。
故事板内容406包括一个或多个目标名称408和一个或多个变换410。目标名称408描述作为信息的主题的目标。变换410描述将用在特定动画中的单独的变换原语以及如将在下文中变得清楚明白的与变换原语相关联的属性。
已经考虑了动画定义302的示例集合,现在考虑根据一个或多个实施例的以XML形式的标准化语言描述的示例故事板的讨论。
示例故事板
图5图示了根据本发明的一个或多个实施例的以XML描述的示例故事板。在该示例中,故事板一般地在500处使用两个计时功能,每一个的类型为“CubicBezier(三次贝塞尔)”。第一个计时功能被命名为“EaseIn(逐步适应)”,而第二个计时功能被命名为“Linear(线性)”。每个计时功能的XML封装包括要被用于实现该计时功能的参数。
再往下,在故事板的XML表示中,出现故事板的名称502-这里是“Sample(样本)”。该XML还包括在504处的目标名称和与目标名称相关联的其他属性,以及一般地在506处所示的变换原语的集合。变换原语506的集合包括变换名称和与如何将特定变换应用到命名的目标有关的各种参数。例如,出现的第一变换原语是“scale2D(缩放2D)”,连同与该特定变换如何被应用有关的各种参数。在该示例中,这些参数包括开始时间和持续时间,以及与实现变换相关联的值,和要与该变换一起使用的计时功能。
在该示例中,存在七个要被应用的变换,包括一个缩放变换、一个倾斜变换、一个旋转变换、两个平移变换、一个不透明变换以及一个交错变换。此外,称作“OverlayBackground(覆盖背景)”的静态图像508被定义并被用于实现与该特定故事板相关联的动画。
因此,由该特定故事板定义的动画可以由调用应用用来依据用户与应用的用户界面的交互来实现与该应用遇到的用户界面情境相关联的特定动画。
作为示例,考虑图6和7,它们图示了示例XML定义的故事板的各个方面。特别地,图6图示了在600处的XML定义的故事板,并且在正下方的用户界面体验,其对应于由故事板600定义的动画。相应地,图7图示了如在XMl定义的故事板600中阐述的各种变换原语和它们的相关联的时序关系的视觉表示。
首先参照XML定义的故事板600,名为“Expansion(膨胀)”的动画被定义。动画“Expansion”描述了各种元件如何膨胀以容纳可以被用户在其上点击的元件,以及新元件如何可以***在各种元件之间。在该示例中,存在三个目标类型-第一个命名为“clicked(被点击的)”、第二个命名为“affected(受影响的)”,以及第三个命名为“revealed(显露的)”。
“clicked”目标对应于用户在其上点击的元件。“affected”目标对应于响应于正被点击的元件而移动的一个或多个元件。“revealed”目标对应于将会在定义在被点击的元件和受影响的元件之间的空间内出现的元件。
参照XML定义的故事板600,每个被称为“allowcollection(允许集合)”的目标的属性定义了多个元件是否可以包括在特定目标内。因此,例如,目标类型“clicked”和“affected”不允许多个元件。然而,目标类型“affected”不允许特定目标内的多个元件。
目标类型“clicked”包括具有规定的持续时间、值和计时功能的两个缩放变换。目标类型“affected”具有平移变换和交错变换,其具有规定的持续时间并且对于该变换而言具有计时功能。目标类型“revealed”具有不透明变换,其具有规定的持续时间、值和计时功能。
现在参照XML定义的故事板正下方的用户界面体验,分别在602、616、618、620和624处示出多个不同的用户界面状态。
用户界面状态602构成在任意用户交互之前的用户界面的状态。在该状态中,多个元件出现在用户界面内。在604、606、608、610、612和614处示出了这些元件。
在用户界面状态616中,假定用户已在元件608上点击,从而使其成为“clicked”目标。作为被点击的目标,在XML中定义的缩放变换被应用于该元件。在图7中,一般地在700处示出故事板的时序关系的视觉表示。这里,应用于图6中的元件608的变换被示出为前两个条目。通过在元件608上点击,用户的动作已将元件610、612和614定义成为“affected”元件。
因此,在用户界面状态618中,这些元件根据如XML中定义的平移变换及其相关联的参数而被向右平移。这对应于图7中的时序关系的视觉表示中的第三条目。
参照用户界面状态620,根据在XML中定义的半透明变换,新元件622是“revealed”。该元件渐显,直到它完全渐显。这在用户界面状态624中示出,在用户界面状态624中完全渐显的元件被显现为元件626。
已经考虑了根据一个或多个实施例的示例故事板,现在考虑根据一个或多个实施例的示例方法的讨论。
示例方法
图8是描述根据一个或多个实施例的方法中的步骤的流程图。该方法可以结合任意适当的硬件、软件、固件或其组合来执行。在至少一些实施例中,该方法可以由体现在某类型的计算机可读存储介质上的软件来执行。在该特定流程图中,存在两列,一列指明为“应用”,而另一列指明为“动画库”。每列表示执行特定动作或操作的实体。
步骤800接收与用户界面相关联的用户交互。可以接收任意适当类型的用户交互。例如,用户交互可以通过落在特定情境内的手势的形式来完成,比如轻打或猛击。例如,用户可以在片块或其他用户界面元件上下压。步骤802响应于接收用户交互来确定一个或多个受影响的目标。步骤804调用动画库并且请求与特定情境相关联的变换信息。该步骤可以以任何适当方式实现。例如,在至少一些实施例中,该应用对于特定情境而言可以包括故事板ID和一个或多个目标名称。在至少一些实施例中,该步骤可以询问多少变换可用于故事板ID和一个或多个特定的目标名称。
步骤806接收请求变换信息的调用并且相应地处理该信息。处理可以以任何适当方式发生。例如,该调用可以由情境仓库来接收,比如图3中的情境仓库306。情境仓库306可以调用语言分析器304,使得该语言分析器可以从动画定义302的集合获得变换信息。可替代地,情境仓库306可以直接从动画定义302的集合获得变换信息。一旦获得了变换信息,步骤808将变换信息返回到调用应用。
步骤810接收变换信息,并且步骤812调用动画库并请求用于该情境的动画定义。应当领会和理解,取代单独调用,可以取而代之地进行一个调用。在至少一些实施例中,该调用请求用于与当前情境相关联的特定动画的XML定义。
步骤814接收请求动画定义的调用并且相应地处理该调用。处理可以以任何适当方式发生。例如,该调用可以由情境仓库接收,比如图3中的情境仓库306。情境仓库306可以调用语言分析器304,使得该语言分析器可以从动画定义302的集合获得动画定义。可替代地,情境仓库306可以直接从动画定义302的集合获得动画定义。一旦获得了动画定义,步骤816将该动画定义返回到调用应用。
步骤818接收动画定义,并且步骤820建立相关联的故事板并且实现如在该动画定义中定义的动画。
已经描述了根据一个或多个实施例的示例方法,现在考虑可以用于实现上述实施例的示例设备的讨论。
示例设备
图9图示了可以实现为如参照图1和2所描述的任何类型的便携式和/或计算机设备的示例设备900的各种组件,以实现本文所描述的动画库的实施例。设备900包括实现设备数据904(例如,已接收的数据、正在接收的数据、调度用于广播的数据、数据的数据分组等)的有线和/或无线通信的通信设备902。设备数据904或其他设备内容可以包括设备的配置设置、存储在该设备上的媒体内容和/或与设备的用户相关联的信息。存储在设备900上的媒体内容可以包括任何类型的音频、视频和/或图像数据。设备900包括一个或多个数据输入906,任何类型的数据、媒体内容和/或输入可以经由所述数据输入而被接收,比如用户可选择的输入、消息、音乐、电视媒体内容、记录的视频内容、以及从任何内容和/或数据源接收的任何其他类型的音频、视频和/或图像数据。
设备900还包括通信接口908,其可以实现为串行和/或并行接口、无线接口、任何类型的网络接口、调制解调器的任意一个或多个并且实现为任何其他类型的通信接口。通信接口908在设备900与通信网络之间提供连接和/或通信链路,其他电子设备、计算设备和通信设备通过该连接和/或通信链路与设备900通信数据。
设备900包括一个或多个处理器910(例如微处理器、控制器等中的任意一个),其处理各种计算机可执行或可读指令以控制设备900的操作并且实现上述实施例。可替代地或此外,设备900可以利用硬件、固件或结合一般地在912处标识的处理和控制电路而实现的固定逻辑电路中的任何一个或其组合来实现。尽管未示出,但是设备900可以包括***总线或数据传送***,其耦合设备内的各种组件。***总线可以包括不同的总线结构的任何一个或组合,比如存储器总线或存储器控制器、***总线、通用串行总线和/或利用多种总线架构中任何一种的处理器或局部总线。
设备900还包括计算机可读介质914,比如一个或多个存储器组件,其示例包括随机存取存储器(RAM)、非易失性存储器(例如,只读存储器(ROM)、闪存、EPROM、EEPROM等中的任意一个或多个)以及盘存储设备。盘存储设备可以被实现为任何类型的磁或光存储设备,比如硬盘驱动器、可记录和/或可重写紧凑盘(CD)、任何类型的数字通用盘(DVD)等等。设备900还可以包括大容量存储介质设备916。
计算机可读介质914提供数据存储机构以存储设备数据904,以及各种设备应用918和与设备900的操作方面相关的任何其他类型的信息和/或数据。例如,操作***920可以被利用计算机可读介质914而被保持为计算机应用并且在处理器910上执行。设备应用918可以包括设备管理器(例如,控制应用、软件应用、信号处理和控制模块、源自特定设备的代码、用于特定设备的硬件抽象层等),以及其他应用,所述其他应用可以包括web浏览器、图形处理应用、比如即时消息传递应用之类的通信应用、字处理应用和多种其他不同的应用。设备应用918还包括任何用于实现本文所述的技术的实施例的***组件或模块。在该示例中,设备应用918包括接口应用922和手势捕获驱动器924,其被示出为软件模块和/或计算机应用。手势捕获驱动器924表示为接口提供被配置成捕获手势的设备的软件,所述设备比如触摸屏、跟踪板、相机等。可替代地或此外,接口应用922和手势捕获驱动器924可以被实现为硬件、软件、固件或其任意组合。此外,计算机可读介质914可以包括如上文所述地运行的动画库925。
设备900还包括向音频***928提供音频数据并且/或者向显示***930提供视频数据的音频和/或视频输入-输出***926。音频***928和/或显示***930可以包括处理、显示和/或以另外方式再现音频、视频和图像数据的任何设备。视频信号和音频信号可以从设备900经由RF(射频)链路、S-视频链路、复合视频链路、分量视频链路、DVI(数字视频接口)、模拟音频连接或其他类似的通信链路而被传送到音频设备和/或显示设备。在实施例中,音频***928和/或显示***930被实现为设备900的外部组件。可替代地,音频***928和/或显示***930被实现为示例设备900的集成组件。
结论
各种实施例基于各种常见用户界面情境提供了动画描述的库。应用开发者可以基于用户与用户界面的交互针对动画查询动画库。该库定义了用于创建特定动画的变换原语的用法、变换原语的故事板制作以及相关联的计时功能。这些定义可以被提供给调用应用,使得该应用可以实现利用故事板制作的变换原语的动画。
利用动画库,应用开发者可以将在他们的特定用户界面中的情境映射到匹配动画,而无需理解特定动画后面的细节。该抽象不仅简化了应用开发者的任务,而且它允许动画设计在特定***上一致地应用。
尽管已经以特定于结构特征和/或方法动作的语言描述了实施例,但是应当理解,在所附权利要求中定义的实施例不必限于所描述的特定特征或动作。相反,这些特定特征和动作是作为实现要求保护的实施例的示例形式而被公开的。
Claims (11)
1.一种方法,包括:
接收(800)与应用用户界面相关联的用户交互;
响应于接收用户交互,确定(802)一个或多个受影响的目标;
调用(812)动画库以请求用于与用户交互相关联且与所述一个或多个受影响的目标相关联的情境的动画定义;
从动画库接收(818)用于所述情境的动画定义;以及
使用动画定义建立(820)被配置成实现与所述情境相关联的动画的故事板。
2.权利要求1的方法,其中所述接收通过经手势的形式接收用户交互来执行。
3.权利要求1的方法,进一步包括:在调用动画库以请求动画定义之前,调用动画库以请求与特定情境相关联的变换信息。
4.权利要求1的方法,进一步包括:在调用动画库以请求动画定义之前,调用动画库以请求与特定情境相关联且包括故事板ID和一个或多个目标名称的变换信息。
5.权利要求1的方法,其中调用动画库以请求动画定义包括调用动画库以请求XML动画定义。
6.权利要求1的方法,进一步包括使用故事板实现动画。
7.一个或多个计算机可读存储介质,包括存储在其上的指令,这些指令被计算机执行时完成如权利要求1-6中任一项所述的方法。
8.一个或多个体现可调用动画库(300)的计算机可读存储介质(914),该可调用动画库包括动画定义(302)的集合,各个动画定义(302)与各个的相应用户界面情境相关联,各个动画定义(302)以标准化语言表达;
所述动画定义中的至少一些包括至少一个计时功能(404)和故事板内容(406),所述故事板内容包括一个或多个目标名称(408)和一个或多个变换(410);
所述至少一个计时功能(404)和所述故事板内容(406)被配置成由调用应用用来建立故事板并实现与用户界面情境相关联的相关联动画。
9.权利要求8的所述一个或多个计算机可读存储介质,其中所述标准化语言包括XML。
10.权利要求8的所述一个或多个计算机可读存储介质,其中至少一些动画定义可以用于在多个元件上操作。
11.权利要求8的所述一个或多个计算机可读存储介质,其中至少一些动画定义可以用于在元件阵列上操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/229,695 | 2011-09-10 | ||
US13/229,695 US20130063446A1 (en) | 2011-09-10 | 2011-09-10 | Scenario Based Animation Library |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102981818A true CN102981818A (zh) | 2013-03-20 |
Family
ID=47829443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012103316308A Pending CN102981818A (zh) | 2011-09-10 | 2012-09-10 | 基于情境的动画库 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20130063446A1 (zh) |
EP (1) | EP2754036A4 (zh) |
CN (1) | CN102981818A (zh) |
TW (1) | TWI585667B (zh) |
WO (1) | WO2013036251A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130232144A1 (en) * | 2012-03-01 | 2013-09-05 | Sony Pictures Technologies, Inc. | Managing storyboards |
US8651944B1 (en) * | 2012-08-09 | 2014-02-18 | Cadillac Jack, Inc. | Electronic gaming device with scrape away feature |
US20140372935A1 (en) * | 2013-06-14 | 2014-12-18 | Microsoft Corporation | Input Processing based on Input Context |
US10157593B2 (en) | 2014-02-24 | 2018-12-18 | Microsoft Technology Licensing, Llc | Cross-platform rendering engine |
US10444977B2 (en) * | 2014-12-05 | 2019-10-15 | Verizon Patent And Licensing Inc. | Cellphone manager |
US9786032B2 (en) * | 2015-07-28 | 2017-10-10 | Google Inc. | System for parametric generation of custom scalable animated characters on the web |
US10013789B2 (en) | 2015-11-20 | 2018-07-03 | Google Llc | Computerized motion architecture |
CN105719332B (zh) * | 2016-01-20 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 色彩补间动画的实现方法和装置 |
US11556318B2 (en) | 2021-03-24 | 2023-01-17 | Bank Of America Corporation | Systems and methods for assisted code development |
US11243749B1 (en) * | 2021-03-24 | 2022-02-08 | Bank Of America Corporation | Systems and methods for assisted code development |
Family Cites Families (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0497327B1 (en) * | 1991-01-29 | 1999-05-12 | Fujitsu Limited | An animation display processor |
US7260777B2 (en) * | 2001-08-17 | 2007-08-21 | Desknet Inc. | Apparatus, method and system for transforming data |
US20030167334A1 (en) * | 2002-03-04 | 2003-09-04 | Mark Henry Butler | Provision of content to a client device |
US7086032B2 (en) * | 2003-02-20 | 2006-08-01 | Adobe Systems Incorporated | System and method for representation of object animation within presentations of software application programs |
US20050122328A1 (en) * | 2003-12-05 | 2005-06-09 | Peiya Liu | Method and apparatus for specifying animation styles |
WO2005116823A2 (en) * | 2004-05-17 | 2005-12-08 | Invensys Systems, Inc. | System and method for developing animated visualization interfaces |
US7688323B2 (en) * | 2004-07-20 | 2010-03-30 | Luxology, Llc | Function portions of animation program |
US7788634B2 (en) * | 2004-09-03 | 2010-08-31 | Ensequence, Inc. | Methods and systems for efficient behavior generation in software application development tool |
US20060084495A1 (en) * | 2004-10-19 | 2006-04-20 | Wms Gaming Inc. | Wagering game with feature for recording records and statistics |
US7336280B2 (en) | 2004-11-18 | 2008-02-26 | Microsoft Corporation | Coordinating animations and media in computer display output |
US20060150125A1 (en) * | 2005-01-03 | 2006-07-06 | Arun Gupta | Methods and systems for interface management |
US20060232589A1 (en) * | 2005-04-19 | 2006-10-19 | Microsoft Corporation | Uninterrupted execution of active animation sequences in orphaned rendering objects |
US20060259868A1 (en) * | 2005-04-25 | 2006-11-16 | Hirschberg Peter D | Providing a user interface |
US7561159B2 (en) * | 2005-05-31 | 2009-07-14 | Magnifi Group Inc. | Control of animation timeline |
US8504925B1 (en) * | 2005-06-27 | 2013-08-06 | Oracle America, Inc. | Automated animated transitions between screens of a GUI application |
US7477254B2 (en) * | 2005-07-13 | 2009-01-13 | Microsoft Corporation | Smooth transitions between animations |
JP2007156650A (ja) * | 2005-12-01 | 2007-06-21 | Sony Corp | 画像処理装置 |
US7898542B1 (en) * | 2006-03-01 | 2011-03-01 | Adobe Systems Incorporated | Creating animation effects |
KR100801666B1 (ko) * | 2006-06-20 | 2008-02-11 | 뷰모션 (주) | 텍스트-모션 변환을 이용한 디지털 스토리 보드 생성 방법및 시스템 |
US8340493B2 (en) * | 2006-07-06 | 2012-12-25 | Sundaysky Ltd. | Automatic generation of video from structured content |
US9019300B2 (en) * | 2006-08-04 | 2015-04-28 | Apple Inc. | Framework for graphics animation and compositing operations |
US8130226B2 (en) * | 2006-08-04 | 2012-03-06 | Apple Inc. | Framework for graphics animation and compositing operations |
US20080072166A1 (en) * | 2006-09-14 | 2008-03-20 | Reddy Venkateshwara N | Graphical user interface for creating animation |
US8375302B2 (en) * | 2006-11-17 | 2013-02-12 | Microsoft Corporation | Example based video editing |
US9772751B2 (en) * | 2007-06-29 | 2017-09-26 | Apple Inc. | Using gestures to slide between user interfaces |
US20090079744A1 (en) * | 2007-09-21 | 2009-03-26 | Microsoft Corporation | Animating objects using a declarative animation scheme |
US20090201298A1 (en) * | 2008-02-08 | 2009-08-13 | Jaewoo Jung | System and method for creating computer animation with graphical user interface featuring storyboards |
US20110185342A1 (en) * | 2008-06-03 | 2011-07-28 | Whirlpool Corporation | Appliance development toolkit |
US20090315896A1 (en) * | 2008-06-24 | 2009-12-24 | Microsoft Corporation | Animation platform |
US20090315897A1 (en) * | 2008-06-24 | 2009-12-24 | Microsoft Corporation | Animation platform |
US20090322760A1 (en) * | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Dynamic animation scheduling |
WO2010051493A2 (en) * | 2008-10-31 | 2010-05-06 | Nettoons, Inc. | Web-based real-time animation visualization, creation, and distribution |
US8614709B2 (en) * | 2008-11-11 | 2013-12-24 | Microsoft Corporation | Programmable effects for a user interface |
CN103605452B (zh) * | 2008-11-11 | 2018-04-17 | 索尼电脑娱乐公司 | 图像处理装置、以及图像处理方法 |
US8223152B2 (en) * | 2008-11-13 | 2012-07-17 | Samsung Electronics Co., Ltd. | Apparatus and method of authoring animation through storyboard |
KR20110012541A (ko) * | 2009-07-30 | 2011-02-09 | 함정운 | 디지털 스토리보드 생성 시스템 |
US20110096076A1 (en) * | 2009-10-27 | 2011-04-28 | Microsoft Corporation | Application program interface for animation |
US20110167403A1 (en) * | 2009-12-04 | 2011-07-07 | Jason Townes French | Methods for platform-agnostic definitions and implementations of applications |
US9223589B2 (en) * | 2010-02-26 | 2015-12-29 | Microsoft Technology Licensing, Llc | Smooth layout animation of visuals |
KR20110099414A (ko) * | 2010-03-02 | 2011-09-08 | 삼성전자주식회사 | 휴대용 단말기에서 애니메이션 효과를 제공하기 위한 장치 및 방법 |
US20110239109A1 (en) * | 2010-03-24 | 2011-09-29 | Mark Nixon | Methods and apparatus to display process data |
US20110258534A1 (en) * | 2010-04-16 | 2011-10-20 | Microsoft Corporation | Declarative definition of complex user interface state changes |
US20110285727A1 (en) * | 2010-05-24 | 2011-11-24 | Microsoft Corporation | Animation transition engine |
US20110296030A1 (en) * | 2010-05-25 | 2011-12-01 | Sony Corporation | Single rui renderer on a variety of devices with different capabilities |
US20110298787A1 (en) * | 2010-06-02 | 2011-12-08 | Daniel Feies | Layer composition, rendering, and animation using multiple execution threads |
WO2012011228A1 (ja) * | 2010-07-23 | 2012-01-26 | パナソニック株式会社 | アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法 |
US8866822B2 (en) * | 2010-09-07 | 2014-10-21 | Microsoft Corporation | Alternate source for controlling an animation |
US8957900B2 (en) * | 2010-12-13 | 2015-02-17 | Microsoft Corporation | Coordination of animations across multiple applications or processes |
US8694900B2 (en) * | 2010-12-13 | 2014-04-08 | Microsoft Corporation | Static definition of unknown visual layout positions |
US20130132840A1 (en) * | 2011-02-28 | 2013-05-23 | Joaquin Cruz Blas, JR. | Declarative Animation Timelines |
US8902235B2 (en) * | 2011-04-07 | 2014-12-02 | Adobe Systems Incorporated | Methods and systems for representing complex animation using scripting capabilities of rendering applications |
US9773336B2 (en) * | 2011-06-03 | 2017-09-26 | Adobe Systems Incorporated | Controlling the structure of animated documents |
US9007381B2 (en) * | 2011-09-02 | 2015-04-14 | Verizon Patent And Licensing Inc. | Transition animation methods and systems |
US9558578B1 (en) * | 2012-12-27 | 2017-01-31 | Lucasfilm Entertainment Company Ltd. | Animation environment |
-
2011
- 2011-09-10 US US13/229,695 patent/US20130063446A1/en not_active Abandoned
- 2011-10-07 TW TW100136569A patent/TWI585667B/zh not_active IP Right Cessation
- 2011-10-08 WO PCT/US2011/055498 patent/WO2013036251A1/en active Application Filing
- 2011-10-08 EP EP20110872159 patent/EP2754036A4/en not_active Withdrawn
-
2012
- 2012-09-10 CN CN2012103316308A patent/CN102981818A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
TW201312446A (zh) | 2013-03-16 |
WO2013036251A1 (en) | 2013-03-14 |
TWI585667B (zh) | 2017-06-01 |
US20130063446A1 (en) | 2013-03-14 |
EP2754036A4 (en) | 2015-05-06 |
EP2754036A1 (en) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981818A (zh) | 基于情境的动画库 | |
CN107957831B (zh) | 一种展示界面内容的数据处理方法、装置和处理设备 | |
US9575652B2 (en) | Instantiable gesture objects | |
KR102006598B1 (ko) | 채널 바의 관리 | |
CN103649902B (zh) | 沉浸式和桌面外壳的显示 | |
US20110310118A1 (en) | Ink Lag Compensation Techniques | |
KR20170045257A (ko) | 메시지 대화 이력의 신속 내비게이션 | |
CN109074276A (zh) | ***任务切换器中的选项卡 | |
WO2016048310A1 (en) | Management of the channel bar | |
US20150301730A1 (en) | Object Suspension Realizing Method and Device | |
JP2022520094A (ja) | インタフェース表示方法及びその装置、端末並びにコンピュータプログラム | |
KR20130105879A (ko) | 사용자 인터페이스에서의 작업 공간 관리 | |
KR20140001120A (ko) | 단일 스크린과 다중 전경 처리를 위한 태스크 방법 및 그 전자 장치 | |
US20130169649A1 (en) | Movement endpoint exposure | |
CN109388309B (zh) | 菜单的显示方法、装置、终端及存储介质 | |
CN113268212A (zh) | 投屏方法、装置、存储介质及电子设备 | |
KR20140109926A (ko) | 입력 포인터 지연 기법 | |
US8769169B2 (en) | Assistive buffer usage techniques | |
US20150352442A1 (en) | Game having a Plurality of Engines | |
CN105518618A (zh) | 配置成将针对视觉元素的输入路由到图形框架的输入对象 | |
CN107562324A (zh) | 数据显示控制的方法和终端 | |
CN104025008A (zh) | 使能性能级联操作 | |
KR102678963B1 (ko) | 온라인 광고 노출 방법 및 시스템 | |
WO2023165363A1 (zh) | 短视频的播放方法、装置及电子设备 | |
CN112817790B (zh) | 模拟用户行为的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130320 |