基于物理引擎提供用户界面的方法及相关电子设备的制作方法

文档序号:6521231阅读:182来源:国知局
基于物理引擎提供用户界面的方法及相关电子设备的制作方法
【专利摘要】提供了一种用于操作电子设备的方法。该方法包括:在屏幕中的至少一个区域中设置虚拟物理场,将要在该至少一个区域中显示的UI对象映射到物理场中的至少一个虚拟物理对象,将物理属性指派给该至少一个虚拟物理对象,通过使用物理引擎基于物理场和UI对象的物理属性来确定该至少一个物理对象的状态,其中,状态包括位置、形式、形状和颜色中的至少一个,以及根据该至少一个虚拟物理对象的状态来显示UI对象。
【专利说明】基于物理引擎提供用户界面的方法及相关电子设备
【技术领域】
[0001]本公开涉及电子设备的用户界面(UI)及相关电子设备。
【背景技术】
[0002]随着移动设备物理性能的持续发展,曾难以实现的真实UI现今在实践中正在实现。由于硬件性能改善,Π部门现在正在进入Π具有竞争力的时代,这是因为它们可以与要求用户自然直觉的应用一起使用。该时代超越了竞争集中于Π设计来支持各种功能和高速能力的时代。现有的移动UI框架提供了开发人员可以在Π设计者的指导下开发应用的环境,并且现有的UI可以提供各种屏幕元素中每一个屏幕元素的屏幕转变效果和视觉效果。
[0003]典型的移动Π框架具有以下结构。移动Π框架所需的元素包括图形渲染(rendering)模块和窗口管理模块。图形渲染模块用于绘制基本图形元素,例如图像、文本、线条等。图形渲染模块可以通过仅使用软件来在帧缓冲上执行渲染,或者可以通过使用硬件加速图形功能来执行渲染。广泛用来支持移动设备中高分辨率显示的应用程序接口(API)的一个示例是针对嵌入式系统的开放图形库(OpenGLlES) 1.x或2.(LOpenGL|ES支持二维(2D)和三维(3D)图形加速,并且为单独的像素提供基于光栅(raster)图形的控制功能。对于硬件加速而言,一些硬件系统仅可以支持α混合(blending)和覆盖(overlay)。窗口管理模块执行处理以下各项的功能:动画、窗口管理、屏幕布局、用户输入处理等。窗口管理模块耦合到图形渲染模块,以在显示元件中呈现UI元素。具体地,随着对真实动画的要求日益增加,不是通过直接改变动画的坐标来实现动画,而是窗口管理模块提供用于按层来划分每一对象并且当层属性改变时通过自动合成来呈现动画的功能。
[0004]通常,移动Π框架在控制屏幕中以窗口小部件(widget)的形式提供常用的功能,例如,标签、列表、编辑区域、图标、按钮、日期和时间、滑动块等等。通过设置基本属性在屏幕中显示和控制大多数控制,以提供必需的功能。屏幕布局功能如安卓平台中提供的屏幕布局功能等提供了用于在适当的位置处布置前述控制的功能。可以向屏幕布局指派布局属性,例如,线性布局、相对布局、表格布局等。此外,资源回退和虚拟坐标系可以用于通过使用一个实现代码来支持多种分辨率。
[0005]上文所描述的现有Π框架通过使用非线性多项式函数或三角函数来计算Π对象的位置,其中,非线性多项式函数或三角函数使用时间参数来表示平滑和自然的运动。在实施例中,UI框架通过应用表达式来计算所有Π对象的位置,其中,表达式确保用户可以以最舒服的方式识别的运动。然而,该方法必须为每一个Π对象提供起始点和目的地点,并且需要大量试错来进行计算和实现。此外,因为还通过使用前述方法来实现基于Π对象运动的效果,因此由于时间和成本问题而难以提供各种改进。在实施例中,当通过触摸和拖动来移动布置的Π对象时,用于填充空白空间的动画保持不变。此外,考虑到所有以下各项:移动用户手指的方向、移动用户手指的速度以及不同项目取决于要改变的对象的运动所进行的运动,难以应用改变。此外,当在例外情况(例如,Π对象在指定的路径上移动时与另一对象碰撞)下执行额外的处理时,必须考虑很多额外的场景、动画等以便实现。也即是说,UI配置不仅需要大量时间和精力,而且需要考虑人为确定的场景,这导致了问题,由此产生不自然的动画。
[0006]因此,需要一种在电子设备中采用物理引擎以得到更自然的Π的装置和相关的方法。

【发明内容】

[0007]本公开的一些方面旨在至少解决上面提到的问题和/或缺点,并且至少提供下面描述的优点。因此,本公开的一个方面在于提供一种用于在电子设备中提供自然用户界面(UI)的装置和方法。
[0008]本公开的另一方面在于提供一种用于在电子设备中提供更加用户友好的UI对象的运动的装置和方法。
[0009]本公开的另一方面在于提供一种用于通过在电子设备中使用物理引擎来呈现Π的改变的装置和方法。
[0010]根据本公开的第一方面,提供了一种操作电子设备的方法。该方法包括:在屏幕中的至少一个区域中设置虚拟物理场,将要在所述至少一个区域中显示的U1对象映射到物理场中的至少一个虚拟物理对象;将物理属性指派给所述至少一个虚拟物理对象,通过使用物理引擎基于物理场和UI对象的物理属性来确定所述至少一个物理对象的状态,其中,状态包括位置、形式、形状和颜色中的至少一个,以及根据所述至少一个虚拟物理对象的状态来显示Π对象。
[0011]根据本公开的第二方面,提供了一种电子设备。该电子设备包括:至少一个处理器,被配置为在屏幕中的至少一个区域中设置虚拟物理场,将要在所述至少一个区域中显示的UI对象映射到物理场中的至少一个虚拟物理对象,将物理属性指派给所述至少一个虚拟物理对象,通过使用物理引擎基于物理场和UI对象的物理属性来确定所述至少一个物理对象的状态;以及显示单元,用于根据所述至少一个虚拟物理对象的状态来显示UI对象,其中,状态包括位置、形式、形状和颜色中的至少一个。
[0012]根据本公开的第三方面,提供了一种电子设备。该电子设备包括:至少一个处理器;显示单元,被配置为在所述至少一个处理器的控制下显示视觉输出;以及至少一个模块,存储在存储器中并且被配置为由所述至少一个处理器执行。所述模块可以包括用于执行以下操作的至少一个指令:在屏幕中的至少一个区域中设置虚拟物理场,将要在所述至少一个区域中显示的UI对象映射到物理场中的至少一个虚拟物理对象,将物理属性指派给所述至少一个虚拟物理对象,通过使用物理引擎基于物理场和UI对象的物理属性来确定所述至少一个物理对象的状态,以及根据所述至少一个虚拟物理对象的状态来显示UI对象。
[0013]通过下面结合附图公开了本公开多个实施例的详细描述,本领域技术人员将清楚本公开的其它方面、优点和突出特征。
【专利附图】

【附图说明】
[0014]通过下面结合附图给出的描述,本公开一些实施例的上述和其它方面、特征和优点将更加清楚,在附图中:
[0015]图1示出了根据本公开实施例的电子设备;
[0016]图2示出了根据本公开实施例的浮力场;
[0017]图3示出了根据本公开实施例的位于虚拟物理空间中的物理对象;
[0018]图4示出了根据本公开实施例的操作电子设备的处理;
[0019]图5是根据本公开实施例的电子设备的框图;
[0020]图6是根据本公开实施例的电子设备的框图;
[0021]图7是根据本公开实施例的电子设备的框图;
[0022]图8是根据本公开实施例的电子设备的框图;
[0023]图9A、图9B和图9C示出了根据本公开实施例的电子设备中菜单屏幕的图标移动;
[0024]图10示出了根据本公开实施例的电子设备中用于菜单屏幕的图标移动的密度分布;
[0025]图1IA和图1lB示出了根据本公开实施例的电子设备中菜单屏幕的指示符移动;
[0026]图12A和图12B示出了根据本公开实施例的电子设备中配置指示符的物理对象的示例;
[0027]图13示出了根据本公开实施例的电子设备中基于重力场的菜单屏幕;
[0028]图14示出了根据本公开实施例的电子设备中基于重力场配置菜单屏幕中的图标的物理对象;
[0029]图15示出了根据本公开实施例的电子设备中物理对象的碰撞;
[0030]图16示出了根据本公开实施例的电子设备中浮于流体上的物理对象的移动;
[0031]图17示出了根据本公开实施例的电子设备中的安全键盘;
[0032]图18A和图18B示出了根据本公开的实施例在电子设备中实现安全键盘;
[0033]图19A和图19B示出了根据本公开实施例的电子设备中的接入点(AP)搜索屏幕;
[0034]图20示出了根据本公开实施例的电子设备中将信号强度转换为AP图标的位置的处理;
[0035]图21示出了根据本公开实施例的电子设备中AP的物理对象的密度与作用于该物理对象的力的关系;
[0036]图22示出了根据本公开实施例的电子设备中用于避免AP的物理对象的简谐振荡的建模;
[0037]图23A、图23B和图23C示出了根据本公开实施例的电子设备中的锁定屏幕;
[0038]图24A和图24B示出了根据本公开实施例的电子设备中构成锁定屏幕的帷幕与刚体之间的碰撞;
[0039]图25示出了根据本公开实施例的电子设备中构成锁定屏幕的帷幕的运动;
[0040]图26A和图26B示出了根据本公开实施例的电子设备中锁定屏幕的释放;
[0041]图27示出了根据本公开实施例的电子设备中基于物理属性映射的UI对象分组;以及
[0042]图28不出了根据本公开实施例的电子设备中的通知UI。
[0043]贯穿附图,应注意,使用类似的附图标记来指示相同或类似的元素、特征和结构。【具体实施方式】
[0044]以下参考附图的描述用于帮助全面理解由权利要求及其等同物限定的本公开的各个实施例。这种描述包括各种具体细节以帮助理解,但是这些细节应看作仅仅是示例性的。因此,本领域普通技术人员应认识到,在不脱离本公开的范围和精神的前提下,可以对本文描述的各个实施例做出各种改变和修改。此外,为了清楚和简要起见,可能省略了对公知功能和构造的描述。
[0045]以下描述和权利要求中使用的术语和词语不限于字面含义,而是仅仅是由发明人用来实现对本公开的清楚和一致的理解。因此,本领域技术人员应该清楚,以下对本公开各个实施例的描述仅用于说明的目的,而不是为了限制由所附权利要求及其等同物限定的本公开。
[0046]应理解,除非上下文明确指出,否则单数形式的“一”、“一种”和“该”包括复数对象。因此,例如对“(一)组件表面”的引述包括对一个或多个这种表面的引述。
[0047]在下文中,本公开描述了用于基于电子设备中的物理引擎来提供自然的用户界面(UI)的技术。在本公开中,电子设备可以是便携式电子设备,并且可以是以下各项中的一项:智能电话、便携式终端、移动电话、移动平板、媒体播放器、平板计算机、手持计算机以及个人数字助理(PDA)等。此外,电子设备可以是将前述设备中的两种或更多种功能相组合的设备。
[0048]本公开涉及在以下各项中提供的图形用户界面(GUI):智能电话、便携式媒体播放器(PMP)、数码相机、个人计算机(PC)、笔记本、平板PC、电视(TV)、控制台、游戏机、便携式游戏机等。本公开通过应用如同Π对象在物理世界中移动一样的效果来提供用户友好的自然Π。
[0049]基于物理引擎的Π框架表示与真实类似的运动,并且因此存在可以以在视觉上用户友好的方式修改UI的优点。此外,与传统技术不同,基于物理引擎的UI框架具有自动生成图形效果的优点,这是因为GUI元素在Π操作中自动执行坐标移动、尺寸改变、旋转、形状改变、碰撞效果等。
[0050]因此,与传统的技术不同,通过使用在提供运动的同时不需要起始点、目的地点或复杂的例外处理的Π框架,本公开可以去除由于例外情形引起的不自然运动,并且基于用户的意图或输入显示自然的响应。
[0051]图1示出了根据本公开实施例的电子设备。
[0052]参照图1,对于本公开的实施例,电子设备包括用户输入元件110、UI属性确定元件120、物理属性计算元件130、Π呈现元件140和显示元件150。此外,电子设备还可以包括感测元件160和通信元件170。
[0053]用户输入元件110是接收用户输入的信息输入设备。在实施例中,用户输入元件110包括以下各项中的至少一项:触摸屏、鼠标、键盘、触控笔、操纵杆、虚拟键盘、键区以及滚轮。用户输入元件110接收关于以下各项的信号:坐标、运动、手势、聚焦、悬浮、拖动、点击、双击、轻击、双连击、轻击和保持等,并且将所接收的信号传送到物理属性计算元件130、UI属性确定元件120和UI呈现元件140。
[0054]UI属性确定元件120将一个或多个属性指派给映射到属于Π的相应UI对象的物理对象中的每一个,并且确定属性值。在实施例中,Π对象意指每一个CTI元素,例如,窗口、菜单、图标、窗口小部件、图像、按钮、按键、文本、列表、项、进度条、布局等。此外,属性意指位置、尺寸、密度、体积、颜色、弹性、粘度、张力、速度、向量等。具体地,可以选择主要根据GUI元素的位置、显示器上的相对距离等来确定属性值。可以根据通过用户输入元件110的用户输入来改变属性和属性值。
[0055]物理属性计算元件130基于每一个⑶I元素的属性来计算和提供UI对象的材料特性效果。材料特性效果包括移动、损坏(mortification)、碰撞、聚集、破碎、振颤等。物理属性计算元件130包括物理引擎或物理计算引擎。物理引擎或物理计算引擎意指用于针对空间中的对象使用数值(例如,质量、速度、摩擦、流体阻力等)来模拟牛顿力学模型的程序、用于存储该程序的设备、或者用于执行该程序的设备。在实施例中,物理引擎或物理计算引擎在逻辑上构造牛顿力学空间,并且计算在牛顿力学空间中发生的物理现象。也即是说,物理引擎可以用于模拟刚体动力学、软体动力学、弹性动力学、碰撞检测、粒子、波、织物、布娃娃(ragdoll)形状等。物理引擎通常用在计算机图形、视频游戏或电影中,并且主要用作视频游戏中的中间件,并且因此用在实时模拟处理中。在本公开中,物理引擎用于电子设备的UI对象控制。
[0056]UI呈现元件140响应于用户输入或者根据由物理属性计算元件130计算出的⑶I元素的材料特性效果,图形呈现⑶I元素。换言之,UI呈现元件140生成图形信息。
[0057]显示元件150呈现图形信息,使得用户可以识别应用户输入元件110的请求或者由UI呈现元件140处理的图形信息。在实施例中,显示元件150可以包括图像输出设备,例如液晶显示器(IXD)、有源矩阵有机发光二极管(AMOLED)、发光二极管(LED)、柔性显示器、透明显示器、数字纸、阴极射线管(CRT)、监视器以及电视(TV)等。
[0058]感测元件160测量施加于电子设备的物理特性。在实施例中,感测元件160可以包括陀螺仪传感器、地磁传感器、加速度计/角速度传感器、摄像头、接近传感器、环境光传感器等。由感测元件160测量的值可以用于改变Π属性。可以根据具体的实施例省略感测元件160。
[0059]通信元件170可以用于在利用用户输入元件110或感测元件160与通过网络连接的另一设备相互作用时共享在⑶I元素的属性值中呈现的图形信息。此外,通信元件170可以基于无线保真(WiFi)、蓝牙等来检测外围设备的信号。可以根据具体实施例省略通信元件170。
[0060]本公开的基本构思可以概述如下。
[0061]本公开使用具有以下各项中的至少一项的物理虚拟环境:重力、浮力、电力以及磁力。此外,本公开可以另外使用粘度、弹性等。在物理虚拟环境中,Π对象基于更加用户友好的物理现象来表示运动。Π对象还根据物理环境来设计。此外,本公开将每一个Π对象映射到至少一个虚拟物理对象,并且将物理属性指派给虚拟物理对象。根据可能存在于实际三维空间中的体积、质量或形状来向虚拟物理对象指派属性。虚拟物理对象可以对虚拟物理空间的物理场进行响应,并且可以根据属性值来移动和改变。在本文中,改变意指形式、形状和颜色中的至少一个被改变。根据映射到UI对象的虚拟物理对象的移动/改变,UI对象也移动/改变。也即是说,基于力、响应于动量的速度或者加速度来确定所有UI对象的移动。[0062]根据本公开实施例的Π对象的控制包括:用户输入、基于用户输入的物理动作、基于物理动作对映射到UI对象的物理对象的坐标移动或改变、以及UI对象的呈现。将用户输入转换为与输入类型相对应的物理环境的外力,并且然后将其传送到物理引擎。此后,物理引擎根据特定的时间间隔(也即是说,同步间隔)来对外力执行物理模拟,并且基于模拟结果来输出物理对象的状态。在本文中,状态包括位置、形式、形状、颜色等。也即是说,Π对象的移动和改变根据由物理虚拟环境施加的力(例如,重力、浮力等)和外部传送的力(例如,基于用户输入或者由设备的传感器引起的输入而确定的值)来导出,并且最终表达为由物理引擎获得的计算结果。优选地,同步间隔与显示器的刷新率同步,以将同步间隔调整为不会在显示操作与模拟操作之间存在差别。
[0063]在下文中,描述使用重力和浮力的UI框架作为本公开的实施例。
[0064]重力定义为万有引力和由于地球旋转引起的离心力的合力。也即是说,重力是将位于地球表面附近的对象向着地心吸引的力,并且是施加于地球上的对象的最基本的物理力。地球上的所有对象都被施加以朝向地心的与质量成正比的力。浮力定义为浸入流体(例如,水或空气)中的对象由于与流体的密度差而在与重力相反的方向上施加的力。浸入流体中的对象稳定在重力和浮力处于平衡状态的点处。
[0065]当在确定了重力和浮力的虚拟物理空间中将体积和重量指派给UI对象时,重力和浮力作用于Π对象。通过使用重力和浮力的平衡,可以将Π对象自然地布置或移动到虚拟空间的特定位置。
[0066]如上所述,重力和浮力均作用于浸入流体中的对象。在该情况下,可以通过调整流体和对象的密度来控制力的平衡点(也即是说,作用于对象的力变为零的点)。作用于对象的力可以通过下面的表达式(1)来表达。
[0067]Fsum=Fb-Fg=VXgX ( P f- P 0)......表达式(1)
[0068]在上面的表达式(1)中,Fsum表示施加于对象的力,Fb表示施加于对象的浮力,Fc表示施加于对象的重力,V表示对象的体积,g表示重力加速度,P £表示流体的密度,并且P。表示对象的密度。
[0069]通常,在电子设备中以网格的形式在正交坐标系上布置相应的图标。图标在屏幕上的运动由每一个Π对象在虚拟物理空间中的布置和移动构成。当将密度指派为每一个Π对象的属性时,可以通过使用重力和浮力来控制Π对象。在实施例中,假设屏幕由一个父窗口构成,该父窗口作为用作容器的父Π对象,并且图标由η个子窗口构成,这些子窗口作为子UI对象。在该情况下,将密度属性指派给父UI对象和子UI对象中的每一个。父UI对象确定密度值根据位置而改变的浮力场,并且向子Π对象指派单一密度值。如果在固定父Π对象的浮力的状态下子Π对象的密度值改变,则子Π对象根据由指派给父Π对象的浮力和重力引起的物理力自然地移动。此外,如果在子Π对象的移动路径上存在另一子UI对象,则根据物理引擎的碰撞检测来呈现更自然的屏幕效果。下面将参照图2来描述根据上述实施例的浮力场的示例。
[0070]图2示出了根据本公开的实施例的浮力场。
[0071]参照图2,父UI对象210具有独立于X轴和Y轴中每一个的浮力场,并且其密度根据X轴和Y轴中每一个上的坐标值而改变。换言之,作用于虚拟物理空间的浮力场通过划分X轴分量和Y轴分量来指派每一个密度属性,并且将密度值定义为一阶函数关系。更具体地,在父Π对象210的X轴和Y轴上,密度在与浮力方向相反的方向上增加。子Π对象220存在于父Π对象210的内部,并且子Π对象220具有固定的X轴密度和固定的Y轴密度。因此,子Π对象220位于父Π对象210上的特定固定点处,S卩,密度平衡点230处。根据前述原则,通过改变子UI对象220的X轴分量密度值和Y轴分量密度值,子UI对象220可以移动到父UI对象210上的特定位置。此外,通过使用物理引擎将子UI对象220基于密度改变的移动模拟为由浮力引起的自然运动。子Π对象220根据改变的密度值移动,同时与其它Π对象碰撞,并且因此改变其位置。
[0072]图3示出了根据本公开实施例的位于虚拟物理空间中的物理对象。
[0073]参照图3,在物理引擎上针对施加于子Π对象的力导出以下表达式。在图3中仅考虑Y轴分量的力。在图3中假设子UI对象320是横截面积为Ay并且高度为h的矩形长方体,并且指派给与父UI对象相对应的虚拟物理空间310的密度是y的函数,即,f py(y)。在本文中,假设原点在物理引擎的左下端,并且密度值是一阶函数。假设子UI对象320被放置为使得下端Y1是并且上端是y2,并且子UI对象320的密度等于父UI对象310的密度的点是I。在该情况下,满足下面的表达式(2)。
[0074]P cy=fpy(ye)......表达式⑵
[0075]在上面的表达式(2)中,Pey表示子Π对象320的Y轴密度,fpy()表示指示指派给父UI对象310的密度的函数,并且ye表示子UI对象320的密度等于父UI对象310的密度的点的Y轴坐标。
[0076]在该情况下,由物理引擎计算施加于子Π对象320的最终力,如下面的表达式(3)中所示。
[0077]F=Fb-Fg......表达式⑶
[0078]在上面的表达式(3)中,F表不施加于子UI对象320的最终力,Fb表不施加于子UI对象320的浮力,Fg表示施加于子Π对象320的重力。
[0079]下面的表达式(4)详细表达了施加于子UI对象320的每一个力。
[0080]Fliy = Ay xgx(y)dy O1 <χ, <少2)
[0081 ] FBy =AyXgX1:2Jfy(y)dy (ye >y2)
[0082]FBy=0 (ye<yi)
[0083]Fcy=Ay X (Y2-Y1) X P cy
[0084]Fy=FBy-FGy......表达式(4)
[0085]在上面的表达式(4)中,FBy表示施加于子UI对象320的Y轴浮力,Ay表示子UI对象320的横截面积,g表示重力加速度,fpy()表示指示指派给父Π对象310的密度的函数,Y1表示子UI对象320的下端区域的Y轴坐标,y2表示子UI对象320的上端区域的Y轴坐标,ye表示子Π对象320的密度等于父Π对象310的密度的点的Y轴坐标,Fey表示施加于子UI对象320的Y轴重力,P cy表示子UI对象320的Y轴密度,并且Fy表示施加于子UI对象320的整个Y轴力。
[0086]虽然上面的表达式(4)仅示出了 Y轴力,但是也可以通过将相同的表达式应用于X轴来计算施加于子UI对象320的力。然而,为了对X轴和Y轴进行独立的UI对象控制,父UI对象310的物理特性独立于X轴和Y轴来确定。[0087]基于如上所述计算出的施加于子Π对象的力,可以计算子Π对象的运动。可以由物理引擎来执行运动计算。Π呈现元件根据确定的周期从物理引擎接收利用特定的时间间隔计算出的与运动有关的信息,并且渲染子Π对象。换言之,可以通过使用物理引擎来获得基于子Π对象的时间流的移动坐标值,并且在这些坐标值的位置处绘制Π对象。在虚拟物理空间中确定的对象通过映射到电子设备的屏幕上的UI对象,而示出给用户。
[0088]为了实现本公开,可以采用任何现有的物理引擎。在实施例中,诸如boX2d、子弹物理引擎(bullet physics)、chipmunk物理引擎、Havok物理引擎、牛顿动力学、WOW引擎、JigLibFlash等公知的物理引擎可以用作本公开的物理属性计算元件。
[0089]在下文中,将参照附图来详细描述如上所述的用于控制Π对象的电子设备的操作和结构。
[0090]图4示出了根据本公开实施例的操作电子设备的处理。
[0091]参照图4,在操作401,电子设备在屏幕中的至少一个区域中设置虚拟物理场。其中设置有物理场的至少一个区域的范围和数量可以根据要执行的应用而改变。物理场是被指派有物理特性的虚拟空间,并且对应于父Π对象。在实施例中,物理特性可以包括以下各项中的至少一项:浮力、重力、弹力、磁性、电力和磁力。此外,可以独立于虚拟物理空间中的每一个轴来设置物理场。在实施例中,当UI对象在由X轴和Y轴构成的二维坐标系中移动时,独立于X轴和Y轴中的每一个来设置物理场。此外,物理场具有根据一个轴上的位置而改变的属性值。在实施例中,如图2所示,X轴和Y轴的密度值以一阶函数的形式改变。
[0092]在操作403,电子设备将至少一个物理属性指派给在所述至少一个区域中呈现的至少一个UI对象,并且确定属性值。更具体地,电子设备将每一个UI对象映射到至少一个虚拟物理对象,将至少一个物理属性指派给该虚拟物理对象,并且确定至少一个属性值。在该情况下,指派给所述至少一个Π对象的物理属性是受到物理场的特性影响的属性。在实施例中,物理属性包括以下各项中的至少一项:尺寸、密度、体积、形式、形状、颜色、弹性、粘度、应变、运动速度、运动向量、电力和磁力。在实施例中,如果物理场的特性是重力和浮力,则指派给UI对象的属性可以是密度、面积等。在该情况下,Π对象在物理场中的位置根据属性来确定。因此,电子设备确定所述至少一个UI对象的初始位置,并且确定与该初始位置相对应的属性值。
[0093]在操作405,电子设备根据由物理引擎计算出的坐标值来显示所述至少一个Π对象。也即是说,电子设备使用物理引擎基于物理场的特性并且基于相应Π对象的属性值来计算Π对象在物理场中的位置,并且在计算出的位置处呈现Π对象。由物理引擎计算Π对象的位置。此外,物理引擎可以用于不仅计算所述至少一个Π对象的位置并且还计算其它状态。在实施例中,如果所述至少一个Π对象是可收缩的,则可以计算Π对象的形状。此外,如果设置可以对Π对象的形状和颜色有影响的物理场,则还可以计算Π对象的形状和颜色。也即是说,电子设备通过使用物理引擎来确定所述至少一个Π对象的位置、形式、形状和颜色中的至少一个。
[0094]在操作407,电子设备根据用户的操控或外部环境的改变来改变物理场的特性和Π对象的属性值。用户的操控意指利用用户输入元件输入的按键输入、触摸输入等。外部环境的改变意指施加于电子设备的物理环境(例如,旋转、移动、方向等)和来自外部通信设备的信号强度的改变。也即是说,如果需要移动特定的UI对象,则电子设备将该UI对象的属性值改变为与目的地点相对应的属性值。在实施例中,如果特定的Π对象根据用户的命令而移动,并且不同的Π对象需要填充由于该特定的Π对象移动而生成的空白空间,则电子设备将该不同的UI对象的属性值改变为与空白空间相对应的属性值。在实施例中,如果电子设备向左或向右倾斜,则电子设备可以改变指派给物理场的重力和浮力的方向,使得该方向与实际的重力方向平行。
[0095]接下来,返回步骤405,电子设备根据由物理引擎计算出的坐标值来显示所述至少一个UI对象。在该情况下,因为在操作407处改变了 UI对象的属性值或物理场的特性,因此不能维持Π对象的当前位置,并且向与属性值相对应的位置移动。因此,通过使用物理引擎基于特定时间来计算Π对象的移动路径上的每一个位置。因此,电子设备可以呈现Π对象的改变、移动、旋转等,而不必使用预定动画。在该情况下,如果Π对象配置有碰撞的可能性,则电子设备可以基于每一个Π对象的弹性、质量等计算由于碰撞引起的Π对象的改变和移动,并且可以呈现碰撞的形式。此外,如果Π对象配置有收缩的可能性,则电子设备可以基于UI对象的延展性、弹性等来计算UI对象的改变,并且可以呈现收缩的形式。
[0096]在本发明的情况下上文关于图X所描述的方法可以提供为一个或多个软件模块中的一个或多个指令,或者存储在包括便携式终端在内的电子设备中的计算机程序。
[0097]虽然图4中未示出,但是电子设备在操作405和407处重复,直到相应的应用结束为止。
[0098]图5是根据本公开实施例的电子设备的框图。本发明可以在电子设备中实现,电子设备包括便携式终端如智能电话和移动电信终端。在下文中,便携式终端用作电子设备的示例。
[0099]参照图5,电子设备包括存储器510、处理器单元520、以及输入输出(IO)系统530。存储器510的数量可以是多个。此外,根据实施例,电子设备还可以包括以下各项中的至少一项:通信子系统540、感测子系统550以及摄像头子系统560。图5的电子设备的元件可以通过至少一个通信总线(其附图标记未示出)或流线(stream line)(其附图标记未不出)来I禹合。
[0100]存储器510可以耦合到存储器接口 521。存储器510可以包括以下各项中的至少一项:诸如一个或多个磁盘存储设备等的快速随机存取存储器、非易失性存储器、一个或多个光学存储设备、以及闪存(例如,与非型闪存[NAND]、或非型存储器[N0R]等)。存储器510存储至少一个软件元素。软件元素可以包括操作系统模块511、图形模块512、Π模块513、物理引擎514等。在本文中,作为软件元素的模块可以表示为指令集,并且模块可以被称作“指令集”或“程序”。
[0101]操作系统程序511包括用于控制通用系统操作的至少一个软件元素。在实施例中,操作系统程序511可以是内置操作系统,例如WINDOWS、LINUX、Darwin、RTXC, UNIX、OSX或VxWorks。在实施例中,通用系统操作的控制包括存储器管理和控制、存储硬件控制和管理、功率控制和管理等。操作系统模块511执行用于促进至少一个硬件元件与至少一个软件元素之间通信的功能。图形模块512包括用于在触摸屏533上提供和显示图形的至少一个软件元素。在本文中,图形包括文本、网页、图标、数字图像、视频、动画等。
[0102]Π模块513包括与Π有关的至少一个软件元素。与Π有关的方面包括与如何改变Π的状态以及在什么条件下改变Π的状态等等有关的内容。具体地,根据本公开的实施例,UI模块513包括用于在屏幕中的至少一个区域中设置物理场、用于指派物理场的物理特性、并且用于确定特性值的软件元素。此外,Π模块513包括用于将受到物理场影响的物理属性指派给物理场中的每一个Π对象并且用于确定属性值的软件元素。此外,UI模块513包括用于根据用户的操控或外部环境的改变来改变物理场的特性和每一个Π对象的属性值的软件元素。
[0103]物理引擎514包括用于基于物理场的输入特性值来计算每一个UI对象的位置和状态改变的至少一个软件元素。状态改变包括收缩/放大、旋转等。此外,物理引擎514包括用于提供对计算出的位置坐标和状态加以指示的值的至少一个软件元素。
[0104]除了前述模块511至514以外,存储器510还可以包括额外的模块。备选地,根据本公开的另一个实施例,可以不包括前述模块511至514中的一些。
[0105]处理器单元520包括存储器接口 521、处理器522以及外围接口 523。处理器522可以包括至少一个硬件芯片。处理器单元520可以统称为“处理器”。存储器接口 521、处理器522以及外围接口 523可以是单独的元件,或者可以使用至少一个集成电路来构造。
[0106]处理器522执行软件程序,以允许电子设备执行与该软件程序相对应的功能,并且处理和控制语音通信和数据通信。此外,处理器522可以通过使用针对图形处理定义的功能来执行用于图形呈现的操作。可以针对用于图形呈现的操作来配置单独的芯片集,其可以称作图形芯片集。也即是说,除了处理器522以外,还可以包括具有专门针对图形处理定义的功能的图形芯片集。然而,图形芯片集可以是处理器522的一部分。
[0107]此外,处理器522执行存储在存储器510中的软件模块,以执行与该模块相对应的特定功能。也即是说,处理器522与存储在存储器510中的软件模块相互作用,以执行根据本公开实施例的方法。处理器522可以包括至少一个数据处理器和图像处理器。数据处理器和图像处理器可以单独的硬件实体来配置。此外,处理器522可以配置有用于执行不同功能的多个处理器。
[0108]外围设备接口 523将电子设备的IO系统530和至少一个外围设备耦合到处理器521和存储器510。可以通过存储器接口 521来耦合存储器510。也即是说,存储器接口 521提供用于访问存储器510的接口。
[0109]通信子系统540提供用于无线通信的接口。通信子系统540可以包括射频(RF)接收机/发射机和光学(例如,红外线)接收机/发射机中的至少一种。通信子系统540可以包括符合不同协议的多个通信设备。
[0110]IO系统530可以包括触摸屏控制器531、额外输入控制器532、触摸屏533以及额外输入/控制单元534。触摸屏控制器531可以耦合到触摸屏533。触摸屏533和触摸屏控制器531不限于此,因此不仅可以使用电容式、电阻式、红外线和表面声波技术来确定触摸屏533上的至少一个接触点,而且还可以使用包括额外的接近传感器布置或额外的元件的多触摸感测技术,以检测接触、运动、接触或运动的中断。额外输入控制器532可以耦合到额外输入/控制单元534。额外输入/控制单元534中可以包括用于至少一个音量控制的向上/向下按钮。此外,该按钮可以具有下压按钮或指针设备的形式,例如,摇杆按钮、摇杆开关、拇指旋轮、拨号盘、棒、触针等。
[0111]触摸屏533提供电子设备与用户之间的I / O接口。也即是说,触摸屏533将用户的触摸输入传送到电子设备。此外,触摸屏533是将电子设备的输出示出给用户的媒介。因此,触摸屏533可以称作显示单元。也即是说,触摸屏533向用户表示视觉输出。视觉输出以文本、图形、视频或其组合的形式来表达。各种显示元件可以用于触摸屏533。在实施例中,虽然不限于此,但是触摸屏533可以包括以下各项中的至少一项:液晶显示器(LCD)、发光二极管(LED)、发光聚合物显不器(LPD)、有机发光二极管(OLED)、有源矩阵有机发光二极管(AMOLED)、以及柔性 LED (FLED)。
[0112]感测子系统550检测外部激励。感测子系统550可以包括以下各项中的至少一项:加速度传感器、陀螺仪传感器、光学传感器、地磁传感器、重力(G)传感器、温度传感器、生物传感器和位置传感器。光学传感器可以是以下各项中的至少一项:电荷耦合器件(CCD)和互补金属氧化物半导体(CMOS)。位置传感器可以是全球定位系统(GPS)模块。感测子系统550感测运动、光束、倾斜、方向等,并且提供用于指示感测结果的电信号。感测子系统550还可以包括用于解释电子信号以指示运动等的模块。
[0113]摄像头子系统560可以执行拍照、录像等。摄像头子系统560可以包括光学传感器、透镜等。也即是说,摄像头子系统560通过使用光学传感器来识别通过透镜输入的光束,并且将光学传感器中识别的图像数字化为数字数据。
[0114]根据本公开的电子设备的各种功能可以由至少一个流处理、包括专用集成电路(ASIC)在内的硬件和软件实体或其组合来执行。
[0115]图6是根据本公开实施例的电子设备的框图。本发明可以在电子设备中实现,电子设备包括便携式终端如智能电话和移动电信终端。在下文中,便携式终端用作电子设备的示例。
[0116]参照图6,示出了图5的框图中存储器510和处理器单元520的另一可选结构。
[0117]参照图6,电子设备包括存储器610和处理器单元620。虽然图6中未示出,但是电子设备还包括图5的IO系统530。此外,根据实施例,电子设备还可以包括以下各项中的至少一项:通信子系统540、感测子系统550和摄像头子系统560。
[0118]图6的实施例与图5的实施例的不同之处在于:不包括包含在存储器510中的物理引擎514,并且在处理器单元620中进一步包括物理引擎624。也即是说,以硬件实现的物理引擎624替代以软件配置的物理引擎514来执行物理引擎514的功能。也即是说,根据物理场的特性值和物理场中每一个UI对象的属性值,物理引擎624计算每一个UI对象的状态改变和位置。此外,物理引擎624提供对计算出的位置坐标和状态加以指示的值。
[0119]图7是根据本公开实施例的电子设备的框图。本发明可以在电子设备中实现,电子设备包括便携式终端如智能电话和移动电信终端。在下文中,便携式终端用作电子设备的示例。
[0120]参照图7,示出了图5的框图中存储器510和处理器单元520的另一可选结构。
[0121]参照图7,电子设备包括存储器710和处理器单元720。虽然图7中未示出,但是电子设备还包括图5的IO系统530。此外,根据实施例,电子设备还可以包括以下各项中的至少一项:通信子系统540、感测子系统550和摄像头子系统560。
[0122]图7的实施例与图5的实施例的不同之处在于:不包括包含在存储器510中的UI模块513,并且在处理器单元720中进一步包括UI处理器724。也即是说,以硬件实现的UI处理器724替代以软件配置的UI模块513来执行UI模块513的功能。也即是说,Π处理器724在屏幕中的至少一个区域中设置物理场,指派物理场的物理特性,或者确定特性值。此外,UI处理器724将受物理场影响的物理属性指派给物理场中的每一个Π对象并且确定属性值。此外,Π处理器724根据用户的操控或外部环境的改变来改变物理场的特性和每一个Π对象的属性值。
[0123]图8是根据本公开实施例的电子设备的框图。本发明可以在电子设备中实现,电子设备包括便携式终端如智能电话和移动电信终端。在下文中,便携式终端用作电子设备的示例。
[0124]参照图8,示出了图5的框图中存储器510和处理器单元520的另一可选结构。
[0125]参照图8,电子设备包括存储器810和处理器单元820。虽然图8中未示出,但是电子设备还包括图5的IO系统530。此外,根据实施例,电子设备还可以包括以下各项中的至少一项:通信子系统540、感测子系统550和摄像头子系统560。
[0126]图8的实施例与图5的实施例的不同之处在于:不包括包含在存储器510中的UI模块513和物理引擎514,并且在处理器单元720中进一步包括图7的UI处理器724和图6的物理引擎614。也即是说,以硬件实现的物理引擎624替代以软件实现的UI模块513和物理引擎514来执行物理引擎514的功能,并且UI处理器724执行UI模块513的功能。
[0127]在下文中,将描述根据本公开的前述实施例应用本公开的详细示例。
[0128]根据本公开实施例的基于物理弓I擎的Π对象控制可以应用于菜单屏幕编辑UI。
[0129]通常,在诸如智能电话等的移动设备的菜单屏幕中,以网格形状布置图标,并且Π被配置为使得用户可以容易地执行期望的应用。用户可以根据用户的偏好改变各种菜单环境。在实施例中,用户在菜单编辑屏幕中选择图标,然后拖动图标并且在期望的位置处放下图标,以改变图标的位置。在该情况下,根据移动中的图标的运动,自动更新其余图标的位置。在实施例中,在图标的优先级从左上部分至右下部分减小的情况下,如果用户将特定的图标移动到特定的位置,则在将存在于后面位置的图标重新布置的同时将它们的优先级减小一个级别。
[0130]图9A、图9B和图9C示出了根据本公开实施例的电子设备中的菜单屏幕的图标移动。
[0131]参照图9A、图9B和图9C,在如图9A所示以网格形式布置多个图标的情况下,当用户如图9B所示将图标K移动到左上部分时,图标K如图9C所示位于左上部分,并且图标A至J顺序移动。
[0132]在传统Π框架的情况下,为了呈现图标如上所述移动的UI,使用布局管理器、动画引擎等需要复杂的实现。此外,以更复杂的方式设计实现,以支持应用于大多数智能电话的水平/垂直屏幕转变功能,并且当UI框架不支持布局管理器时,存在很多困难。然而,如果根据本公开的实施例使用物理引擎来实现菜单编辑屏幕,则电子设备可以提供更多种并且更自然的菜单编辑功能,而不必使用基于布局管理器等的复杂功能。
[0133]下面描述用于基于物理弓I擎进行菜单编辑的本公开实施例。
[0134]根据本公开实施例的电子设备通过使用基于浮力的对象控制方案来实现菜单屏幕。电子设备确定虚拟物理空间中水平轴和垂直轴上的浮力场,并且根据每一个图标的目的地位置来确定图标中确定的水平密度值和垂直密度值。然后,相应的图标通过物理引擎移动到目的地位置同时彼此碰撞。
[0135]如果用户在菜单编辑屏幕中以相同的方式移动特定的图标,则必须自动将其余图标的顺序改变一个级别。在根据本公开实施例的基于物理引擎的Π框架的情况下,通过改变图标的密度值,图标自然地移动到目的地点。也即是说,当图标的密度值改变时,施加于由每一个图标指示的Π对象的力的幅度改变。当通过物理引擎实时地计算基于力的改变并且通过渲染引擎在电子设备的屏幕上呈现该改变时,用户体验到图标在编辑屏幕中的自然运动。也即是说,通过仅使用物理引擎呈现图标的自然运动,而无需动画引擎的辅助。
[0136]在实施例中,基于浮力的菜单屏幕可以如图10所示。
[0137]图10示出了根据本公开实施例的用于电子设备中菜单屏幕的图标移动的密度分布。
[0138]参照图10,在垂直轴(即,Y轴)和水平轴(即,X轴)上独立地确定浮力,并且根据轴上的位置来不同地确定浮力场中流体的密度。每一个图标具有X轴密度值和Y轴密度值。每一个图标的位置根据X轴密度值和Y轴密度值来确定。图标A1010具有密度值(x4、y5)。当密度改变为(Xl、yi)时,图标A1010根据物理引擎逐渐移动到坐标(1、1)。也即是说,可以通过简单地改变图标的密度值来容易地呈现图标移动。
[0139]此外,图标A1010可以通过用户的拖动而移动。更具体地,当用户拖动图标A1010时,图标A1010根据用户的拖动而移动,而不论物理场如何。为此,电子设备可以定义足以忽略浮力的力被施加到图标AlO 10上,或者可以将由于用户的操控而导致的图标移动视为忽略物理场的例外。此后,如果用户在坐标(1、1)处放下图标A101,则图标A1010再次受到物理场的影响。在该情况下,如果图标A1010的密度为(x4、y5),则图标A1010可以再次移动到坐标(4、5)。因此,为了使图标A1010维持用户期望的位置,电子设备将图标A1010的密度值改变为与坐标(1、1)相对应的(Xl、yi)。此外,关于由于图标A1010的移动而被推向旁边的其它图标中的至少一个图标,电子设备通过根据预定规则确定目的地点并且通过指派与所确定的目的地点相对应的密度值,来提供控制以移动其它图标中的所述至少一个图标。
[0140]通常,大多数智能电话提供在旋转设备时发生水平和垂直屏幕转变的Π。换言之,当处于垂直模式的智能电话向左或向右旋转时,屏幕在设备的旋转方向相反的方向上旋转90度,因此用户可以在设备旋转之前和之后看到相同方向的屏幕。传统电子设备通过呈现预定的两个布局和针对改变过程的动画,来实现前述水平/垂直转变Π。然而,当使用根据本公开实施例的物理引擎时,可以通过改变物理场的特性或UI对象的属性值来简单地实现水平/垂直转变Π。
[0141]换言之,可以通过改变每一个图标的密度值来提供水平/垂直屏幕转变Π。当要在屏幕中显示的UI对象均被映射到虚拟物理空间的对象时,可以控制每一个Π对象的位置。可以通过使用物理引擎和渲染引擎在移动设备的屏幕上以真实的方式呈现每一个对象的运动。与图标类似,当通过使用浮力容易地改变为水平屏幕时,屏幕上的指示符也可以具有自动位置调整和移动效果。指示符意指显示诸如智能电话、移动电话等电子设备的状态(例如,电池剩余电量、振动模式状态、外部端口连接状态等)的Π对象。指示符通常位于屏眷的最上部分。在实施例中,指不符如图1IA和图1lB所不移动。
[0142]图1lA和图1lB示出了根据本公开实施例的电子设备中菜单屏幕的指示符的移动。
[0143]参照图1lA和图11B,在图1lA中垂直地放置设备,因此显示垂直屏幕。在该情况下,指示符Ilio具有与Y轴的最上部分相对应的Y轴密度值。如果如图1lB所示水平地放置设备,则显示水平屏幕。在该情况下,指示符1110具有与X轴的最上部分相对应的X轴密度值。为此,电子设备通过传感器识别设备的旋转,并且在旋转时改变指示符1110的密度值。
[0144]可以以多种方式配置要如图1lA和图1lB中所示移动的指示符的物理对象。
[0145]图12A和图12B示出了根据本公开的实施例配置电子设备中指示符的物理对象。
[0146]参照图12A,指示符的物理对象可以由包括整个指示符的一个物理对象1211构成。在实施例中,如图12B中所示,指示符的物理对象可以由具有不同密度值并且位于指示符两端的两个物理对象1221和1222构成。在该情况下,通过改变两个物理对象1221和1222的密度值,可以如图1lA和图1lB所示呈现指示符的移动。
[0147]根据本公开的实施例,可以通过不改变UI对象的密度值而改变物理场的特性来呈现图1lA和图1lB的水平/垂直屏幕转变以及指示符移动。换言之,可以通过分别将物理场的X轴和Y轴改变为Y轴和X轴同时维持UI对象的密度值,来呈现水平/垂直屏幕转变。
[0148]根据本公开的实施例,可以通过使用磁力来实现指示符的移动。指示符附着到屏幕的边缘,通常,附着到屏幕的上端。因此,当磁力施加于指示符时并且当用作对施加于指示符的磁力的吸引力的磁力被施加于指示符所在的屏幕边缘时,指示符可以固定于该边缘。在该情况下,当实现水平/垂直屏幕转变时,可以释放施加于该边缘的磁力,并且当磁力施加于另一方向的边缘时,指示符可以移动。
[0149]根据本公开的实施例,可以基于重力场来配置菜单屏幕。也即是说,与调整虚拟物理空间中每一个图标的密度值的方法不同,可以通过使用重力来对图标进行排序。每一个图标可以由可能彼此碰撞并且可以以平底筒形收缩的物理对象构成。
[0150]图13示出了根据本公开实施例的电子设备中基于重力场的菜单屏幕。
[0151]参照图13,电子设备沿菜单的向下方向设置重力场1300,并且分别在菜单屏幕的左边缘、右边缘、上边缘和下边缘处确定隐藏壁1310-1至1310-4,使得每一个图标不会移出屏幕。壁1310防止图标移出屏幕。可以通过调整壁1310的位置来改变可呈现的图标的数量。换言之,由壁1310围绕的空间越宽,可以呈现的图标就越多。备选地,如果维持图标的数量,则可以根据壁1310的位置改变图标的尺寸。
[0152]如果如图13所示仅使用重力场,则可以无间隔地布置图标,这是因为不存在沿与重力相反的方向施加的力。在该情况下,用户可能体验到不便。因此,为了在菜单屏幕中基于重力场以特定的间隔布置图标,可以如图14所示地配置物理对象。
[0153]图14示出了根据本公开的实施例基于电子设备中的重力场配置菜单屏幕中的图标的物理对象。
[0154]参照图14,虚拟物理空间中图标的物理对象范围1421大于屏幕中显示的图标的图形显示范围1422。因此,即使仅存在重力场1400,也以与物理对象中未显示的部分相对应的间隔来显示图标。
[0155]如上所述,电子设备在X轴和Y轴方向中的任意一个上设置重力场,并且将用户移动的图标的质量确定为相当大的值,然后将该图标移动到目的地位置。如图15所示,移出目的地位置的图标与其它图标碰撞,并且靠近空位的图标移动到该空位。[0156]图15示出了根据本公开实施例的电子设备中物理对象的碰撞。
[0157]参照图15,碰撞的图标被加以允许在与碰撞位置相反的方向上移动的力。由于碰撞生成的力的幅度可以根据映射到图标的物理对象的弹性而改变。
[0158]根据本公开的实施例,当图标碰撞时,电子设备可以扩展由位于菜单屏幕的边缘处的隐藏壁围绕的区域而不收缩,并且可以不包括位于外部区域的传统对象。在该情况下,位于壁内的图标可以进一步移动扩展的区域。此外,由于碰撞而移出区域的图标可能由于屏幕或窗口的区域而部分不可见。
[0159]根据本公开的实施例,可以将图标映射到浮于流体上的物理对象(例如,三维球、圆盘等)。为此,电子设备可以确定与屏幕的平面正交的Z轴上的重力场,并且当所选择的图标移动时,电子设备可以定义图标在Z轴方向上浸入流体,从而其它图标沿向下方向移动。在实施例中,浮于流体上的物理对象可以如图16所示移动。
[0160]图16示出了根据本公开实施例的电子设备中浮于流体上的物理对象的移动。
[0161]参照图16,多个图标的物理对象位于屏幕平面1610上,并且选择对象A1620并沿Z轴方向移动对象A1620。对象A1620根据用户的拖动而移动。在该情况下,对象A1620相对于其它图标沿向下方向移动。
[0162]为了更真实地呈现,电子设备可以模拟使得当维持选择时,所选择的图标的质量在Z轴方向上减小或增加,并且可以通过根据透视法则(law of perspective)增加或减小图标的尺寸来呈现图标。当所选择的图标停止移动时,电子设备将Z轴方向的质量恢复为原始值。因此,图标被恢复为原始尺寸,或者图标的尺寸增加或减小,并且可以呈现与在移动停止的位置处重叠的另一个图标相碰撞的效果。此外,除了图标被浸入以外,还可以呈现图标根据诸如重力方向、密度、质量等属性浮动的效果。
[0163]对于前述重力场、浮力场等,可选地根据应用来预先确定如何应用这种场以及应用多大强度的场。然而,对于多种使用,可以允许用户确定位置。在实施例中,如果在X轴或Y轴上确定重力场,则可以在未确定重力场的行或列中以随机的顺序布置图标。
[0164]在使用如上所述的物理属性来确定图标的位置时,具有类似密度或类似优先级的图标以相对近的距离来布置。因此,可以生成基于相似性的聚类效果。也即是说,通过提供图标根据相似性而彼此相邻、附着、重叠或部分叠加的效果,可以改善用户的使用便利性。在实施例中,电子设备可以将类似的密度值指派给视频和音频相关图标,使得视频和音频相关图标彼此相邻,并且与消息图标或邮件图标相距较远。此外,如果用户晃动电子设备,换言之,如果发生晃动运动,则电子设备可以使用传感器来识别晃动运动,并且混洗(shuffle)图标,然后再次执行聚类。
[0165]基于物理引擎的物理交互效果可以根据用户输入界面的类型而不同。
[0166]在实施例中,在支持手指或触控笔的浮窗预览(air view)或悬停(hovering)功能的情况下,如果手指或触控笔位于图标之上而没有接触且然后被聚焦,则可以提供以较大的尺寸显示该图标的效果,如同该图标被电场或磁力吸引一样或者如同该图标由于增强的浮力而上浮一样。为此,当执行浮窗预览或悬停功能时,电子设备可以将电力或磁力指派给图标的物理对象,使得图标的Z轴坐标增加,或者可以增加作用于图标的物理对象的Z轴浮力。
[0167]在实施例中,当浮窗预览或悬停停止时可以提供图标恢复到原始尺寸的效果。为此,当浮窗预览或悬停停止时,电子设备可以移除所指派的电力或磁力,或者可以将浮力恢复到原始状态。
[0168]在实施例中,当通过手指或触控笔进行接触以对图标进行按压时,可以提供以较小的尺寸显示图标的效果,如同图标进入水下一样,并且当释放接触时,图标的尺寸增加,如同图标在水中上浮一样。为此,当按压图标时,电子设备可以增加图标的Z轴质量,并且当释放接触时,电子设备可以减小Z轴质量。备选地,电子设备可以将与用户施加的压力成正比的额外力指派给图标。
[0169]可以根据接合持续时间逐步地呈现前述效果。例如,可以以与浮窗预览或悬停持续时间成正比的较大尺寸来显示图标,并且可以在经过了特定的时间以后以最大尺寸来显示图标。在实施例中,当接触维持较长的时间时,可以以较小的尺寸来显示图标,并且可以在经过了特定的时间以后,以最小尺寸来显示图标。也即是说,电子设备与持续时间成正比地增加在特定的持续时间期间额外指派给图标的物理属性值。
[0170]除了前述效果以外,还可以添加诸如碰撞或波纹等物理效果。
[0171]如上所述,除了使用重力和浮力的方法以外,还可以使用多种方法,例如,在每一个UI对象中使用钟摆的方法、使用弹簧的方法等等。也即是说,可以通过组合各种方法来确定物理引擎的运动特性,因此可以容易地以多种方式来实现唯一的个性化菜单屏幕。
[0172]根据本公开实施例的基于物理引擎的UI对象控制可以应用于安全键盘。
[0173]当使用电子商务或金融应用时,用户输入的个人信息、密码等可以是旨在非法使用个人用户信息的黑客的目标。为了防止这一点,最近的移动应用提供了安全键盘。传统的安全键盘每次在执行时都通过在键盘按钮之间随机地布置间隔来改变键盘按钮在屏幕中的坐标。因此,使黑客旨在根据用户所触摸的屏幕的绝对坐标来估计输入的实际信息的尝试无效。
[0174]根据本公开实施例的基于物理引擎的Π对象控制可以应用于实现安全键盘,安全键盘通过防止屏幕上的绝对位置与键盘按钮的布置相关联来改善安全性。在根据本公开实施例的安全键盘中,使用存在于虚拟物理空间中的物理对象来配置相应的键盘按钮,并且根据作用于虚拟物理空间的物理力和物理对象的物理属性来确定物理对象的位置。当改变物理属性值时,改变了按钮的位置。当改变位置时,可以呈现自然移动过程,而无需动画效果帮助。前述安全键盘可以如图17所示。
[0175]图17示出了根据本公开实施例的电子设备中的安全键盘。
[0176]参照图17,仅示出了安全键盘的一些按钮。安全键盘中的相应按钮均被映射到独立的物理对象。此外,向相应的按钮指派不同的密度值,例如,0l、02、O3等。布置有按钮的虚拟空间填充有具有不同密度如屯、d2、d3等的介质。因此,按钮基于其密度位于重力与浮力之间的平衡点处。在用户的预定重新布置命令出现时,电子设备重新确定每一个按钮的密度值,此后分布按钮。在实施例中,重新布置命令可以是定义用于按钮分布的按钮、晃动运动等。因此,由于针对每一个按钮所确定的密度与其中包括对象的介质的密度之间的差另O,每一个按钮移动到相应的位置。在该情况下,因为每次执行分布时都不同地确定每一个按钮的密度,因此在介质中重新布置按钮。在图17的实施例的情况下,为了用户方便,仅改变每一列的高度,同时维持传统qwerty键盘的键盘布置。图18A和图18B中示出了用于实现图17的安全键盘的应用的屏幕示例。[0177]图18A和图18B示出了根据本公开的实施例在电子设备中实现安全键盘。
[0178]参照图18A和图18B,当输入密码时,提供安全键盘。参照图18A,键盘被布置为使得列具有不同的高度。存在随机混洗按钮1810以重新布置按钮。当输入随机混洗按钮1810时,如图18B所示重新布置按钮。
[0179]基于前述物理引擎的安全键盘未指定每一个键盘按钮的绝对位置。取而代之,不同地确定键盘按钮的物理属性,并且其位置根据从物理引擎获得的计算结果而移动,直到在虚拟物理空间中熵变为零为止。因此,由于如同对象落入水中一样的效果而非基于物理引擎的安全键盘,因此与传统的方法相比,该方法更加直观和自然。此外,可以通过改变每一个按钮对象的物理属性,来容易地满足在传统的方法中所需的以随机位置进行布置的要求。
[0180]在实现基于物理引擎的安全键盘时所考虑的方面是按钮的物理对象的尺寸、物理对象之间的密度差、碰撞处的弹性值等。当错误地确定上文列出的值时,按钮可能在错误的位置成为彼此的障碍,这可能引起干扰,或者按钮可能过于频繁地移动并且长时间停止和保持,这可能导致效率变差。可以通过调谐总特性值来解决上面的情况。
[0181]此外,在将键盘每一列的高度应用于随机值的处理中需要下面的条件。首先,必须随机确定高度值。此外,为了避免用户输入的不便,相邻列之间的高度差不可以过大。此外,按钮不可以脱离布局的边缘。为了满足上述条件,可以通过使用简单地实现的龟图(turtlegraphics)方法来确定每一列的高度。此外,电子设备可以将第一列的位置确定为任意高度,此后可以通过在任意方向上移动来重新确定该高度。
[0182]根据本公开的实施例,指派给每一个按钮的物理对象的属性值可以根据用户输入而改变。换言之,可以根据针对每一个按钮的用户界面输入水平而在上限范围和下限范围内增加或减小物理对象的属性值。在实施例中,可以改变密度、尺寸以及重量中的至少一个。当属性值改变时,映射到物理对象的按钮的位置逐渐地改变。因此,安全性增强。例如,当按钮“y”被输入若干次时,每当按钮“y”被输入时,按钮“y”所属的列可以沿向下方向逐渐移动,或者按钮“y”可以向左或向右移动。在实施例中,如果按钮“y”被输入与特定次数相比更大或相同的次数,则按钮“y”的尺寸可以增加或减小。
[0183]根据本公开的实施例,当进行接触时,可以扩展按钮,并且当释放接触时,在按钮的尺寸减小的同时相邻按键可以振动。备选地,按钮的位置可以由于与其它按钮碰撞而改变。相反,当进行接触时,按钮的尺寸可以减小,如同它沿着Z轴移动一样,并且当释放接触时,按钮的尺寸可以增加,如同它被弹出一样,然后恢复到其原始尺寸。
[0184]在本公开的安全键盘中,当生成由用户界面输入导致的重新布置命令时,在特定的范围内随机地重新确定Π对象的属性。优选地,当进行特定次数(或更多次)按键输入时或者当选择重新布置Π时,执行重新布置命令。
[0185]根据本公开实施例的基于物理弓丨擎的Π对象控制可以应用于基于WiFi搜索结果的UI。
[0186]当用户激活电子设备的WiFi功能时,电子设备搜索可访问的相邻接入点(AP)并且显示示出结果的列表。在该列表中,根据先前的使用状态、信号强度等来对每一个AP排序。可以根据列表中的AP信号强度来添加或删除所发现的AP。在该情况下,每次都执行重新布置。如果AP项在列表中重复地突然出现或消失,则可能在视觉上使用户混淆。因此,本公开提出了能够基于物理引擎更直观地呈现所发现的AP的方法。图19A和图19B中示出了根据本公开的实施例搜索AP的示例。
[0187]图19A和图19B示出了根据本公开实施例的电子设备中的AP搜索屏幕。
[0188]参照图19A和图19B,以相对距离和图标尺寸在二维平面上呈现信号强度,其中,电子设备位于二维平面的中心。图19A和图19B示出了不同环境中的屏幕。信号强度越强,图标尺寸越大,且图标被布置得距离圆心越近。当信号强度改变时,图标沿向着圆外的方向移动,并且图标尺寸减小。因此,可以在AP搜索屏幕中使由于突然的屏幕改变而引起的用户混淆最小化。当进行安全连接时,都可以在图标中以标记的形式呈现是否是预存AP等。
[0189]如果通过使用传统的技术来实现图19A和图19B的屏幕,则需要例如大量努力以定义每一个属性,直接计算由属性引起的动作,并且执行相应的动画。然而,如果根据本公开的实施例使用物理引擎,则可以通过将指示每一个AP的图标定义为虚拟物理空间中的物理对象、通过指派物理属性并且通过物理引擎执行模拟,来以真实的方式呈现图标的运动。该应用仅执行根据物理对象的状态仅周期性地更新屏幕的功能。在该情况下,输入来确定物理属性值的变量是每一个AP的信号强度。将信号强度转换为AP图标的位置的处理如图20所示。
[0190]图20示出了根据本公开实施例的电子设备中将信号强度转换为AP图标的位置的处理。
[0191]参照图20,世界定义2010用于初始化。此外,通过周期更新将每一个AP的信号强度输入到物理引擎2020,并且相应地,物理引擎2020周期性地更新指示AP的对象的布局。在本文中,世界定义2010用于实现虚拟物理环境,并且包括对AP进行符号化的对象的尺寸、形状或属性的定义,以及用于根据属性将对象定位在适当位置的力的定义。
[0192]为了布置AP图标使得距中心的距离与信号强度成反比,确定物理虚拟环境填充有密度为Pw的介质,因此AP图标受到浮力的显著影响。根据信号强度来确定中心与AP的物理对象之间的距离d。如果AP的物理对象要到达根据信号强度所确定的距离d,则电子设备将当前距离dnOT与目的地距离d进行比较,并且调整物理对象的密度P,从而最终控制作用于物理对象的力F。基于当前距离dnov与目的地距离d之间比较的控制处理如图21所示。
[0193]图21示出了根据本公开实施例的电子设备中AP的物理对象的密度与作用于该物理对象的力之间的关系。
[0194]参照图21,在dnOT大于d的情况2101下,电子设备确定物理对象的密度P大于介质的密度Pw,使得沿中心方向施加力F。另一方面,在dnOT小于d的情况2102下,电子设备确定物理对象的密度P小于介质的密度Pw,使得沿与中心方向相反的方向施加力F。另一方面,在dnOT等于d的情况2103下,电子设备维持物理对象的密度P等于介质的密度Pw,使得沿中心方向施加力F。可以通过下面的表达式(5)来表达前述密度改变。
[0195]dnow<d, p=r1pw(r1<l)
[0196]dnow>d, P =r2 P w(r2>l)......表达式(5)
[0197]dnow=d, P=Pw
[0198]在上面的表达式(5)中,dnOT表示物理对象与中心之间的当前距离,d表示根据接收信号强度确定的目标距离,P表示物理对象的密度,Pw表示介质的密度,A表示用于减小密度的权重,并且r2表示用于增加密度的权重。
[0199]如图21和上面的表达式(5)所示,当通过改变物理对象的密度施加力F时,物理对象移动。当物理对象与中心之间的距离达到目标距离d时,电子设备将物理对象的密度恢复为等于介质的密度Pw,从而移除施加的力并且将对象固定到相应的位置。
[0200]当物理对象到达期望的位置时,电子设备恢复密度P以移除力F。然而,因为物理对象以某一速度在移动中,因此物理对象由于惯性而不能立即停止,因此通过相应的位置。当对象通过目的地点时,再次调整力F,并且对象通过改变方向返回原始位置,并且重复地再次通过该点,也即是说,可能发生简谐振荡运动。为了解决该问题,需要另一个力。根据本公开的实施例,电子设备定义了将对象挂在绳上的情形,其中,绳具有从中心开始的固定长度d,以在对象到达目的地点时固定对象。挂在绳上的物理对象如图22所示。
[0201]图22示出了根据本公开实施例的电子设备中用于避免AP的物理对象的简谐振荡的建模。
[0202]参照图22,对象么2221和对象82222挂在绳2211和2212上。在对象A2221的情况下,距中心的距离小于绳2211的长度d(即,cLw〈d),因此不存在由绳2211引起的动作。另一方面,在对象B2222的情况下,距中心的距离达到绳2212的长度d(即,cLw=d),因此对象B2222由于绳2212的张力的影响而不能进一步移动。前述动作是通过将v与向量_^。?相加而获得的结果,向量-Vnmi在物理上抵消了速度向量V的法向分量vnOTm,并且相对于vnOTm具有相同的大小和相反的方向。
[0203]在实施例中,可以提供如同对象在到达相应位置时被固定到该位置的效果,同时在对象向其位置移动期间对象表示出如同由于浮力而浮动一样的自由运动。根据本公开的实施例,除了用于添加绳的建模以外,如果物理对象与中心之间的距离仅为d,则还可以通过用于固定物理对象的位置的例外处理来避免简谐振荡。
[0204]如上所 述,如果定义了世界(即,物理虚拟空间)并且此后根据AP信号强度和对象距中心的当前相对位置来改变每一个对象的密度,则物理引擎提供虚拟物理环境中由于浮力、重力或张力而改变的每一个图标的位置。UI呈现元件仅对物理引擎提供的结果执行周期采样和渲染,从而可以自然地将AP图标移动到适当的位置。
[0205]前述实施例也可以等同地应用于不仅基于WiFi而且还基于蓝牙等的通信元件。基于用户设备接收的无线电信号的强度来控制Π对象的属性,并且被控制的属性可以包括密度、尺寸、重量、张力和弹力中的至少一个。
[0206]除此之外,还可以提供距离或尺寸根据针对每一个图标的用户输入的发生次数或者维持与发送相应无线电信号的设备的连接的记录而改变的效果。为此,电子设备可以基于用户输入的发生次数和维持连接的记录来在上限范围和下限范围内增加或减小UI对象的属性值。在实施例中,频繁使用的AP图标的尺寸可以逐渐增加,或者频繁使用的AP图标的接近度可以增加。此外,可以控制AP图标,使得信号强度越强,颜色越亮,如同在水中上浮一样,并且尺寸越大。相反,信号强度越低或者使用频度越低,则颜色越深,如同正浸入水中一样,并且尺寸越小。
[0207]根据本公开实施例的基于物理引擎的UI对象控制可以应用于锁定屏幕。
[0208]在支持触摸输入的电子设备中,锁定屏幕用于避免由于无意的用户输入引起的错误操作。通常,如果按压电源按钮或者如果在特定的持续时间期间不存在输入,则电子设备关闭屏幕并且进入锁定模式以减小电流消耗。此外,如果用户按压主页按钮或者电源按钮,则打开屏幕并且锁定屏幕出现。用户可以根据预定的运动释放锁定屏幕上的锁定按钮。
[0209]传统的锁定屏幕往往仅关注与其名称相适应的功能方面。在实施例中,“iOS”的“推动解锁”、“安卓”的“绘制解锁”、基于个人标识号(PIN)输入的解锁以及基于密码输入的解锁被广泛地采用。然而,随着应用直观UI的趋势进一步发展,需要将新型的UI应用于锁定屏幕。
[0210]图23A、图23B和图23C示出了根据本公开实施例的电子设备中的锁定屏幕。
[0211]参照图23A、图23B和图23C,本公开提供了基于物理引擎提供帷幕效果的锁定屏幕。如图23A所示,根据本公开实施例的电子设备确定锁定屏幕处于帷幕静止的状态,并且提供根据用户输入打开帷幕的效果。因此,提供了真实且友好的解锁。也即是说,当屏幕被锁定时,覆盖主屏幕的Π对象具有与帷幕相同的属性。如果触摸屏上不存在输入,则不施加外力,因此锁定屏幕几乎不振颤,如同它是静止背景一样。在该情况下,如果出现触摸输入,则虽然锁定屏幕未被释放,但是如图23B所示,帷幕在提供输入的位置周围自然振颤,并且运动在经过了特定的时间以后停止。然后,当出现拖动输入时,如图23C所示,电子设备提供帷幕移动如同它实际上被手触摸一样的效果。在锁定屏幕之后的主屏幕部分地显示在由帷幕的运动产生的空白空间2310中。如果手从拖动状态移开,则锁定屏幕被释放,并且主屏幕出现。
[0212]按如下方式配置应用于前述锁定屏幕的虚拟物理空间。除了构成被设于帷幕之后的主屏幕的屏幕以外,构成初始屏幕的帷幕也被配置为独立的对象,并且与另一刚体碰撞。帷幕不应当是刚体,而可以是软体。软体意指其形状可以由物理引擎中的外部输入或与另一对象碰撞而改变的对象。与刚体不同,软体可以灵活地改变,如同两个点由弹簧连接一样,而不是对象中任何 两个点之间的距离固定。因此,软体动力学独立于刚体动力学来定义。为了提供具有与真实世界类似印象的Π,需要以更详细且具体的方式来实现表达织物、衣服等的软体动力学。
[0213]为了将帷幕定义为软体,电子设备定义了一个网状结构(mesh),并且将软动力学的属性指派给该网状结构。在生成网状结构以后,电子设备通过确定X轴和Y轴的网格来定义多个索引。索引将与触摸点相对应的帷幕位置近似指示为整数,并且用于指示该位置处的锚点。因此,物理引擎将网状结构的属性确定为软体,并且另外确定质量、碰撞形状等,从而可以在虚拟物理空间中最终生成一个对象,即,帷幕。
[0214]为了使静止帷幕看起来像真实帷幕,刚体用于通过与帷幕碰撞来使帷幕晃动。虽然软体使用世界坐标系,但是刚体使物理对象与图形对象之间的世界改变一致。因此,为了使得软体与刚体之间碰撞,一些物理引擎可以支持能够表达软体和刚体的额外动态世界。在实施例中,在公知的物理引擎“bullet”的情况下,提供了能够表达软体和刚体的称作^btSoftRigidDynamicsfforId^的动态世界。在额外的动态世界中,当在刚体与软体之间发生碰撞时,物理引擎通过感测物理引擎的相应顶点的碰撞来计算冲量,然后计算碰撞后的速度。
[0215]当手指与触摸屏接触时,大体上需要两个场景,即,维持锁定屏幕的场景和释放锁定屏幕的场景。维持锁定屏幕的场景被划分为两种情况,即,发生触摸事件的情况和发生运动事件的情况。释放锁定屏幕的场景被划分为两种情况,即,发生运动事件的情况和发生移开手指的触摸抬起(touch-up)事件的情况。
[0216]维持锁定屏幕的场景如下。当发生触摸输入时,生成隐藏的独立刚体。在生成触摸输入时生成的刚体沿“-Z”方向移动,与帷幕碰撞,并且使帷幕晃动。因此,实现了帷幕振颤的效果。此外,在碰撞以后,刚体以达到的视速度移出屏幕。根据刚体飞行的速度、刚体的质量、帷幕的张力等来确定帷幕振颤的范围。刚体与帷幕间的碰撞如图24A和图24B所
/Jn ο
[0217]图24A和图24B示出了根据本公开实施例的电子设备中构成锁定屏幕的帷幕与刚体之间的碰撞。
[0218]参照图24A和图24B,具有质量m的刚体2420以不同的速度与帷幕2410碰撞。图24A示出了刚体2420以速度v[m / s]碰撞的情况,图24B示出了刚体2420以速度2v[m /s]碰撞的情况。刚体2420的碰撞速度越大,施加于帷幕2410的力越大,因此帷幕2410振颤地越大。
[0219]电子设备识别与触摸下压(touch-down)输入同时发生的运动输入。在该情况下,为了区分帷幕振颤和解锁,可以仅当平移距离大于或等于预定阈值时才执行解锁场景。在实施例中,阈值可以是100个像素。如果平移距离大于或等于阈值,则由于运动而生成要使用的又一个刚体。与沿“-Z”方向移动并且进行碰撞的刚体不同,该刚体与出现触摸输入的位置处的锚点连接。当在维持触摸状态的同时发生拖动时,刚体根据触摸点的位置而移动。因此,如果连接到刚体的帷幕部分移动,则因为帷幕的其余部分也是由网状结构构成,因此其余部分也由于吸引力而一起移动。因此,提供了帷幕根据触摸点在各处移动的效果。帷幕移动的形状如图25所示。
`[0220]图25示出了根据本公开实施例的电子设备中构成锁定屏幕的帷幕的运动。
[0221]参照图25,当发生触摸输入时,在触摸点处生成锚点2510,如图25A所示。此后,如果触摸点移动,则锚点2510也移动,如图25B所示。因此,如图25C所示,随着锚点2510移动,帷幕的其余部分一起移动,如同被锚点2510拉动一样。
[0222]当在帷幕被锚点移动的状态下释放触摸输入时,换言之,当手指移开时,电子设备计算发生运动事件时的坐标值与释放触摸输入时的坐标值之差。如果计算结果是负值,则帷幕向左移动,并且如果计算结果是正值时,则帷幕向右移动,并且还移除用于持久地支撑帷幕的挂钩。当移除挂钩时,提供了帷幕从屏幕消失的效果,并且释放锁定屏幕。前述锁定屏幕释放如图26A和图26B所示。
[0223]图26A和图26B示出了根据本公开实施例的电子设备中的锁定屏幕的释放。
[0224]参照图26A和图26B,帷幕消失的方向根据触摸点的起始点(即,先前点)和终止点(即,当前点)之间的相对关系而不同。在图26A的情况下,因为当前的触摸点2612位于先前的触摸点2611的右部,因此帷幕向右消失。在图26b的情况下,因为当前的触摸点2622位于先前的触摸点2621的左部,因此帷幕向左消失。可以使用伪代码来表达前述锁定屏幕释放,如下表1所示。
[0225]表1
[0226]
【权利要求】
1.一种操作电子设备的方法,所述方法包括: 在屏幕中的至少一个区域中设置虚拟物理场; 将要在所述至少一个区域中显示的用户界面Π对象映射到所述物理场中的至少一个虚拟物理对象; 将物理属性指派给所述至少一个虚拟物理对象; 通过使用物理引擎基于所述物理场和所述Π对象的所述物理属性来确定所述至少一个物理对象的状态,所述状态包括位置、形式、形状和颜色中的至少一个;以及根据所述至少一个虚拟物理对象的状态来显示所述UI对象。
2.根据权利要求1所述的方法,还包括: 根据用户输入和通过使用传感器检测到的环境改变中的至少一个,来改变所述虚拟物理场的特性和所述至少一个物理对象的属性值中的至少一个; 使用所述物理引擎来确定所述至少一个虚拟物理对象的状态;以及 根据所述至少一个虚拟物理对象的状态来显示所述UI对象。
3.根据权利要求1所述的方法,其中,所述至少一个区域的数量以及所述至少一个区域的范围根据要执行的应用而改变。
4.根据权利要求1所述的方法, 其中,沿需要所述Π对象的状态改变的至少一个轴,独立地设置所述物理场;以及沿需要所述UI对象的状态改变的至少一个轴,独立地确定所述至少一个虚拟物理对象的属性。·
5.根据权利要求1所述的方法,其中,所述物理场具有根据一个轴上的坐标而改变的属性值。
6.根据权利要求1所述的方法, 其中,所述物理场具有重力、浮力、电力、磁力、弹力、以及张力中的至少一个属性;以及指派给所述至少一个虚拟物理对象的属性包括以下各项中的至少一项:尺寸、密度、体积、形式、形状、颜色、弹性、粘度、应变、运动速度、运动向量、电力以及磁力。
7.根据权利要求1所述的方法,其中,所述Π对象包括在菜单屏幕中显示的图标。
8.根据权利要求7所述的方法, 其中,向映射到所述图标的所述至少一个虚拟物理对象指派的属性值确定所述图标的位置,以及 当所述图标移动时,所述属性值改变为与目的地点相对应的属性值。
9.根据权利要求7所述的方法, 其中,所述物理场包括浮力场和重力场,其中,在与所述浮力场相反的方向上施加所述重力场, 向映射到所述图标的至少一个虚拟物理对象指派的属性值包括与所述浮力场正交的横截面的面积以及与所述重力场的方向正交的区域的横截面积和密度,以及 映射到所述图标的所述至少一个虚拟物理对象位于由所述浮力场施加的第一力和由所述重力场施加的第二力处于平衡状态的点处。
10.根据权利要求1所述的方法,其中,所述Π对象包括指示符。
11.根据权利要求10所述的方法,其中,映射到所述指示符的至少一个虚拟物理对象包括包含整个指示符的一个物理对象或者包括具有不同的属性值并且位于所述指示符的两端的两个物理对象。
12.根据权利要求1所述的方法,其中,所述Π对象包括构成虚拟键盘的按钮。
13.根据权利要求12所述的方法, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的位置,以及 根据预定的重新布置命令来重新确定所述属性值。
14.根据权利要求13所述的方法,其中,所述重新布置命令包括定义用于按钮分布的按钮和晃动运动中的至少一个。
15.根据权利要求12所述的方法, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的尺寸,以及 所述属性值被改变,使得所述按钮的尺寸根据用户的输入尝试的次数逐渐改变。
16.根据权利要求1所述的方法,其中,所述Π对象包括用于发送和接收无线电信号的外部通信节点的信号强度指示图标。
17.根据权利要求16所述的方法, 其中,所述物 理场包括指向圆心的浮力, 向映射到所述图标的至少一个虚拟物理实体指派的属性值确定所述圆心与所述图标之间的距离,以及 所述属性值根据来自所述外部通信节点的信号强度而改变。
18.根据权利要求16所述的方法, 其中,向映射到所述图标的至少一个虚拟物理对象指派的属性值确定所述图标的尺寸,以及 所述属性值基于输入尝试的次数以及对由所述图标指示的所述外部通信节点的访问尝试的次数中的至少一个而改变。
19.根据权利要求1所述的方法,其中,所述UI对象包括当所述屏幕被锁定时覆盖主屏幕的Π对象。
20.根据权利要求19所述的方法,其中,映射到所述UI对象的至少一个虚拟物理对象具有软体的属性,并且由于由用户输入引起的与刚体的碰撞而被晃动或拉动,其中,所述碰撞是由于所述刚体的移动引起的。
21.—种电子设备,包括: 至少一个处理器,被配置为在屏幕中的至少一个区域中设置虚拟物理场,将要在所述至少一个区域中显示的UI对象映射到所述物理场中的至少一个虚拟物理对象,将物理属性指派给所述至少一个虚拟物理对象,通过使用物理引擎基于所述物理场和所述Π对象的所述物理属性来确定所述至少一个物理对象的状态;以及 显示单元,被配置为根据所述至少一个虚拟物理对象的状态来显示所述UI对象, 其中,所述状态包括位置、形式、形状和颜色中的至少一个。
22.根据权利要求21所述的电子设备, 其中,所述至少一个处理器根据用户输入和通过使用传感器检测到的环境改变中的至少一个来改变所述虚拟物理场的特性和所述至少一个物理对象的属性值中的至少一个,并且使用所述物理引擎来确定所述至少一个虚拟物理对象的状态,以及 所述显示单元根据所述至少一个虚拟物理对象的状态来显示所述Π对象。
23.根据权利要求21所述的电子设备,其中,所述至少一个区域的数量以及所述至少一个区域的范围根据要执行的应用而改变。
24.根据权利要求21所述的电子设备, 其中,沿需要所述Π对象的状态改变的至少一个轴,独立地设置所述物理场;以及 沿需要所述Π对象的状态改变的至少一个轴,独立地确定所述至少一个虚拟物理对象的属性。
25.根据权利要求21所述的电子设备,其中,所述物理场具有根据一个轴上的坐标而改变的属性值。
26.根据权利要求21所述的电子设备, 其中,所述物理场具有重力、浮力、电力、磁力、弹力以及张力中的至少一个属性;以及 指派给所述至少一个虚拟物理对象的属性包括以下各项中的至少一项:尺寸、密度、体积、形式、形状、颜色、弹性、粘度、应变、运动速度、运动向量、电力以及磁力。
27.根据权利要求21所述的电子设备,其中,所述Π对象包括在菜单屏幕中显示的图标。
28.根据权利要求27所·述的电子设备, 其中,向映射到所述图标的所述至少一个虚拟物理对象指派的属性值确定所述图标的位置,以及 当所述图标移动时,所述属性值改变为与目的地点相对应的属性值。
29.根据权利要求27所述的电子设备, 其中,所述物理场包括浮力场和重力场,其中,在与所述浮力场相反的方向上施加所述重力场, 向映射到所述图标的至少一个虚拟物理对象指派的属性值包括与所述浮力场正交的横截面的面积以及与所述重力场的方向正交的区域的横截面积和密度,以及 映射到所述图标的所述至少一个虚拟物理对象位于由所述浮力场施加的第一力和由所述重力场施加的第二力处于平衡状态的点处。
30.根据权利要求21所述的电子设备,其中,所述UI对象包括指示符。
31.根据权利要求30所述的电子设备,其中,映射到所述指示符的至少一个虚拟物理对象包括包含整个指示符的一个物理对象或者包括具有不同的属性值并且位于所述指示符的两端的两个物理对象。
32.根据权利要求21所述的电子设备,其中,所述UI对象包括构成虚拟键盘的按钮。
33.根据权利要求32所述的电子设备, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的位置,以及 根据预定的重新布置命令来重新确定所述属性值。
34.根据权利要求33所述的电子设备,其中,所述重新布置命令包括定义按钮分布的按钮和晃动运动中的至少一个。
35.根据权利要求32所述的电子设备, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的尺寸,以及 所述属性值被改变,使得所述按钮的尺寸根据用户的输入尝试的次数逐渐改变。
36.根据权利要求21所述的电子设备,其中,所述Π对象包括用于发送和接收无线电信号的外部通信节点的信号强度指示图标。
37.根据权利要求16所述的电子设备, 其中,所述物理场包括指向圆心的浮力, 向映射到所述图标的至少一个虚拟物理实体指派的属性值确定所述圆心与所述图标之间的距离,以及 所述属性值根据来自所述外部通信节点的信号强度而改变。
38.根据权利要求36所述的电子设备, 其中,向映射到所述图标的至少一个虚拟物理对象指派的属性值确定所述图标的尺寸,以及 所述属性值基于输入尝试的次数以及对由所述图标指示的所述外部通信节点的访问尝试的次数中的至少一个而改变。
39.根据权利要求21所述的电子设备,其中,所述UI对象包括当所述屏幕被锁定时覆盖主屏幕的Π对 象。
40.根据权利要求39所述的电子设备,其中,映射到所述UI对象的至少一个虚拟物理对象具有软体的属性,并且由于由用户输入引起的与刚体的碰撞而被晃动或拉动,其中,所述碰撞是由于所述刚体的移动引起的。
41.一种电子设备,包括: 至少一个处理器; 显示单元,被配置为在所述至少一个处理器的控制下显示视觉输出;以及 至少一个模块,存储在存储器中并且被配置为由所述至少一个处理器执行, 其中,所述模块包括用于执行以下操作的至少一个指令:在屏幕中的至少一个区域中设置虚拟物理场,将要在所述至少一个区域中显示的Π对象映射到所述物理场中的至少一个虚拟物理对象,将物理属性指派给所述至少一个虚拟物理对象,通过使用物理引擎基于所述物理场和所述Π对象的所述物理属性来确定所述至少一个物理对象的状态,以及根据所述至少一个虚拟物理对象的状态来显示所述UI对象。
42.根据权利要求41所述的电子设备,其中,所述模块包括用于执行以下操作的至少一个指令:根据用户输入和通过使用传感器检测到的环境改变中的至少一个来改变所述虚拟物理场的特性和所述至少一个物理对象的属性值中的至少一个,使用所述物理引擎来确定所述至少一个虚拟物理对象的状态,以及根据所述至少一个虚拟物理对象的状态来显示所述UI对象。
43.根据权利要求41所述的电子设备,其中,所述至少一个区域的数量以及所述至少一个区域的范围根据要执行的应用而改变。
44.根据权利要求41所述的电子设备, 其中,沿需要所述Π对象的状态改变的至少一个轴,独立地设置所述物理场;以及沿需要所述Π对象的状态改变的至少一个轴,独立地确定所述至少一个虚拟物理对象的属性。
45.根据权利要求41所述的电子设备,其中,所述物理场具有根据一个轴上的坐标而改变的属性值。
46.根据权利要求41所述的电子设备, 其中,所述物理场具有重力、浮力、电力、磁力、弹力以及张力中的至少一个属性;以及 指派给所述至少一个虚拟物理对象的属性包括以下各项中的至少一项:尺寸、密度、体积、形式、形状、颜色、弹性、粘度、应变、运动速度、运动向量、电力以及磁力。
47.根据权利要求41所述的电子设备,其中,所述Π对象包括在菜单屏幕中显示的图标。
48.根据权利要求47所述的电子设备, 其中,向映射到所述图标的所述至少一个虚拟物理对象指派的属性值确定所述图标的位置,以及 当所述图标移动时,所述属性值改变为与目的地点相对应的属性值。
49.根据权利要求47所述的电子设备, 其中,所述物理场包括浮力场和重力场,其中,在与所述浮力场相反的方向上施加所述重力场, 向映射到所述图标的至少一·个虚拟物理对象指派的属性值包括与所述浮力场正交的横截面的面积以及与所述重力场的方向正交的区域的横截面积和密度,以及 映射到所述图标的所述至少一个虚拟物理对象位于由所述浮力场施加的第一力和由所述重力场施加的第二力处于平衡状态的点处。
50.根据权利要求41所述的电子设备,其中,所述UI对象包括指示符。
51.根据权利要求50所述的电子设备,其中,映射到所述指示符的至少一个虚拟物理对象包括包含整个指示符的一个物理对象或者包括具有不同的属性值并且位于所述指示符的两端的两个物理对象。
52.根据权利要求41所述的电子设备,其中,所述Π对象包括构成虚拟键盘的按钮。
53.根据权利要求52所述的电子设备, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的位置,以及 根据预定的重新布置命令来重新确定所述属性值。
54.根据权利要求53所述的电子设备,其中,所述重新布置命令包括定义用于按钮分布的按钮和晃动运动中的至少一个。
55.根据权利要求52所述的电子设备, 其中,向映射到所述按钮的至少一个虚拟物理对象指派的属性值确定所述按钮的尺寸,以及 所述属性值被改变,使得所述按钮的尺寸根据用户的输入尝试的次数逐渐改变。
56.根据权利要求41所述的电子设备,其中,所述Π对象包括用于发送和接收无线电信号的外部通信节点的信号强度指示图标。
57.根据权利要求56所述的电子设备,其中,所述物理场包括指向圆心的浮力, 向映射到所述图标的至少一个虚拟物理实体指派的属性值确定所述圆心与所述图标之间的距离,以及 所述属性值根据来自所述外部通信节点的信号强度而改变。
58.根据权利要求56所述的电子设备, 其中,向映射到所述图标的至少一个虚拟物理对象指派的属性值确定所述图标的尺寸,以及 所述属性值基于输入尝试的次数以及对由所述图标指示的所述外部通信节点的访问尝试的次数中的至少一个而改变。
59.根据权利要求41所述的电子设备,其中,所述UI对象包括当所述屏幕被锁定时覆盖主屏幕的Π对象。
60.根据权利要求59所述的电子设备,其中,映射到所述UI对象的至少一个虚拟物理对象具有软体的属性,并且由于由用户输入引起的与刚体的碰撞而被晃动或拉动,其中,所述碰撞是由于 所述刚体的移动引起的。
【文档编号】G06F3/0488GK103853423SQ201310625294
【公开日】2014年6月11日 申请日期:2013年11月28日 优先权日:2012年11月28日
【发明者】安源翊, 徐晳源, 郑俸守, 崔斗洵 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1