CN106852178A - 动画架构 - Google Patents
动画架构 Download PDFInfo
- Publication number
- CN106852178A CN106852178A CN201580055954.5A CN201580055954A CN106852178A CN 106852178 A CN106852178 A CN 106852178A CN 201580055954 A CN201580055954 A CN 201580055954A CN 106852178 A CN106852178 A CN 106852178A
- Authority
- CN
- China
- Prior art keywords
- geometry
- snapshot
- animation
- change
- frame
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/003—Reconstruction from projections, e.g. tomography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/36—Level of detail
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/44—Morphing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/004—Annotating, labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2012—Colour editing, changing, or manipulating; Use of colour codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2024—Style variation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了一种用于通过几何形状变形来动画化可视化中的任意变化的动画架构。来自可视化的几何形状是从可视化的变化之前和之后获取的,用于生成一系列帧,以便为可视化的变化提供平滑变形动画。生成表示可视化的初始几何形状和最终几何形状之间的合并状态的过渡几何形状,以在初始帧和最终帧之间构建帧。变形动画可以由定时曲线控制,并且可以根据显示速率构建以确保平滑动画。
Description
背景技术
数据可视化是用于在例如图表、信息图、地图、量表等的可视化中图形化地表示数据的过程。当在可视化内渲染动画变化时,客户端利用异步动画平台来获得最佳性能,其中客户端设置层上的属性,然后在单独的线程上将属性动画化为其最终值。同步或“从属”动画通常需要在UI线程上运行紧密循环并且被避免,因为它们会在短时间段内挂起客户端或者可能具有较低的帧速率。然而,仍然需要同步动画,例如,当新数据被推送到时间序列动画上时,时间序列动画需要一系列来重建其底层几何。这样的改变不能通过在合成器中执行的简单仿射变换(即,保持关系)来近似,因此客户端必须编写从属动画循环来重绘每个帧。针对这些和其他考虑事项,做出了示例。
发明内容
提供该发明内容以便以简化的形式来引入下面的具体实施方式中进一步描述的概念的选择。该发明内容不旨在确定所要求保护的主题的所有特征,也不旨在用于限定所要求保护的主题的范围。
本公开的方面提供了一种动画架构,用于通过变形动画实现任何两个可视化状态之间的变化的动画。根据一个方面,可视化的之前、之后和中间的输出状态被捕获到故事板对象中。各方面允许输出状态的合并版本被自动计算并在故事板对象中缓存。在各个方面,故事板使得能够使用与用于绘制静态图表的逻辑相同的逻辑通过循环来渲染变化的动画。
示例可以被实现为计算机过程、计算系统,或作为诸如计算机程序产品或计算机可读介质的制品。计算机程序产品可以是计算机系统可读并且对用于执行计算机过程的指令的计算机程序编码的计算机存储介质。
一个或多个方面的细节在附图和下面的描述中阐述。通过阅读以下具体实施方式和对相关图的阅览,其他特征和优点将是显而易见的。应当理解,以下具体实施方式仅是解释性的,并不限制本公开的其他方面。
附图说明
并入并且构成本公开的一部分的附图示出了本公开的各个方面。在图中:
图1说明了用于创建变形动画的故事板体系结构;
图2说明了变形动画的示例;
图3说明了用于提供对可视化的改变的变形动画的动画引擎的框图;
图4说明了示出用于提供对可视化的改变的变形动画的方法中所涉及的一般阶段的流程图;
图5说明了示出计算设备的示例物理组件的框图;
图6A和6B说明了移动计算设备的框图;以及
图7说明了分布式计算系统的框图。
具体实施方式
下面的具体实施方式参考了附图。在任何可能的情况下,相同的附图标记在附图和下面的说明中尽可能地用来指代相同或相似的元件。虽然描述了本公开的方面,修改方案、改造方案和其它的实现方式是可能的。例如,可以对图中所示的元件进行替代、添加或修改,并且可以通过替换、重定序或添加阶段到公开的方法来修改本文所描述的方法。因此,下面的具体实施方式不是限制本公开,而是,通过随附权利要求来限定本公开的适当的范围。示例可以采取硬件实现方式或完全软件实现方式的形式,或组合软件和硬件方面的实现方式。因此,以下具体实施方式不被认为是限制性的。
本公开的示例旨在通过对可视化的改变的故事板在数据可视化平台体系结构内提供动画架构。根据一个方面,该体系结构能够通过单独阶段的单向链来构建数据可视化(例如,图表、信息图、地图、量表等),每个阶段具有简单的输入接口和输出接口。
可视化(例如,图表、图形、信息图、量表、地图等)以图形方式表示数据。根据方面,数据在可视化中通过特定于给定可视化类型的几何形状(例如,通过饼图中的楔形,柱状图中的列等)来表示,并且相同的数据可以在不同的可视化类型中由不同的几何形状来表示。其他可视化元素(例如,图例,标题,轴等)由它们自己的几何形状表示。根据方面,这些几何形状包括可以直接传递到适当的渲染应用程序编程接口(API)的有限集合的基元(例如,线、贝塞尔(Bezier)曲线等)。从这些基元,可以近似任何几何形状。当可视化更改类型时,例如,当用户将条形图更改为饼形图时,几何形状也会改变。
提供了通过变形动画将对可视化所做的改变(例如,属性改变,数据改变,显示可视化内的元素,隐藏可视化内的元素,改变可视化类型等)动画化。例如,为了帮助用户语义上理解转换,各方面提供了在先前状态下在可视化中显示对象,然后变形为新状态。可以通过变形动画来转换任何可视化改变(即任何可视化改变是能够转换的),这样可以帮助用户理解对可视化进行的改变。
图1示出了用于创建变形动画的故事板体系结构100。根据一方面,故事板125用作记录机构或记录器,其从可视化中捕获输出状态的几何形状132、134、136。在一些方面,故事板125的接口暴露给客户端110,通过数据可视化平台API 115提供可视化。
根据各方面,拍取几何形状132、134、136的快照用于故事板。在各个方面,这些快照包括一组可视化元素(例如,图例、可视化标题、绘图区域等),其中每个元素包括几何基元和属性(例如,文本、颜色、虚线图案等)。例如,初始几何形状132的初始快照几何形状包括当开始记录要动画化的改变时所初始输出的可视化元素。根据方面,快照用于在变形动画中创建关键帧。
例如,当创建故事板125时,初始几何形状132被捕获并且作为初始关键帧142被缓存在故事板125内。随着客户端110修改可视化,故事板125可操作以便可选地快照(例如,记录)一个或多个中间几何形状134(被缓存为一个或多个中间关键帧144)。一旦进行了所有改变,最后的几何形状136被捕获并且作为最终关键帧146被缓存在故事板125内。客户端110然后可操作以选择结束记录或添加额外的改变,其中最终关键帧146然后将被视为正在进行的动画中的中间关键帧144。
要创建变形动画,计算表示快照之间的过渡状态的几何形状。根据方面,数据可视化平台120可操作以通过将一个关键帧中的每个可视化元素的几何形状与顺序关键帧中的那些相关联来计算关键帧的合并版本。例如,当客户端110正在产生多阶段动画时,在初始关键帧142、一个或多个中间关键帧144和最终关键帧146之间计算转换。根据各方面,在每个捕获的关键帧142、144、146之间创建多个合并帧148以产生平滑的动画,因为当在给定时间内计算和显示更多的合并帧148时,每个关键帧之间的转换可以更小。根据另一方面,故事板125可操作以节流合并帧148的创建,使得不再计算比以目标每秒帧数(FPS)速率生成动画所需的更多的合并帧148(例如,用于显示对于30FPS设定的1秒动画生成不超过生成30个合并帧148)。
数据可视化平台120可操作以在连续关键帧142、144、146之间的可视化中逻辑地将对象、几何图形和几何基元相关联。根据一个方面,初始几何形状132和最终几何形状136按以下优先级顺序匹配,表示包含/嵌套顺序:图表元素(由图表元素指针);图表元素属性(通过属性标识);图表元素数据点几何图形(按数据点索引);图表元素非数据点几何图形(按顺序位置);和图表元素几何图形段(按顺序位置)。根据另一方面,初始几何形状132和最终几何形状136可以通过对齐各系列线和贝塞尔(Bezier)簇来进行匹配,以防止当动画化时的变形。例如,初始状态下的一系列五条线(或Bezier)可以与最终状态下的一系列更多或更少线(或Bezier)对齐。在其他方面,包括用户定义的匹配在内的其他匹配顺序是可能的。
合并的几何形状138用于在各个方面产生合并帧148。根据一个方面,合并的几何形状138是几何形状的集合,其具有每个基元(例如,线,Bezier等)的每个顶点位置的前后输出状态。根据各个方面,合并的几何形状138被记录为用于计算连续流中的合并帧148的一对基元(例如,{初始,最终})。根据一个方面,一旦计算了合并帧148,它们根据时间线被缓存在故事板125内,使得由合并帧148表示的过渡状态可以在故事板的时间线内、以最小或减少的计算随时提供。各方面允许根据要使用与静态图像渲染相同的逻辑渲染的时间线来顺序地提供缓存在故事板125中的合并帧148。
根据一些方面,在合并帧148被缓存之后,丢弃初始关键帧状态142。根据一些方面,保留最终关键帧146,使得如果故事板体系结构100尚未被关闭(例如,客户端110还没有结束记录),则可以将其作为下一变形动画的初始关键帧142使用。
根据各方面,在之前输出状态和之后输出状态中存在的几何基元将彼此合并,使得它们的端点相关联。如果一对中合并基元的类型不相似,则方面提供在动画过程中将进行适当转换。例如,当在初始线和最终的贝塞尔之间过渡时,该线将被转换为贝塞尔曲线并且合并,其中可能包括向转换所添加的任何贝塞尔控制点的线添加额外的{初始,最终}对。
在各种示例中,每个对象可以存在或可以不存在于可视化的之前输出状态或之后输出状态中(例如,作为对可视化进行的改变的一部分添加或移除对象)。根据方面,应用各种规则来处理被移除或添加的元素的合并几何形状138的关联。例如,添加的可视化元素将具有空的初始值,并且将通过在插值期间更改所有颜色属性(例如,线、填充、文本等)的alpha通道而动画化为淡入。在一个对比的例子中,被移除的元素将具有空的最终值,并且将通过在插值期间更改所有颜色属性(例如,线、填充、文本等)的alpha通道来将其动画化为淡出。作为另一个例子,添加的元素将或者从中心点“爆炸”,或者源自相邻元素,取决于基于可视化元素的类型的预配置策略。进一步的对比是,根据基于可视化元素类型的预先配置的策略,被移除的元素将或者“内向爆炸”到中心点,或者将“折叠”到相邻的元素中。作为又一示例,添加的基元将从相邻基元的端点发出,从而使其看起来从零长度“增长”到其最终长度。在进一步的对比中,移除的基元将“折叠”到相邻基的端点中,从而使其消失,因为它缩小到零长度。
一旦故事板125完成,其可操作以向客户端110发送,将变化动画化。根据各方面,客户端110写入在指定持续时间(例如,1秒,0.5秒等)中迭代帧的动画循环。根据方面,在动画循环的每次迭代期间,客户端110向故事板125指定故事板的时间线内的哪个点应该被渲染。根据各方面,客户端110能够使用与用于绘制静态图表的相同的代码/逻辑在时间线上的指定点渲染帧。
根据若干方面,可视化与故事板125相关联,这使得可视化将其渲染从可视化中所存储的几何形状(处于其最终状态)重定向到故事板的合并帧148中的合并几何形状138。将故事板125和可视化相关联的方面使得客户端110能够重用静态可视化的渲染逻辑,并且添加动画循环,动画循环指定故事板的时间线中要渲染可视化的位置。各种方面允许故事板125在动画循环完成之后被丢弃或再次用于重复回放。
根据方面,客户端110可操作以在使用故事板125时使用定制定时曲线。在各个方面中,定时曲线可以是线性的或非线性的,并且指定在动画持续时间中的给定点处的各种元素的位置或属性。定时曲线的方面使得客户端110能够指定沿着故事板的时间线提供给定元素或属性的位置以及提供元素的下一次迭代的速度。例如,从可视化的左边界移动到右边的元素的线性定时曲线将以恒定的速率移动元素,使得在持续时间的n%处,在距右边的行程的n%处提供元素(其中n是0与100之间的任意数字)。相比之下,非线性定时曲线(例如,贝塞尔)可操作来提供元素的渲染,就好像其加速并且以与初始关键帧142不同的速率移动到最终关键帧146。类似地,各方面允许定时曲线应用于元素的非位置属性(例如,文本,颜色,虚线图案等)。
故事板体系结构100可操作以对若干动画类型启用变形动画。例如,交互地放大数据的动画,交互式地平移过可视化,数据系列变化的时间动画,“股票行情”风格的动画,可视化的风格或格式的变化的动画等。
图2示出了变形动画的示例。在所示的示例中,故事板125记录图表210的两个变化:(1)将图表标题220从图表210的顶部边缘移动到右边缘,以及(2)从柱形图切换到饼形图可视化类型。可视化元素230a-c以图形方式表示数据,并且当可视化类型时被示出为变形。所示的帧包括关键帧0(初始关键帧142),关键帧1(最终关键帧146)以及沿着故事板的时间线在关键帧0+25%处选择的(第一合并帧148)以及沿着故事板的时间线在关键帧0+75%处选择的(第二个合并帧148)两个合并帧148。如将理解的,可以使用比这里所示的更多或更少的帧。
根据一个方面,图2所示的动画是根据定时曲线进行渲染,其中每个帧经由客户端110在定时曲线指定的时间段内以顺序的次序显示。定时曲线指定在故事板的时间线中选择合并几何形状138以用于显示的位置。例如,当使用线性定时曲线时,客户端110在变形动画的持续时间的25%处渲染关键帧0+25%(第一合并帧148),但是当使用非线性定时曲线时,可以在动画持续时间的不同点(例如,30%、50%、80%等)处渲染关键帧0+25%(第一合并帧148)。
各方面使定时曲线能够应用于合并帧148中的所有几何形状或应用于单个元素。在一个示例中,合并帧148被缓存在故事板125中并通过元素特定的定时曲线来渲染。特定于元素的定时曲线可操作以应用于共享对象(例如,图表标题220)、应用于表示数据系列的元素(例如,可视化元素230a)或应用于多个共享对象和可视化元素。继续该示例,当通过元素特定的定时曲线渲染变形动画时,在变形动画的中途点处根据比可视化元素230a-c更快的定时曲线来动画化图表标题220的情况下,合并几何形状138从第二合并帧148提供用于图表标题220,但是从第一合并帧148提供用于可视化元素230a-c。
根据各方面,一旦改变动画得出结论,无论是对于元素还是整个可视化,最终几何形状136保持显示在可视化中,直到应用另一个改变或者不再显示可视化(例如,用户关闭客户端110,等等)。
图3示出了用于提供对可视化的改变的变形动画的动画引擎300的框图。动画引擎300被示为包括快照模块310,其可操作以响应于对可视化的改变而捕获和缓存几何形状;补间器(tweener)模块320,其可操作以生成表示所捕获的几何形状之间的“几何形状”的合并的几何形状138;以及成帧模块330,其可操作以生成代表所捕获和生成的几何形状的帧;以及缓冲器模块340,其可操作以存储和排序帧以供稍后渲染。
根据各方面,快照模块310可操作以捕获和缓存用于在可视化中表示数据的几何形状。如将理解的那样,可以从客户端110或用于生成或发送用于客户端100的几何形状的数据可视化平台120的模块检索几何形状。还可以理解的是,可以产生几何形状以整体地表示可视化,或者可以被生成来表示可视化中的各个数据系列(例如,表示各个数据系列的可视化元素230,共享对象(例如,轴,标题,图例等)等)。
从可视化的初始状态、最终状态和任何中间状态捕获和缓存的几何形状(即,分别为初始几何形状132,最终几何形状136和中间几何形状134)被传递到成帧模块330以创建代表几何形状的帧(即,分别为初始关键帧142,最终关键帧146和中间关键帧144)。捕获的几何形状也被传递给补间器模块320。
根据各方面,补间器模块320可操作以生成代表所捕获的几何形状之间的几何形状的合并的几何形状138。根据各方面,补间器模块320使用逻辑将初始阶段中的对象与最终阶段中的对象相关联,以确定哪个初始几何形状132变形成哪个最终几何形状136,使得各个数据点变形成它们的最终输出状态中的相同数据点。根据一个方面,要合并的几何形状之间的关联是通过几何形状中的注释来进行的。通过检查绑定到每个几何形状的数据或数据系列,通过用户输入,等等。
根据各方面,补间器模块320可操作以为从可视化添加或移除(即,不显示在关键帧中)的对象创建合并的几何形状138。几个方面使补间器模块320能够为对象缺失的阶段使用任意几何形状,使得该对象例如通过任意点淡入/淡出、生长/收缩,通过与相邻元素共享的共同的几何形状来合并/拆分,等等。
根据各方面,定时曲线由客户端110指定以规定几何形状如何在所捕获的几何形状之间变化。例如,线性定时曲线指定可视化内的受影响元素在整个变形动画中以稳定的速度变化,使得在定时曲线的中点处的元素已具有在其初始几何形状132和其最终几何形状136中间的合并的几何形状138。在替代的示例中,贝塞尔定时曲线允许对象在不同的开始时间进行动画处理,并且以不同的速率在初始几何形状132和最终几何形状136之间改变。
根据各方面,当使用捕获的中间几何形状134来创建合并的几何形状138时,补间器模块320可操作以在每个关键帧的几何形状之间使用相同或分开的定时曲线。例如,为了将饼形图(初始几何形状132)变形成柱形图(最终几何形状136)动画化,爆炸的饼形图的中间阶段(即,表示数据系列的楔形不接触的饼形图)可以被指定为被捕获为中间几何形状134。因此,从初始阶段到中间阶段的“爆炸”可以根据线性曲线进行动画化,并且从中间阶段到最后阶段的图表类型过渡可以根据贝塞尔曲线进行动画化。本领域技术人员将认识到共享/分开的定时曲线的几种组合是可能的,并且所示示例仅是一种可能的实现方式。
根据一个方面,补间器模块320可操作以合成多个合并的几何形状138,其中该数量基于由客户端110指定的动画持续时间和FPS速率。根据其他方面,当提供用于“实况(live)”改变的动画时,补间器模块320可操作用于以尽可能接近指定的FPS速率的稳定速率合成合并的几何形状138。例如,相关联的合并的几何形状138和帧148必须至少每16.67ms合成以满足60FPS,但是如果合成相关联的合并的几何形状138和帧148的时间超过16.67ms,则补间器模块320可操作以将FPS速率设定成合并的几何形状138和帧148能够稳定合成的最高速率,其中在提供变形动画的过程中生产率基本上不改变。根据另一方面,不再合成比指定回放速率所需的多的合并的几何形状138(以及因此合并帧148)(例如,对于在60FPS下的1秒的动画,需要不超过60个不同的合并的几何形状138)。
根据一个方面,补间器模块320可操作以保持最终几何形状136用作随后动画中的初始几何形状132。
合并的几何形状被传递到成帧模块330以创建代表性的帧。然后,帧从成帧模块330传递到缓冲模块340,在缓冲模块340中帧被排序和存储以供稍后渲染作为变形动画的一部分。根据各方面,当“实况”变化被动画化时,不超过一个合并帧148被存储在缓冲器中,使得合并帧148在FPS速率的范围内当其被产生时传递给客户端110。这些帧可由客户端110使用与渲染静态图像相同的逻辑来渲染。根据一方面,由于客户端110已经渲染初始关键帧142(即,当改变开始时,它正在显示具有初始几何形状132的可视化),所以缓冲模块340可操作以丢弃初始关键帧142。
根据一个方面,缓冲器模块340提供具有多个子缓冲器的交换链缓冲器,使得独立于屏幕渲染来生成帧,从而提供平滑的动画。根据各方面,交换链缓冲器用作成帧模块330的节流机制,使得不创建比实现目标FPS速率所需的更多的帧。
图4是示出用于提供对可视化的改变的变形动画的方法400中涉及的一般步骤的流程图。方法400从开始框401开始,并进行到创建故事板125的操作410。
方法400进行到操作420,其中可视化元素输出的初始快照(包括初始几何形状132)被捕获并且在故事板125内被缓存为初始关键帧142。如上所述,在各方面,可视化元素输出包括几何形状和属性。
从操作420,方法400进行到操作430,其中客户端110对可视化进行改变。例如,如图2所示,可视化类型可以从柱形图改变为饼形图,或者表示为可视化元素230的数据的值可能已经改变。在各方面中,故事板125可选地记录一个或多个中间输出状态,并将输出状态缓存为一个或多个中间关键帧144。
一旦进行了改变,方法400进行到操作440,其中输出(包括最终几何形状136)的后快照被捕获并在故事板125内被缓存为最终关键帧146。
方法400进行到操作450,其中计算输出(包括合并的几何形状138)的合并版本,根据各方面,该合并版本组合并关联每个图表元素的初始输出状态和最终输出状态(或序列中的任何中间输出状态之间)。如上所述,在各方面中,每个图表元素被分解为基元,并且合并的几何形状138包括基元的一对值{初始,最终}。
在操作460中,初始关键帧142被丢弃,并且在操作470中,客户端110写入一个动画循环,其指定应当在故事板的时间线内的哪些点渲染可视化。如上所述,在各方面中,客户端110可以包括用于动画的定时曲线,其可以是平台特定的。在故事板的时间线内的指定点处,对应于合并的几何形状138创建合并帧148。根据各方面,指定的点数由客户端110指定的动画的FPS速率限制,使得创建合并帧148所需的时间不超过回放时间(例如,对于60FPS的回放速率,每16.67毫秒,帧定时回放)。根据另一方面,不再创建比指定回放速率所需的更多的帧(例如,对于在60FPS下的1秒动画,需要不超过60帧)。
方法400进行到操作480,其中通过重播故事板125来渲染可视化改变的动画。方法400在结束(END)499结束。
虽然已经在结合运行于计算机上的操作系统上的应用程序而执行的程序模块的总的上下文中描述了本公开,本领域技术人员将理解,本公开还可以与其它程序模块相结合地实现。一般地,程序模块包括例程、程序、组件、数据结构以及执行特定任务或者实现特定抽象数据类型的其它类型的结构。
本文所描述的方面和功能可以经由多个计算系统来操作,计算系统包括但不限于台式计算机系统、有线和无线计算系统、移动计算系统(例如,移动电话、上网本、平板设备或板式计算机、笔记本计算机和膝上型计算机)、手持式设备、多处理器系统、基于微处理器或可编程消费电子设备、微型计算机以及大型计算机。
另外,本文所描述的方面和功能可以运行于分布式系统(例如,云计算系统)上,其中应用功能、存储器、数据存储和检索以及各种处理功能可以在分布式计算网络如因特网或内联网上彼此远程地操作。各种类型的用户界面和信息可以经由板上计算设备显示器或者经由与一个或多个计算设备相关联的远程显示单元来显示。例如,各种类型的用户界面和信息可在各类型的用户界面和信息所投影到的壁面上显示和交互。与可实现本公开的方面的多种计算系统的交互包括击键输入、触摸屏输入、语音或其它音频输入、姿势输入,在姿势输入中关联的计算设备配备有检测(例如,照相机)功能,用于捕获和解释用于控制计算设备的功能等的用户姿势。
图5-7以及相关的说明提供了可实现本公开的示例的各种操作环境的论述。然而,参考图5-7所图示和论述的设备和系统是为了示例和说明的目的,而不是对可用于实现本文所述的本公开的方面的大量的计算设备配置的限制。
图5是示出可实现本公开的示例的计算设备500的物理组件(即,硬件)的框图。下述的计算设备组件可适合于上述的客户端设备。在基本的配置中,计算设备500可以包括至少一个处理单元502以及系统存储器504。根据计算设备的配置和类型,系统存储器504可包括但不限于易失性存储(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪速存储器或这些存储器的任意组合。系统存储器504可包括适合运行软件应用550的操作系统505以及一个或多个编程模块506,例如客户端110。根据一个方面,系统存储器504可以包括数据可视化平台120。例如操作系统505可适于控制计算设备500的操作。此外,本公开的方面可与图形库、其它操作系统或任何其它应用程序相结合来实现,而不限于任何特定的应用或系统。该基本配置通过虚线508内的那些组件图示在图5中。计算设备500可以具有附加的特征或功能。例如,计算设备500还可以包括附加的数据存储设备(可移除和非可移除),诸如例如磁盘、光盘或磁带。该附加的存储由可移除存储设备509和非可移除存储设备510显示在图5中。
如上所述,多个程序模块和数据文件可存储在系统存储器504中。在处理单元502上执行的同时,程序模块506(例如,客户端110、数据可视化平台120)可以执行的处理包括但不限于图4中所示的方法400的一个或多个阶段。可根据本公开的示例使用的其它程序模块可包括应用,诸如电子邮件以及通讯录应用、文本处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用程序等等。
此外,本公开的示例可以实现于包括离散的电子元件的电路、包含逻辑门的封装或集成电子芯片、使用微处理器的电路或者包含电子元件或微处理器的单个芯片中。例如,本公开的示例可通过片上系统(SOC)来实现,在SOC中,图5所示的每个或多个组件可集成到单个集成电路中。该SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元以及各种应用功能,全部这些都集成(或“烧制”)到芯片基板上作为单个集成电路。当经由SOC来操作时,本文所描述的功能可以经由与单个集成电路(芯片)上的计算设备500的其它组件集成的专用逻辑来操作。本公开的示例还可以利用能够执行诸如例如与(AND)、或(OR)或非(NOT)的逻辑运算的其它技术来实现,包括但不限于机械技术、光学技术、流体技术以及量子技术。另外,本公开的方面可以实现在通用计算机内或者任何其它电路或系统内。
计算设备500还可以具有一个或多个输入设备512,诸如键盘、鼠标、笔、声音输入设备、触摸输入设备等。还可以包括诸如显示器、扬声器、打印机等输出设备514。前述设备是示例,可使用其它设备。计算设备500可以包括允许与其它计算设备518通信的一个或多个通信连接516。适合的通信连接516的示例包括但不限于RF发射机、接收机和/或收发机电路、通用串行总线(USB)、并行端口和/或串行端口。
本文所使用的术语计算机可读介质可包括计算机存储介质。计算机存储介质可以包括易失性和非易失性的、可移除和非可移除的介质,它们以用于诸如计算机可读指令、数据结构或程序模块的信息的存储的任何方法或技术来实现。系统存储器504、可移除存储设备509和非可移除存储设备510都是计算机存储介质的示例(即,存储器存储)。计算机存储介质可包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪速存储器或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光学存储、磁盒、磁带、磁盘存储或其它磁存储设备、或任何其它能够用于存储信息且能够由计算设备500访问的制品。任何这样的计算机存储介质可以是计算设备500的部分。计算机存储介质不包括载波或其它传播数据信号。
通信介质可通过计算机可读指令、数据结构、程序模块、或调制数据信号中的其他数据如载波或其他传输机制来具体实施,并且包括任何信息输送介质。术语“调制数据信号”可以描述其一个或多个特性以将信息编码到信号中的方式进行设定或改变的信号。通过示例而不是限制的方式,通信介质可以包括诸如有线网或直接连线连接的有线介质以及诸如声波、射频(RF)、红外和其他无线介质的无线介质。
图6A和6B示出了可以实现本公开的方面的移动计算设备600,例如,移动电话、智能电话、平板个人计算机和膝上型计算机等。参考图6A,示出了用于实现各方面的移动计算设备600的一个示例。在基本配置中,移动计算设备600是具有输入元件和输出元件的手持式计算机。移动计算设备600典型地包括显示器605以及允许用户输入信息到移动计算设备600的一个或多个输入按钮610。移动计算设备600的显示器605还可以充当输入设备(例如,触摸屏显示器)。如果包含,可选的侧部输入元件615允许另外的用户输入。侧部输入元件615可以是旋转开关、按钮或任何其它类型的手动输入元件。在可替代的示例中,移动计算设备600可以包含更多或更少的输入元件。例如,在一些示例中显示器605可以不是触摸屏。在可替代的示例中,移动计算设备600是便携式电话系统,诸如蜂窝电话。移动计算设备600还可以包括任选的键板635。任选的键板635可以是物理键板或产生于触摸屏显示器上的“软”键板。在各个方面中,输出元件包括用于示出图形用户界面(GUI)的显示器605、可视指示器620(例如,发光二极管)和/或音频换能器625(例如,扬声器)。在一些示例中,移动计算设备600包含了用于为用户提供触反馈的振动换能器。在又一实施例中,移动计算设备600包含外围设备端口640,诸如音频输入(例如,麦克风插口)、音频输出(例如,耳机插口)以及视频输出(例如,HDMI端口),用于发送信号到外部设备或者从外部设备接收信号。
图6B是示出了移动计算设备的一个示例的体系结构的框图。也即,移动计算设备600可以包含实现一些示例的系统(即,体系结构)602。在一个示例中,系统602实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日历、通讯录管理器、消息传递客户端、游戏和媒体客户端/播放器)的“智能手机”。在一些示例中,系统602集成为计算设备,诸如集成的个人数字助理(PDA)以及无线电话。
一个或多个应用程序550(例如,客户端110)可以加载到存储器662中以及运行于操作系统664上或者与操作系统664关联。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、因特网浏览器程序、消息传递程序等。根据一个方面,数据可视化平台120可以加载到存储器662中。系统602还包括位于存储器662内的非易失性存储区668。非易失性存储区668可用于存储在系统602掉电的情况下不应丢失的永久性信息。应用程序550可使用信息且存储信息于非易失性存储区668中,诸如电子邮件应用使用的电子邮件或其它消息,等等。同步应用(未示出)也位于系统602上并且被编程以与位于主机上的对应的同步应用交互以保持存储在非易失性存储区668中的信息与存储在主机中的对应信息同步。应当意识到,其它应用可以加载到存储器662中且运行于移动计算设备600上。
系统602具有电源670,电源670实现为一个或多个电池。电源670可能进一步包括外部电源,诸如AC适配器或为电池补电或再充电的电力对接拖座。
系统602还可以包括执行发送和接收射频通信的功能的无线电672。无线电672促进系统602与“外界”之间经由通信载波或服务提供商的无线连接。向无线电672发送以及从无线电672接收是在操作系统664的控制下进行的。换言之,由无线电672接收到的通信可以经由操作系统664散播到应用程序550,反之亦然。
可视指示器620可以用于提供可视通知或音频接口674可用于经由音频换能器625产生可听的通知。在图示的示例中,可视指示器620是发光二极管(LED),音频换能器625是扬声器。这些设备可以直接与电源670耦合,从而当被激活时,它们在通知机制所规定的持续期间内保持接通,即使处理器660和其他组件可能为了节约电池电力而关闭。LED可以被编程以保持无限接通直至用户采取措施来指示设备的加电状态。音频接口674用来提供可听信号到用户以及从用户接收可听信号。例如,除了与音频换能器625耦合之外,音频接口674还可以与麦克风耦合以接收可听输入,例如促进电话对话。系统602可进一步包括使得板上照相机630的操作能够记录静像、视频流等的视频接口676。
实现系统602的移动计算设备600可以具有额外的特征或功能。例如,移动计算设备600还可以包括额外的数据存储设备(可移除的和非可移除的),诸如磁盘、光盘或磁带。该额外的存储由非易失性存储区668图示在图6B中。
通过移动计算设备600生成或捕获以及经由系统602存储的数据/信息可以本地地存储在移动计算设备600上,如上所述,或者数据可以存储在可由设备经由无线电672或者经由移动计算设备600与关联于移动计算设备600的单独的计算设备(例如,诸如因特网的分布式计算网络中的服务器计算机)之间的有线连接访问的任意数量的存储介质上。应当意识到,这些数据/信息可以通过移动计算设备600经由无线电672或者经由分布式计算网络来访问。类似地,根据公知的数据/信息传输和存储手段,包括电子邮件和协作数据/信息共享系统,这些数据/信息可轻易地在计算设备之间传输以便存储和使用。
图7示出用于如上所述提供数据可视化的系统的体系结构的一个示例。与客户端110或数据可视化平台120关联地开发的内容、交互的内容或编辑的内容可以存储在不同的通信信道或其它存储类型中。例如,可利用目录服务722、web入口724、邮箱服务726、即时消息传递库728或社交网站730来存储各个文档。客户端110或数据可视化平台120可使用这些类型的系统等中的任一种用于提供如本文所述的数据可视化。服务器715可以为客户端705A-C提供客户端110或数据可视化平台120。作为一个示例,服务器715可以是通过web提供客户端110或数据可视化平台120的web服务器。服务器715可以通过网络710在web上将客户端110或数据可视化平台120提供给客户端705。通过示例的方式,客户端计算设备可以实现且体现在个人计算机705A、平板计算设备705B和/或移动计算设备705C(例如,智能手机)或其它计算设备中。客户端计算设备的这些示例中的任一个均可以从库716获得内容。
上文参考根据本公开的方面的方法、系统和计算机程序产品的框图和/或操作图示描述了本本公开的方面。在框中提到的功能/行为可以不按如任意流程图中所示的顺序发生。例如,连续示出的两个框实际上可以基本同时执行或者框有时可以按相反的顺序执行,取决于所涉及到的功能/行为。
在本申请中提供的一个或多个示例的说明和图示不意在以任何方式限制或限缩如本公开的范围。在该申请中提供的方面、示例和细节被视为足以传达所有权以及使得其他技术人员能够实现和使用本公开的最佳方式。本公开不应解释为限于在本申请提供的任何方面、示例或细节。无论是组合地或者单独地显示和描述,各个特征(结构上的和方法上的)都意在被选择性地包含或省去以产生具有特定特征集合的示例。已经提供了本申请的描述和图示说明,本领域技术人员可以设想落入在本申请实施的总的发明构思的较宽方面的主旨内的、没有背离本公开的较宽范围的变型例、修改例和可替代的示例。
Claims (15)
1.一种用于创建对可视化的改变的变形动画的方法,包括:
拍取包含所述改变前的可视化的几何形状的初始快照;
拍取包含所述改变后的可视化的所述几何形状的最终快照;
缓存所述初始快照和所述最终快照;
解释缓存的快照以创建合并的几何形状,其中,所述合并的几何形状表示所述缓存的快照之间的过渡状态;
合成能够作为静态图像渲染以包括变形动画的多个帧,其中,所述帧是基于所述合并的几何形状来生成的;以及
将所述多个帧发送到客户端以在所述可视化中渲染,从而提供对所述可视化的所述改变的所述变形动画。
2.根据权利要求1所述的方法,还包括:
拍取包含在所述改变期间的所述可视化的几何形状的中间快照;以及
缓存所述中间快照。
3.根据权利要求1所述的方法,其中,所述多个帧中的最终帧对应于所述最终快照,并且所述多个帧不包括与所述初始快照相对应的帧。
4.根据权利要求1所述的方法,其中,生成所述多个帧还包括:
接收动画循环,所述动画循环包括用于回放所述变形动画的持续时间和每秒帧数(FPS)速率,其中,所合成的所述多个帧中的帧数不超过基于所述持续时间和所述FPS速率的数量。
5.根据权利要求4所述的方法,其中,所述动画循环还包括定时曲线,其中,所述定时曲线指定所述合并的几何形状图示在所述变形动画中从所述初始几何形状到所述最终几何形状的变化的速率。
6.根据权利要求1所述的方法,其中,所述快照和所述多个帧被缓存在故事板对象中,其中,所述故事板对象能够操作以根据时间线提供所述多个帧的重复回放。
7.根据权利要求1所述的方法,其中,包括所述初始快照的所述几何形状的元素与包括所述最终快照的所述几何形状的元素相关联。
8.根据权利要求7所述的方法,其中,包括所述初始快照的所述几何形状的元素不存在于所述最终快照中,还包括:
将所述元素与所述最终快照中的任意几何形状相关联;以及
其中,为所述任意几何形状和所述元素创建所述合并的几何形状包括以下中的至少一个:
随着所述变形动画进行,使所述元素淡出;
将所述元素收缩到所述任意几何形状,其中,所述任意几何形状是一个点;以及
将所述元素合并到所述任意几何形状中,其中,所述任意几何形状是在所述初始快照中与所述元素共享公共几何形状的相邻元素。
9.根据权利要求7所述的方法,其中,包括所述最终快照的几何形状的元素不存在于所述初始快照中,还包括:
将所述元素与所述初始快照中的任意几何形状相关联;以及
其中,为所述任意几何形状和所述元素创建所述合并的几何形状包括以下中的至少一个:
随着所述变形动画进行,使所述元素淡入;
从所述任意几何形状生长所述元素,其中,所述任意几何形状是一个点;以及
从所述任意几何形状分割所述元素,其中,所述任意几何形状是在所述初始快照中与所述元素共享公共几何形状的相邻元素。
10.一种用于创建对可视化的改变的变形动画的系统,包括:
处理器;和
包括指令的存储器存储设备,所述指令在由所述处理器执行时能够操作以提供:
动画引擎,其能够操作以提供对数据的可视化的改变的变形动画,所述动画引擎包括:
抓取器模块,其能够操作以通过拍取包括所述改变前的可视化的几何形状的初始快照以及拍取包括所述改变后的可视化的几何形状的最终快照来响应对所述可视化的改变;
补间器模块,其能够操作以从所述抓取器模块接收所述初始快照和所述最终快照,以及解释所述快照以创建合并的几何形状,其中,所述合并的几何形状表示所述初始快照和所述最终快照之间的过渡状态;
成帧模块,其能够操作以从所述补间器模块接收所述合并的几何形状,以生成能够由客户端渲染为静态图像以包括所述变形动画的多个帧,其中所述帧是基于所述合并的几何形状来生成的;以及
缓冲器模块,其能够操作以从所述成帧模块接收所述多个帧以存储所述多个帧,并将所述多个帧发送到所述客户端以在所述可视化中渲染,从而提供所述改变的所述变形动画。
11.根据权利要求10所述的系统,其中,所述抓取器模块还能够操作以拍取包括在所述改变期间的可视化的几何形状的中间快照。
12.根据权利要求10所述的系统,其中,所述缓冲器模块包括多个子缓冲器,其中,所述子缓冲器使得所述成帧模块能够独立于所述可视化的渲染来生成所述多个帧。
13.根据权利要求10所述的系统,其中,所述补间器模块还能够操作以接收定时曲线,其中,所述补间器模块应用所述定时曲线以设定在所述过渡状态中从所述初始几何形状到所述最终几何形状的变化速率。
14.根据权利要求10所述的系统,其中,所述缓冲器模块还能够操作以将所述多个帧以顺序的次序存储为故事板对象,其中,所述故事板对象能够操作以提供所述改变的变形动画的重复回放。
15.一种用于创建变形动画的计算设备,包括:
处理器;和
包括指令的存储器存储设备,所述指令在由所述处理器执行时能够操作以:
接收定时曲线,所述定时曲线包括所述变形动画的持续时间;
接收客户端将渲染所述变形动画的每秒帧数(FPS)速率;
拍取包括所述改变前的可视化的几何形状的初始快照;
拍取包括所述改变后的可视化的几何形状的最终快照;
将所述初始快照和所述最终快照缓存为故事板对象内的关键帧;
解释缓存的快照以创建合并的几何形状,其中,所述合并的几何形状表示所述缓存的快照之间的过渡状态,其中,所述过渡状态是根据所述定时曲线确定的;
生成能够作为静态图像渲染以包括所述变形动画的多个帧,其中,所述帧是基于所述合并的几何形状生成的,并且其中,所述多个帧的数量不超过基于所述持续时间和所述FPS速率的数量;
根据时间线将所述多个帧缓存在所述故事板对象内;以及
将所述故事板对象发送到所述客户端以在所述可视化中渲染,其中,所述故事板对象能够操作以提供所述改变的变形动画的重复回放。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462063741P | 2014-10-14 | 2014-10-14 | |
US62/063,741 | 2014-10-14 | ||
US14/683,100 US20160104311A1 (en) | 2014-10-14 | 2015-04-09 | Animation framework |
US14/683,100 | 2015-04-09 | ||
PCT/US2015/055416 WO2016061158A1 (en) | 2014-10-14 | 2015-10-14 | Animation framework |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106852178A true CN106852178A (zh) | 2017-06-13 |
Family
ID=55655563
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580055999.2A Pending CN107077752A (zh) | 2014-10-14 | 2015-10-14 | 数据可视化可扩展架构 |
CN201580055854.2A Pending CN106796734A (zh) | 2014-10-14 | 2015-10-14 | 针对数据可视化的性能优化 |
CN201580055954.5A Pending CN106852178A (zh) | 2014-10-14 | 2015-10-14 | 动画架构 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580055999.2A Pending CN107077752A (zh) | 2014-10-14 | 2015-10-14 | 数据可视化可扩展架构 |
CN201580055854.2A Pending CN106796734A (zh) | 2014-10-14 | 2015-10-14 | 针对数据可视化的性能优化 |
Country Status (5)
Country | Link |
---|---|
US (6) | US20160104308A1 (zh) |
EP (4) | EP3207528A1 (zh) |
KR (1) | KR20170067853A (zh) |
CN (3) | CN107077752A (zh) |
WO (4) | WO2016060879A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083932A (zh) * | 2018-08-21 | 2020-04-28 | 谷歌有限责任公司 | 动态生成的界面过渡 |
CN112419458A (zh) * | 2020-11-20 | 2021-02-26 | 青岛以萨数据技术有限公司 | 基于安卓动画的用户交互方法、服务器、介质及系统 |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11017569B2 (en) | 2014-09-08 | 2021-05-25 | Tableau Software, Inc. | Methods and devices for displaying data mark information |
US10380770B2 (en) | 2014-09-08 | 2019-08-13 | Tableau Software, Inc. | Interactive data visualization user interface with multiple interaction profiles |
US10347018B2 (en) | 2014-09-08 | 2019-07-09 | Tableau Software, Inc. | Interactive data visualization user interface with hierarchical filtering based on gesture location on a chart |
US10635262B2 (en) | 2014-09-08 | 2020-04-28 | Tableau Software, Inc. | Interactive data visualization user interface with gesture-based data field selection |
US10347027B2 (en) | 2014-09-08 | 2019-07-09 | Tableau Software, Inc. | Animated transition between data visualization versions at different levels of detail |
US20160104308A1 (en) | 2014-10-14 | 2016-04-14 | Microsoft Technology Licensing, Llc. | Performance optimization for data visualization |
US10353793B2 (en) | 2014-11-05 | 2019-07-16 | Oracle International Corporation | Identifying improvements to memory usage of software programs |
US20160162165A1 (en) * | 2014-12-03 | 2016-06-09 | Harish Kumar Lingappa | Visualization adaptation for filtered data |
WO2016141373A1 (en) | 2015-03-05 | 2016-09-09 | Magic Leap, Inc. | Systems and methods for augmented reality |
US10838207B2 (en) | 2015-03-05 | 2020-11-17 | Magic Leap, Inc. | Systems and methods for augmented reality |
FR3033919B1 (fr) * | 2015-03-20 | 2018-09-07 | Niel Vassort Thomas | Procede de generation d'une sequence video cyclique |
US9786081B1 (en) * | 2015-05-14 | 2017-10-10 | Domo, Inc. | Transitioning between visual representations |
US11068647B2 (en) * | 2015-05-28 | 2021-07-20 | International Business Machines Corporation | Measuring transitions between visualizations |
US10896532B2 (en) | 2015-09-08 | 2021-01-19 | Tableau Software, Inc. | Interactive data visualization user interface with multiple interaction profiles |
US9905034B2 (en) * | 2015-09-14 | 2018-02-27 | Salesforce.Com, Inc. | Secure isolation of scripting from native graphic rendering of animated data visualizations |
US10115213B2 (en) * | 2015-09-15 | 2018-10-30 | Salesforce, Inc. | Recursive cell-based hierarchy for data visualizations |
US10089368B2 (en) | 2015-09-18 | 2018-10-02 | Salesforce, Inc. | Systems and methods for making visual data representations actionable |
US10607139B2 (en) | 2015-09-23 | 2020-03-31 | International Business Machines Corporation | Candidate visualization techniques for use with genetic algorithms |
US10217254B2 (en) * | 2015-09-24 | 2019-02-26 | Oracle International Corporation | Graphical editing of memory layout rules for software programs |
US10127136B2 (en) | 2015-09-24 | 2018-11-13 | Oracle International Corporation | Identifying and visualizing suboptimal memory layouts in software programs |
US10489130B2 (en) | 2015-09-24 | 2019-11-26 | Oracle International Corporation | Configurable memory layouts for software programs |
US10909711B2 (en) | 2015-12-04 | 2021-02-02 | Magic Leap, Inc. | Relocalization systems and methods |
US20170323028A1 (en) * | 2016-05-04 | 2017-11-09 | Uncharted Software Inc. | System and method for large scale information processing using data visualization for multi-scale communities |
US10685035B2 (en) | 2016-06-30 | 2020-06-16 | International Business Machines Corporation | Determining a collection of data visualizations |
US10459938B1 (en) | 2016-07-31 | 2019-10-29 | Splunk Inc. | Punchcard chart visualization for machine data search and analysis system |
US10853380B1 (en) | 2016-07-31 | 2020-12-01 | Splunk Inc. | Framework for displaying interactive visualizations of event data |
US11037342B1 (en) * | 2016-07-31 | 2021-06-15 | Splunk Inc. | Visualization modules for use within a framework for displaying interactive visualizations of event data |
US10861202B1 (en) | 2016-07-31 | 2020-12-08 | Splunk Inc. | Sankey graph visualization for machine data search and analysis system |
US10459939B1 (en) | 2016-07-31 | 2019-10-29 | Splunk Inc. | Parallel coordinates chart visualization for machine data search and analysis system |
US10649211B2 (en) | 2016-08-02 | 2020-05-12 | Magic Leap, Inc. | Fixed-distance virtual and augmented reality systems and methods |
US10290130B2 (en) * | 2016-08-31 | 2019-05-14 | International Business Machines Corporation | Visualization of connected data |
US11430195B2 (en) * | 2016-08-31 | 2022-08-30 | Sony Corporation | Information processing apparatus, information processing method, and program for improving user-friendliness of an animated tutorial depicting assembling parts for creating a robot |
US10936559B1 (en) * | 2016-09-28 | 2021-03-02 | Amazon Technologies, Inc. | Strongly-consistent secondary index for a distributed data set |
PT109807A (pt) * | 2016-12-23 | 2018-06-25 | Inst Superior Tecnico | Método para interação remota em tempo-real entre um telespetador e um programa de televisão em direto, e sistema que o implementa |
US10304225B2 (en) | 2016-12-30 | 2019-05-28 | Microsoft Technology Licensing, Llc | Chart-type agnostic scene graph for defining a chart |
US11086498B2 (en) | 2016-12-30 | 2021-08-10 | Microsoft Technology Licensing, Llc. | Server-side chart layout for interactive web application charts |
US10395412B2 (en) | 2016-12-30 | 2019-08-27 | Microsoft Technology Licensing, Llc | Morphing chart animations in a browser |
US10812936B2 (en) | 2017-01-23 | 2020-10-20 | Magic Leap, Inc. | Localization determination for mixed reality systems |
US10580167B1 (en) * | 2017-01-24 | 2020-03-03 | Amazon Technologies, Inc. | Excluding masked regions of virtual reality (VR) frames from encoder processing |
US10593122B1 (en) | 2017-01-24 | 2020-03-17 | Amazon Technologies, Inc. | Mirroring edge pixels |
US10769752B2 (en) | 2017-03-17 | 2020-09-08 | Magic Leap, Inc. | Mixed reality system with virtual content warping and method of generating virtual content using same |
IL303275B1 (en) | 2017-03-17 | 2024-04-01 | Magic Leap Inc | A mixed reality system with the assembly of multi-source virtual content and a method for creating virtual content using it |
IL298822A (en) | 2017-03-17 | 2023-02-01 | Magic Leap Inc | A mixed reality system with color virtual content distortion and a method for creating virtual content using it |
US10572970B2 (en) * | 2017-04-28 | 2020-02-25 | Google Llc | Extracting 2D floor plan from 3D GRID representation of interior space |
US11940990B1 (en) | 2017-06-16 | 2024-03-26 | Amazon Technologies, Inc. | Global clock values for consistent queries to replicated data |
US10572108B2 (en) * | 2017-07-20 | 2020-02-25 | Vmware, Inc. | Hierarchical inventory tree operation |
US10534587B1 (en) * | 2017-12-21 | 2020-01-14 | Intuit Inc. | Cross-platform, cross-application styling and theming infrastructure |
CN112136101A (zh) | 2018-06-03 | 2020-12-25 | 苹果公司 | 为用户界面和动画提供应用程序编程接口的框架 |
US10552445B1 (en) * | 2018-07-17 | 2020-02-04 | Merck Sharp & Dohme Corp. | Progressive data distribution visualization |
WO2020023383A1 (en) | 2018-07-23 | 2020-01-30 | Magic Leap, Inc. | Mixed reality system with virtual content warping and method of generating virtual content using same |
CN109388306B (zh) * | 2018-09-29 | 2022-04-29 | 创新先进技术有限公司 | 信息显示方法及装置 |
CN110162763A (zh) * | 2019-07-18 | 2019-08-23 | 成都希盟泰克科技发展有限公司 | 海量质量验评表单数据进行智能配置的优化方法及其系统 |
US10896480B1 (en) | 2019-09-23 | 2021-01-19 | International Business Machines Corporation | Visualization rendering using an extensible rendering sequence |
US11316951B2 (en) * | 2019-09-30 | 2022-04-26 | Citrix Systems, Inc. | Polytree queue for synchronizing data with a shared resource |
US11348293B2 (en) * | 2020-02-13 | 2022-05-31 | Eric Schneider | Dynamic price range symbol update and display system, method, and device |
US11341703B2 (en) | 2020-07-24 | 2022-05-24 | Unity Technologies Sf | Methods and systems for generating an animation control rig |
US11562522B2 (en) | 2020-07-24 | 2023-01-24 | Unity Technologies Sf | Method and system for identifying incompatibility between versions of compiled software code |
US11698776B2 (en) | 2020-07-24 | 2023-07-11 | Unity Technologies Sf | Method and system for processing computer code |
US11410368B2 (en) | 2020-07-24 | 2022-08-09 | Unity Technologies Sf | Animation control rig generation |
US11645803B2 (en) * | 2020-08-07 | 2023-05-09 | International Business Machines Corporation | Animation effect reproduction |
US11880385B1 (en) | 2020-09-29 | 2024-01-23 | Amazon Technologies, Inc. | Ordering updates to secondary indexes using conditional operations |
US11250022B1 (en) | 2020-09-29 | 2022-02-15 | Amazon Technologies, Inc. | Offline index builds for database tables |
US20220218438A1 (en) * | 2021-01-14 | 2022-07-14 | Orthosnap Corp. | Creating three-dimensional (3d) animation |
CN113052942B (zh) * | 2021-03-31 | 2023-06-30 | 抖音视界有限公司 | 图表生成方法、装置、存储介质及电子设备 |
CN113633970B (zh) * | 2021-08-18 | 2024-03-08 | 腾讯科技(成都)有限公司 | 动作效果的显示方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080192056A1 (en) * | 2007-02-12 | 2008-08-14 | Microsoft Corporation | Animated transitions for data visualization |
CN102473319A (zh) * | 2010-06-16 | 2012-05-23 | 松下电器产业株式会社 | 动画控制装置、动画控制方法及动画控制程序 |
CN102999932A (zh) * | 2011-11-14 | 2013-03-27 | 微软公司 | 图表动画 |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US543469A (en) * | 1895-07-30 | deuet | ||
GB2270243B (en) | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
US6359629B1 (en) | 1998-07-06 | 2002-03-19 | Silicon Graphics, Inc. | Backface primitives culling |
US6480205B1 (en) * | 1998-07-22 | 2002-11-12 | Nvidia Corporation | Method and apparatus for occlusion culling in graphics systems |
US6636215B1 (en) * | 1998-07-22 | 2003-10-21 | Nvidia Corporation | Hardware-assisted z-pyramid creation for host-based occlusion culling |
US7023440B1 (en) * | 1998-09-14 | 2006-04-04 | Fisher Rosemount Systems, Inc. | Methods and apparatus for integrated display of process events and trend data |
US6213944B1 (en) * | 1999-03-05 | 2001-04-10 | Atl Ultrasound, Inc. | Ultrasonic diagnostic imaging system with a digital video recorder with visual controls |
US7500188B1 (en) * | 2000-04-26 | 2009-03-03 | Novarra, Inc. | System and method for adapting information content for an electronic device |
US6853375B2 (en) | 2000-05-10 | 2005-02-08 | Cognos Incorporated | Method for preemptive screen rendering |
US6859217B2 (en) | 2000-07-19 | 2005-02-22 | Microsoft Corporation | System and method to display and manage data within hierarchies and polyarchies of information |
US7765255B2 (en) | 2002-07-30 | 2010-07-27 | Sap Ag | Extended web infrastructure for business applications |
US7171412B2 (en) | 2002-10-07 | 2007-01-30 | Sun Microsystems, Inc. | Restricted access model for hierarchical data structures |
US7949953B2 (en) | 2003-06-13 | 2011-05-24 | Sap Aktiengesellschaft | Designing and generating charts to graphically represent data in a data source |
JP4121125B2 (ja) | 2003-09-10 | 2008-07-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | グラフィックス・イメージ生成装置及びその方法、データ解析装置及びその方法並びにプログラム |
US7511718B2 (en) | 2003-10-23 | 2009-03-31 | Microsoft Corporation | Media integration layer |
US8090776B2 (en) | 2004-11-01 | 2012-01-03 | Microsoft Corporation | Dynamic content change notification |
US7911467B2 (en) | 2005-12-30 | 2011-03-22 | Hooked Wireless, Inc. | Method and system for displaying animation with an embedded system graphics API |
US8487937B2 (en) * | 2006-01-04 | 2013-07-16 | Microsoft Corporation | Representing animation as a static image on a graphical user interface |
US9019300B2 (en) | 2006-08-04 | 2015-04-28 | Apple Inc. | Framework for graphics animation and compositing operations |
US8990258B2 (en) * | 2006-12-29 | 2015-03-24 | Izenda, Inc. | Self-service database reporting systems and methods |
CN101111049B (zh) | 2007-08-14 | 2010-07-28 | 华为技术有限公司 | 实现一个小区覆盖多区域的系统、方法和网络设备 |
US8184096B2 (en) | 2007-12-04 | 2012-05-22 | Apple Inc. | Cursor transitions |
US20090184977A1 (en) | 2008-01-18 | 2009-07-23 | Qualcomm Incorporated | Multi-format support for surface creation in a graphics processing system |
US8346897B2 (en) | 2008-02-25 | 2013-01-01 | Jon Jaroker | System and method for deploying and maintaining software applications |
US20090327921A1 (en) | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Animation to visualize changes and interrelationships |
US8176096B2 (en) * | 2008-12-18 | 2012-05-08 | Microsoft Corporation | Data visualization interactivity architecture |
US8638343B2 (en) * | 2009-04-30 | 2014-01-28 | Microsoft Corporation | Data visualization platform performance optimization |
US9250926B2 (en) | 2009-04-30 | 2016-02-02 | Microsoft Technology Licensing, Llc | Platform extensibility framework |
US8725775B2 (en) | 2009-06-03 | 2014-05-13 | Business Objects Software Limited | Identifying and abstracting a visualization point from an arbitrary two-dimensional dataset into a unified metadata for further consumption |
WO2011010688A1 (ja) | 2009-07-22 | 2011-01-27 | 日本電気株式会社 | コンテンツ配信システム、コンテンツ配信方法、コンテンツ配信プログラム |
US8527458B2 (en) | 2009-08-03 | 2013-09-03 | Oracle International Corporation | Logging framework for a data stream processing server |
US8694906B2 (en) | 2010-04-15 | 2014-04-08 | Adobe Systems Incorporated | Dynamic visualization of physical and geographical multitenant cloud computing |
US20110285727A1 (en) * | 2010-05-24 | 2011-11-24 | Microsoft Corporation | Animation transition engine |
US8244743B2 (en) | 2010-06-08 | 2012-08-14 | Google Inc. | Scalable rendering of large spatial databases |
EP2589023B1 (en) * | 2010-06-30 | 2021-05-19 | Barry Lynn Jenkins | System and method of from-region visibility determination and delta-pvs based content streaming using conservative linearized umbral event surfaces |
US9292587B2 (en) | 2010-07-21 | 2016-03-22 | Citrix System, Inc. | Systems and methods for database notification interface to efficiently identify events and changed data |
US9069557B2 (en) | 2010-12-17 | 2015-06-30 | Microsoft Technology Licensing, LLP | Business intelligence document |
US20120218254A1 (en) * | 2011-02-28 | 2012-08-30 | Microsoft Corporation | Data visualization design and view systems and methods |
US20120313957A1 (en) | 2011-06-09 | 2012-12-13 | Microsoft Corporation | Staged Animated Transitions for Aggregation Charts |
US20130179791A1 (en) | 2011-12-16 | 2013-07-11 | Webotics Inc. | System and method for real-time data in a graphical user interface |
US9286162B2 (en) | 2012-02-02 | 2016-03-15 | Netapp, Inc. | System and method for guaranteeing consistent data synchronization from a volatile data source |
US9530272B2 (en) | 2012-02-22 | 2016-12-27 | Zotobi Management Ltd. | System and method for displaying multiple activities |
US20130271472A1 (en) | 2012-04-12 | 2013-10-17 | Motorola Mobility, Inc. | Display of Value Changes in Between Keyframes in an Animation Using a Timeline |
US20140046923A1 (en) | 2012-08-10 | 2014-02-13 | Microsoft Corporation | Generating queries based upon data points in a spreadsheet application |
US8631034B1 (en) | 2012-08-13 | 2014-01-14 | Aria Solutions Inc. | High performance real-time relational database system and methods for using same |
US9075618B2 (en) | 2012-11-02 | 2015-07-07 | Microsoft Technology Licensing, Llc | Cross-platform data visualizations using common descriptions |
KR20140066392A (ko) | 2012-11-23 | 2014-06-02 | 삼성전자주식회사 | 캐시 메모리 및 캐시 메모리를 포함하는 어플리케이션 프로세서의 데이터 관리 방법 |
US9910574B2 (en) * | 2012-12-21 | 2018-03-06 | What-Ifolution Technology Bv | Method and system for visualizing and manipulating graphic charts |
US11256524B2 (en) | 2013-02-19 | 2022-02-22 | Quick Eye Technologies Inc. | Data structures for visualization of hierarchical data |
US10691309B2 (en) | 2013-03-27 | 2020-06-23 | Broadsign Serv, Llc | Media element transition electronic device, method and application |
CN103678578B (zh) * | 2013-12-10 | 2017-07-18 | 广东威创视讯科技股份有限公司 | 一种数据可视化处理方法、服务器及数据可视化处理系统 |
US9767145B2 (en) * | 2014-10-10 | 2017-09-19 | Salesforce.Com, Inc. | Visual data analysis with animated informational morphing replay |
US20160104308A1 (en) | 2014-10-14 | 2016-04-14 | Microsoft Technology Licensing, Llc. | Performance optimization for data visualization |
-
2015
- 2015-04-09 US US14/683,091 patent/US20160104308A1/en not_active Abandoned
- 2015-04-09 US US14/683,085 patent/US10810159B2/en active Active
- 2015-04-09 US US14/683,110 patent/US10216750B2/en active Active
- 2015-04-09 US US14/683,100 patent/US20160104311A1/en not_active Abandoned
- 2015-04-09 US US14/683,056 patent/US10430382B2/en active Active
- 2015-04-09 US US14/683,079 patent/US20160104307A1/en not_active Abandoned
- 2015-10-06 WO PCT/US2015/054110 patent/WO2016060879A1/en active Application Filing
- 2015-10-14 WO PCT/US2015/055417 patent/WO2016061159A1/en active Application Filing
- 2015-10-14 EP EP15788505.4A patent/EP3207528A1/en not_active Withdrawn
- 2015-10-14 CN CN201580055999.2A patent/CN107077752A/zh active Pending
- 2015-10-14 CN CN201580055854.2A patent/CN106796734A/zh active Pending
- 2015-10-14 EP EP15785012.4A patent/EP3207527B1/en active Active
- 2015-10-14 WO PCT/US2015/055416 patent/WO2016061158A1/en active Application Filing
- 2015-10-14 WO PCT/US2015/055415 patent/WO2016061157A1/en active Application Filing
- 2015-10-14 EP EP15788506.2A patent/EP3207529A1/en not_active Withdrawn
- 2015-10-14 CN CN201580055954.5A patent/CN106852178A/zh active Pending
- 2015-10-14 EP EP19209509.9A patent/EP3633630A1/en active Pending
- 2015-10-14 KR KR1020177012630A patent/KR20170067853A/ko not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080192056A1 (en) * | 2007-02-12 | 2008-08-14 | Microsoft Corporation | Animated transitions for data visualization |
US20100214299A1 (en) * | 2007-02-12 | 2010-08-26 | Microsoft Corporation | Graphical manipulation of chart elements for interacting with chart data |
CN102473319A (zh) * | 2010-06-16 | 2012-05-23 | 松下电器产业株式会社 | 动画控制装置、动画控制方法及动画控制程序 |
CN102999932A (zh) * | 2011-11-14 | 2013-03-27 | 微软公司 | 图表动画 |
Non-Patent Citations (4)
Title |
---|
KUN YU 等: "Interactive Storyboard: Animated Story Creation on Touch Interfaces", 《5TH INTERNATIONAL CONFERENCE, AMT 2009》 * |
张洪定 等: "《WPF和Silverlight教程》", 31 July 2012, 南开大学出版社 * |
王云: "《Flash8 动画制作案例教程》", 30 March 2008, 西安电子科技大学出版社 * |
胡崧: "《Flash CS3标准教程》", 31 January 2008, 中国青年出版社 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083932A (zh) * | 2018-08-21 | 2020-04-28 | 谷歌有限责任公司 | 动态生成的界面过渡 |
CN112419458A (zh) * | 2020-11-20 | 2021-02-26 | 青岛以萨数据技术有限公司 | 基于安卓动画的用户交互方法、服务器、介质及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2016060879A1 (en) | 2016-04-21 |
EP3633630A1 (en) | 2020-04-08 |
EP3207529A1 (en) | 2017-08-23 |
US20160103828A1 (en) | 2016-04-14 |
US20160104306A1 (en) | 2016-04-14 |
WO2016061158A1 (en) | 2016-04-21 |
US20160104307A1 (en) | 2016-04-14 |
EP3207528A1 (en) | 2017-08-23 |
US20160104318A1 (en) | 2016-04-14 |
WO2016061157A1 (en) | 2016-04-21 |
WO2016061159A1 (en) | 2016-04-21 |
EP3207527A1 (en) | 2017-08-23 |
US20160104311A1 (en) | 2016-04-14 |
CN106796734A (zh) | 2017-05-31 |
US10216750B2 (en) | 2019-02-26 |
KR20170067853A (ko) | 2017-06-16 |
EP3207527B1 (en) | 2019-11-20 |
US20160104308A1 (en) | 2016-04-14 |
US10810159B2 (en) | 2020-10-20 |
US10430382B2 (en) | 2019-10-01 |
CN107077752A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106852178A (zh) | 动画架构 | |
US11610353B2 (en) | Seamless representation of video and geometry | |
KR102239587B1 (ko) | 프리젠테이션 슬라이드를 구조화하기 위한 자동화된 시스템 | |
US10223076B1 (en) | Generating code based on user interactions with a user interface element in a code editor | |
CN102938158A (zh) | 通过直接操纵来构建动画时间线 | |
US9159168B2 (en) | Methods and systems for generating a dynamic multimodal and multidimensional presentation | |
CN105830056B (zh) | 与表格应用函数记号交互 | |
US8610713B1 (en) | Reconstituting 3D scenes for retakes | |
CN107004289B (zh) | 信息处理装置、动态图像再现方法以及记录介质 | |
US10304225B2 (en) | Chart-type agnostic scene graph for defining a chart | |
US8941666B1 (en) | Character animation recorder | |
US8363055B1 (en) | Multiple time scales in computer graphics | |
US10783319B2 (en) | Methods and systems of creation and review of media annotations | |
CN112685103B (zh) | 配置文件制作、播放特效的方法、装置、设备及存储介质 | |
US10395412B2 (en) | Morphing chart animations in a browser | |
WO2018049682A1 (zh) | 一种虚拟3d场景制作方法及相关设备 | |
CN107450905A (zh) | 会话界面渲染方法及客户端 | |
CN109544701B (zh) | 一种三维模型显示和编辑的方法 | |
US11068145B2 (en) | Techniques for creative review of 3D content in a production environment | |
CN103325404A (zh) | 管理故事板 | |
US10445398B2 (en) | Asset management during production of media | |
WO2022252916A1 (zh) | 特效配置文件的生成方法、装置、设备及介质 | |
Quevedo-Fernández et al. | idanimate–supporting conceptual design with animation-sketching | |
CN116993870A (zh) | 一种项目管理方法、装置、设备及计算机可读存储介质 | |
CN112423109A (zh) | 互动视频的生成方法、系统、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |