CN105190508A - 图形用户界面中的导航速度和获取容易度之间的权衡的用户控制 - Google Patents
图形用户界面中的导航速度和获取容易度之间的权衡的用户控制 Download PDFInfo
- Publication number
- CN105190508A CN105190508A CN201380073371.6A CN201380073371A CN105190508A CN 105190508 A CN105190508 A CN 105190508A CN 201380073371 A CN201380073371 A CN 201380073371A CN 105190508 A CN105190508 A CN 105190508A
- Authority
- CN
- China
- Prior art keywords
- control
- space
- display
- pointer
- point
- 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
- 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/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- 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
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- 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/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- 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/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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/04886—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 by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了对图形用户界面的布局进行动态用户控制的方法。所述方法包括如下步骤:接收将该界面中的控制区域分配给多个虚拟对象而不发生对象重叠的方式的描述,接收用户点的位置,基于用户点位置将来自至少一个对象的控制区域的一部分重新分配给不同的对象,基于对于所述对象而对控制区域的当前分配,将该界面中的显示区域的一部分分配给至少一个对象,但控制-显示解耦,以及足够快速地重复前三个步骤,使得用户将感知基本连续的变化。
Description
技术领域
本发明涉及一种图形用户界面(graphicaluserinterface,GUI)上的人机交互(human-computerinteraction,HCI)方法。
背景技术
发明人知道,图形用户界面(GUI)作为用于人与计算机以及其它设备进行交互的范例是公认的。在跟踪人体运动的某些方面并将其解释为对计算机的控制时,图形用户界面需要将计算机变化状态的已选择的部分可视地传送给人类用户。
已使用称为Fitts定律的约束来广泛研究对人体运动的速度、精度和幅度的限制。在HCI领域中,对人类完成在已知距离A上朝向已知尺寸为W的目标的运动所需要的时间的限制较低。Fitts定律的主要观点在于,比例A/W是难度指数的唯一决定因素,其反过来预测最小运动时间。
即使在Fitts认为的简单的任务(往复轻击、盘转移和针转移)中,必须针对这些任务假设额外的几何约束以使:W必须小于A/2,否则运动是没必要的,因为已经到达目标。
因此,人的能力不是对这种类型的问题的唯一的约束,特别是当呈现大量的目标用于用户选择(如在典型的GUI上实现的)时。随着许多感兴趣的对象竞争被选择,几何约束的重要性会增强和增加。几何约束的目的是为了避免模棱两可,因此不允许对象的重叠。在对象尺寸相同的简单情况下,公共尺寸W必须小于空间上最近的一对相邻物之间的距离的一半,从而效仿Fitts的几何约束。
任何对象的指向优势可通过增大其尺寸或使其离用户的指针的当前位置更近来增大。然而,由于上述几何约束,因此当许多对象的指向优势必须增大时,这两个策略会冲突。如果对象在空间上平铺而不重叠,则尺寸的任何增大都必须通过将对象移动得更远来补偿。
对象尺寸和对象间的距离之间的反比关系是相当普遍的,并且需要在导航速度和获取容易度之间进行权衡。可用于容纳GUI对象的空间总是受到使用的硬件或人类视觉和运动的最大程度的限制。
人机交互(HCI)的功能物理子空间
HCI期间的视觉传送通过从显示空间到视觉空间中的光学投影发生,显示空间功能上通过计算机显示设备产生光的能力来创建,视觉空间功能上通过用户的眼睛的看的能力来创建。感光视网膜是一个表面,其上投影的视觉空间的图像是二维的。因此,可被一只眼睛检测到的视觉空间中的点的两个空间坐标可被解释为入射角,而距离需要通过其它方法来确定。每只眼睛都有自身的视觉空间,但一个人的两只眼睛的视觉空间通常基本上是重叠的。
体育场馆、商店橱窗和戏剧舞台本身是三维显示空间,但是像视网膜一样,计算机显示设备基于表面。三维显示空间的计算机合成可通过使用两个不同但协调的显示表面来实现,一个显示表面针对两只眼睛中的每一只。三维认知视觉空间的心理合成是由人脑以某种方式来完成的。视觉对象大多数被认为在视觉空间中的“那里”,而并不连接到眼睛。
HCI期间对人体运动的跟踪发生在运动空间和控制空间之间的交集中,运动空间功能上通过用户的移动物理事物的能力来创建,控制空间功能上通过计算机输入设备的跟踪范围或移动的自由来创建。这两个空间主要是三维的,但是该动作通常在包围该输入设备的弯曲的接触面或控制面上被转移。此外,该设备通常被有意地以如下方式限制:控制空间仅在一个或两个维度中被减小到有限的程度。动作大多数被认为是“正好”发生在运动空间中。
上面提到的四个私有空间中的每一个私有空间都是用户、计算机和其环境中的事物共享的相同公共物理空间的有界且变化的子空间。私有空间可在不同时间有不同程度的重叠。HCI严格需要的两个空间交集已经在上面提到,但其它空间交集是可选的。例如,在人这一侧,我们可以看到够不着的事物或移动不可见的事物。在计算机这一侧,显示空间和控制空间可分离(例如屏幕和鼠标)、可部分重叠(例如分屏)或可完全重叠(例如触摸屏)。
运动和视觉优势
健康的人体具有人体工程学的研究者感兴趣的非常具体且有限的运动能力。这些限制影响运动的可能的速度和程度、可施加的力的量、可执行的重复次数、控制的精度等。工具的设计者必须使其控制面和方法适应人类能力,使得不仅实现有效且直观的使用,还降低出错的风险且抵抗疲劳。
通过改变所需的运动的某方面或控制面的属性,工具可针对特定的任务为其用户提供运动优势。例如杠杆在切削工具中被广泛使用,以提供降低所需力的机械运动优势。在这种必须扩大与所提供的杠杆作用的量成比例的运动程度的情况下,任何这样的优势都是有代价的。此外,视为运动优势的优势取决于用户和任务的细节。在眼部外科手术中,杠杆所需的运动的扩大程度可以正是性能上较高的精度所需的,并且在这种情况下精度比力更存在问题。运动优势可以是固定的(例如剪刀)、可调的(例如自行车齿轮)或可变的(例如无级变速器)。
人类感知的局限性对于工具的设计和使用也很重要。通过改变有关工具及其使用可见的事物,视觉优势可针对特定的任务被提供。光学透镜在许多任务中被使用,以提供放大或更好聚焦的视觉优势。同样地,该优势是有代价的,在放大的情况下,视野缩小。此外,工具可提供使其功能可供性可见的视觉优势。
运动和视觉优势往往是密切相关的,它们可通过反馈影响彼此。但它们并不相同,它们应该被独立看待。使用放大镜放大的钟表匠不从中获得直接的运动优势,这是因为其延伸了显示空间而非控制空间。当然间接地,较好的视觉反馈可提高性能,但仅限于达到如下程度:关闭控制回路实现已经在钟表匠的运动能力内的较精确的运动。
可用功能空间的动态分配
我们假设,计算机没有对私人运动空间和视觉空间的直接控制,私人运动空间和视觉空间可由其拥有者随意转移和定向(如果不扩展)。私人计算机控制空间和显示空间因此是仅有的功能空间,通过创建运动和视觉优势,***设计师可以针对交互优化上述功能空间的使用。
将部分可用显示空间分配给计算机显示元件(赋予视觉优势),以及将部分可用控制空间分配给计算机控制功能(赋予运动优势),是HCI设计中重要的且经常性的问题。两个空间的可用程度是有限的,而在许多设备上可访问或可创建的内容的量如此之大以至于几乎是无限的。因此,穷尽的、固定的空间分配是不可能的,分配必须是动态的:离散可调的或者连续可变的。
许多离散的方式和连续的方式已经被发明,以在两个维度中进行线性动态计算机空间分配,包括虚拟分页、滚动、缩放、平移和旋转。非线性空间分配(例如失真)也已经被使用。虚拟三维空间的导航也相当于线性方法,并且在三个维度中也可能存在非线性分配。
解决动态空间分配问题的一种不同的途径基于分层方法。在两个维度中,其包括可递归显示和导航的潜在重叠窗口的使用。用于大的分层数据集的其它遍历方法包括环树、锥树、梁树、植物树和双曲浏览。
C-D函数
动态空间分配方法通常被设计成以完全相同的方式改变显示空间和控制空间的交互使用,从而随着时间的推移同步修改它们的分配。空间之间的紧密协调对于用户保持连贯的心理图片以及对正在进行的交互的掌握来说通常是足够的。这种计算机控制和显示之间的人有经验的连接是计算机在将输入转换到输出时进行的潜在非常复杂的处理的结果。输入/输出关系的交互方面通常由控制-显示或C-D函数测量。它类似于机械杠杆作用且在对像示波器那样简单的设备的描述中是有用的,其中C-D增益或比例是离散可调的放大因子。
不知道到底什么构成良好的或最优的C-D函数。很清楚,它依赖于用户,且也很可能依赖于任务。比例性在许多情况下是足够的,但它是必要的吗?该函数应该被约束为控制空间和显示空间之间的同构吗?用户可以容忍多少延迟(>50毫秒)?C-D函数可以随时间变化吗?不连续性是否总是冲突?早期的观点是,C-D函数必须简单以不让用户困惑,但事实证明,用户可以容忍和受益于大量的非线性和滞后。
动态空间分配和设计良好的C-D函数是相关的,它们可能只是针对同一问题的两个角度。
控制与显示的连接与分离
GUI的指针和图标是计算机的二维显示空间中的所有对象。指针对象是用户识别显示空间中的单个点(即指针位置或用户点)的视觉辅助。它意味着用户的视觉焦点,但它也代表了动作在GUI的简化世界中的运动轨迹,其中动作由单个点控制。例如,图标选择的GUI行为被设置为依赖于显示空间中的被设置得明显的关系,即,在点击时刻包含指针位置的那个图标的区域。设置依赖性和设置明显性都由计算机处理来实现,它们可被视为一个复杂的C-D函数的不同方面。
指针位置是显示空间中GUI的控制和显示操作最紧密耦合的点。通过改变C-D函数,这种耦合在其它点处可被放松,优选地不引起用户和计算机之间的灾难性的断开连接。因此,我们并行考虑计算机控制空间和显示空间的分离的可能性,以及用户运动优势和视觉优势的分离。前一种分离将被称为控制-显示解耦。
动态控制-显示解耦可通过例如将失真应用于显示并使失真随着用户点移动来实现。从用户的角度看,动态控制-显示解耦可以采用以下方式来检测。即使在某一时刻可看见显示器上的对象包括某个特定点,但如果将用户点移动到那个点(没有任何点击或拖动),则在用户点到达那个点的时刻,该对象不再包含问题点。动态控制-显示解耦的应用的例子可以在MacOSDock的动画版本中找到。
关于显示空间中的对象的直观思考可能会对交互产生误导。当对象的尺寸在显示空间中增大时,很容易假定也有更多的控制空间可用于操控该对象。我们看到,当通过放大镜观看实物时,这甚至是不真实的。相关人类运动发生在不变的控制空间中,而不是在放大的显示空间中。但在HCI的情况下可能更糟,因为C-D函数可采用几乎任何因果形式。这两个空间仅通过输入设备和输出设备的相对物理布置以及一些计算机处理来连接。空间分配中的协调在虚拟世界中是合成的,并不像在(不失真的)现实世界中那样是自动的。
动画版MacOSdock从非线性失真中获得运动优势的潜在的令人费解的失败可以在这些方面理解到。任务是从固定长度的条上的许多图标中选择一个图标,以及方法包括扩大离指针最近的图标的显示尺寸,同时减小进一步远离指针的图标的尺寸,以腾出空间。它是对显示空间的一维鱼眼失真的应用,其中失真函数集中在指针位置并随着指针四处移动。这为用户创造了不断变化的视觉优势,但没有直接的运动优势。该方法与在显示空间上使用放大镜是类似的,同时在不变的控制空间中进行动作。
指针位置本身并不受失真的影响,因为指针位置总是在失真函数的固定点,即使它移动。显示空间从而保持在焦点处不失真,因此与指针位置重叠的图标在该点处也不失真。因此失真从不改变指针和运动轨迹处的图标之间的决定性的空间关系,这对运动优势而言是唯一的一点。因此,有可能存在动态控制-显示解耦而没有任何运动优势。
这仍然是真实的,即使由于改变用户输入(无论是否响应于视觉反馈)使得图标区域和指针位置都可不断变化。动作轨迹和失真的变化是相关的,因为这两者通过相同的指针位置来确定,但这并不意味着任何一种方式的因果关系。
很容易定义替换指针的失真函数。然而,如果该指针被替换而焦点和动作轨迹之间的联系保持不变,则将会导致正反馈和不稳定。用户控制感可能会丢失,而且不清楚在该方式下是否可获得任何的运动优势。另一方面,所提到的联系似乎对保持连贯的交互(至少在GUI类型中)是必不可少的。
产生HCI运动优势的现有技术
将更多控制空间分配给计算机控制函数,在使用该函数时给用户带来了某种运动优势。例如,在控制空间中设置较大的按钮可使其选择更快且更容易。增加的空间通常需要与函数的当前控制空间是连续的,以使有意义。利用有限的控制空间,增加的空间必须是以前未被分配的或远离另一个函数。线性方法,如耦合的控制空间和显示空间的缩放和平移,可以是针对在显示器上保留或新出现的对象获得控制空间的增大的最简单且最直观的方式。然而,把控制空间和显示空间分离或使其可分离,开辟了通过控制-显示解耦获得运动优势的新方式。
起初,处理显示和控制的解耦可能很难,但它提供了做不可能的事情的机会。我们将调查产生运动优势的现有状态,然后提出新的改进方法。
各种类型的运动优势已经被获得,其中控制空间和显示空间被解耦,并且它们都似乎涉及某种记忆或滞后。现有技术的当前状态局限于以下类型:(i)依赖时间的非线性C-D函数,例如基于速度的指针加速、基于在控制空间中的行进距离的指针加速、或基于运动开始以来经过的时间的指针加速;(ii)语义指向,其包括基于来自显示空间的计算机内部反馈以离散方式适应C-D函数,指示每次指针已越过两个区域(其含义在某种程度上是不同的)之间的边界;(iii)对象指向,其将未分配给任何对象的显示空间的区域作为该指针跳过的对象,而不需要相应的控制运动;(iv)对MacOSdock的改进,其中进入条中的光标的运动方向用来确定常规鱼眼失真的焦点,该失真随后保持固定一秒左右,之后运动优势再次消逝。
已经研究了许多方法以进行重定向运动优势的尺寸–距离权衡,或使用时间以使相同的空间服务不同的对象。这些中最直接的是滚动变化,其中尺寸保持不变,且在一侧不见的对象被在另一侧获得的对象替换。分页可被看作是一种离散的滚动方式。在缩放过程中,单个放大因数被应用在作为锚的焦点周围,以改变尺寸,但随着它们移动离开,丢失边缘上的对象。这些是线性的选择。
非线性策略被称为失真或鱼眼视图,其中可变的放大(和压缩)用来进行权衡。然而,如在AppleDock中可以看到的,简单地提供视觉放大并不等同于较大的选择容易度。通过失真视图的导航被称为焦点瞄准,并且它呈现了由于移动焦点导致的对象的明显运动在焦点处达到最大的难度,在焦点处放大是最大的。这是另一种表象,其中出现了尺寸-距离权衡。
最近,研究了方法以交互式控制该权衡,如在称为正交缩放滚动的技术中和依赖于速度的自动缩放(speed-dependentauto-zoom,SDAZ)中。这些方法提高了交互的速度和容易度。
因此,我们发现了本领域中以下尺寸-距离权衡的方法:
·实现控制-显示解耦的失真方法,但不提供指向或运动优势,因为只有显示是失真的(MacOSDock,动画版)。
·基于平移和缩放的线性变换、使用各种类型的控制的方法,其提供指向优势的转移(滚动、分页、缩放、空间遍历,例如搅拌(dasher))和可变量的指向优势(正交缩放滚动(OrthoZoomScroller)、缩放滑动(Zoomslider))。这些方法不包括控制-显示解耦。
·速度控制(依赖于速度的自动缩放)或时间控制(thweel)的失真方法。
但似乎没有方法提供以下所有:
·依赖位置的控制
·在直接用户控制下的可变指向优势
·基于失真、具有控制-显示解耦的GUI的场景。
这些方法的潜在优势包括提高的交互速度和效率、同时与大量对象的交互,以及提高的用户满意度。
因此,在本领域中,存在基于失真的图形用户界面中的导航速度和获取容易度之间的权衡的依赖位置的控制方法的需求。本发明解决了对GUI的布局提供用户动态控制的需求。
发明内容
根据本发明,提供了一种对图形用户界面的布局进行动态用户控制的方法,该方法包括如下步骤:
接收将该界面中的控制区域分配给多个虚拟对象而不发生对象重叠的方式的描述;
接收用户点的位置;
基于用户点位置,将来自至少一个对象的控制区域的一部分重新分配给不同的对象;
基于对于所述对象而对控制区域的当前分配,将该界面中的显示区域的一部分分配给至少一个对象,但控制-显示解耦;以及
足够快速地重复前三个步骤,使得用户将感知基本上连续的变化。
虚拟对象可以被理解为代表一个或多个控制功能。
将理解,尽管对控制区域的增量重新分配在每次方法的重复期间可以是线性的,但重复的效果仍然可以具有非线性的结果。在重新分配导致离指向对象近的对象的面积较大的情况下,其导致更容易选择那些对象,但这也意味着较大的距离和因此导航至远处的对象的降低的速度。这说明对于选择容易度的运动优势与对于导航速度的运动优势逆相关。
因此,在显示空间和独立的控制空间可失真的设置情况下,该方法提供了对选择容易度和导航速度之间的权衡的用户动态位置控制。控制失真和显示失真之间的解耦的程度受到用户感知交互过程和保持控制的能力的限制。
在重新分配控制区域的一部分的步骤中,该方法可包括使用控制算法和/或探试程序来产生在控制区域中的对象之间的重新分配和指向或导航。
在分配显示区域的一部分的步骤中,该方法可采用显示算法和/或探试程序,其可包括在显示器上画出对象的图形表示。
虽然针对至少有一个对象的任何动态控制-显示解耦对于该方法来说是足够的,但是强解耦是优选的,特别是针对那些具有远离用户点的控制区域分配的对象。
将理解,重复该方法中所指明的三个步骤导致交互循环(用户可以以基本连续的方式控制)的产生。对于被认为是基本连续的变化,重复率必须是每秒约20次或优选地更快。
如果该方法包括使用控制算法和/或探试程序来产生在控制区域中的对象之间的重新分配和指向或导航,则该控制算法和/或探试程序可通过以下方式来建立:
·对控制区域的所述一部分的重新分配由用户点的一个位置坐标直接或间接地控制;
·指向或导航由用户点的另一个优选正交的位置坐标直接或间接地控制;
·采用某种形式的存储器,以使控制算法和/或探试程序直接或间接地依赖于用户点的位置坐标的过去值;
·对控制区域的重新分配可由位置和/或时间的失真函数表征。
在这种情况下,该方法使用优选彼此正交的坐标。这样做的好处是,控制区域中的导航和控制区域的重新分配的这两种效果可以独立地被控制。控制算法可优选使用极坐标,即使用指向对象的径向位置坐标来控制控制区域的重新分配以及使用横向(角)坐标来控制在控制空间中的导航。这两个坐标确实是正交的。
在本发明的一些实施方式中,控制区域的重新分配被视为控制空间中的对象的位置坐标的变化。然后可将任何特定对象的下一个位置计算作为下列项的函数:指针位置、锚点或线、对象的先前位置,以及对于两个不同的实施方式额外地,
用户点的先前位置;或
可分配给每个对象的控制权重,其中控制权重的当前值反过来取决于过去的控制权重值和用户点的当前位置。
该方法然后可包括使用控制权重算法和/或探试程序,以根据指针对象位置相对于参考点和/或相对于每个对象控制位置的径向距离来确定每个对象的新的控制权重;
使用控制空间扇区算法和/或探试程序,以根据每个对象的控制权重来确定每个对象的新的唯一的控制空间扇区;
使用控制位置算法和/或探试程序,以根据以下项确定每个对象的新的对象控制位置:
-相对于参考线的指针对象位置角或
-离指针对象最近的对象的当前对象控制位置,和/或
-每个对象的控制权重;以及
将新的对象控制位置映射到新的对象显示空间位置,并更新对象表示的显示。
将理解,当在计算中使用先前值时,该使用构成记忆效应或滞后效应。
将理解,当用户控制导航速度和选择容易度之间的权衡时,这种控制实际上构成元控制,在这个意义上,用户从而控制GUI的布局且因此确定该***在未来将被控制得有多敏感。
将理解,本发明的一些实施方式可以以用户不期望的方式进行响应。重要的是,提供几乎连续的反馈给用户,以便支持直接操纵和控制(其支持交互功能)的错觉。
将理解,本发明提供了用于反馈的许多途径,如果正反馈可由用户输入引起,则可导致***的不稳定。本发明的实施方式的设计者负责选择将使不稳定风险最小化的参数。
将理解,针对每个对象的用于确定新的控制权重的算法和/或探试程序以及用于确定新的对象控制位置和唯一的控制空间扇区的算法和/或探试程序可以是一个算法,并且这些步骤可合并成一个步骤。此外,将理解,在算法或探试程序中待使用的一些值可直接或间接地被确定或计算。
将进一步理解,用于确定新的对象位置控制的算法和/或探试程序可以使用相对于参考线的当前指针对象位置角而不是指针对象位置的当前径向距离,在这种情况下,用于确定新的对象控制位置和唯一的控制空间扇区的算法和/或探试程序将使用指针对象位置的当前径向距离而不是该角。
将进一步理解,隐含地,一旦对象指针移动参考点,则到每个对象的径向距离将不同,并且每个对象的控制权重且因此每个相应控制空间扇区的尺寸将以相同的关系不同。将理解,该特征进一步将本发明与缩放和平移类应用相区分。
每个对象可在控制空间中被分别定位在凸空间的边界上,以针对与计算机输入设备有关的每个对象提供控制空间的唯一位置和唯一段。
凸空间的边界可以是有限的,例如直线或圆弧段。
如果该方法包括使用算法和/或探试程序来确定每个对象的新的控制位置和唯一的控制空间扇区,则该方法可使用当前对象位置角作为用于锚定对象控制位置和扇区的变化的固定线。
可替选地,如果该方法包括使用算法和/或探试程序来确定每个对象的新的控制位置和唯一的控制空间扇区,则该方法可使用离指针对象位置最近的对象的当前对象控制位置作为用于锚定对象控制位置和扇区的变化的固定线。
将理解,以下形成本发明的一部分:对象位置的径向距离和相对于参考线的指针对象位置角是径向坐标和横向坐标,并且可以转化为其它坐标,例如直角坐标。
用于确定新的控制权重的算法和/或探试程序可以优选地基于非线性函数和/或探试程序,其优选地为指数的。
算法和/或探试程序的刷新速度可被选择成将对象位置的变化显示成对用户来说看起来是连续的。
用于确定新的控制权重的算法可优选地基于需要避免正反馈的绝对指针位置。
该方法可包括针对在对象的控制空间中未分配控制空间扇区的对象设置最大控制权重的步骤。将理解,有利地,更多的控制空间然后可被分配给具有更高控制权重的剩余对象。
将控制权重分配给对象的步骤和/或确定对象的新的控制权重的步骤可包括:
·独立地对于对象分配和更新对应的权重;
·基于存储器中的对象的结构的函数,对于对象分配和更新对应的权重;以及
·基于控制空间本身的某些属性,对于对象分配和更新值。
该方法可包括使用动作算法和/或探试程序来确定待执行的动作(如果有的话)的步骤。
如果已利用动作算法和/或探试程序确定出待执行的动作,则该方法可包括执行该动作的步骤。
在将对象控制位置映射到显示空间中的显示位置并显示对象的与其显示位置相关的表示时,可将一个或多个对象显示在远离其显示空间位置且因此远离其控制空间位置的位置处。
该方法可包括选择对象或允许对象被选择的步骤,以提供类似于根据已知的GUI选择实践的选择的结果。该方法然后可包括在控制空间中建立阈值的步骤。当与阈值相交时,相应的对象被选择。
该方法可以与已知的用于对象的导航和/或选择的方法相结合。这些已知的方法可以优选地是响应于光标运动的变化而重新分配显示空间的方法。
本文中所描述的方法中,控制空间可以是三维空间。
该方法可包括跟踪指针对象返回到控制空间中的指针参考点的步骤,以能够反转用户的输入动作。
该方法可包括感测控制空间中的指针参考点处或指针参考点附近的指针对象,以将该对象重置到其在显示空间中的初始位置。
在触敏屏的情况下,参考点位置可依赖于用户的首个触摸点。
用于确定每个对象的新的控制权重的算法和/或探试程序可包括遗忘函数,从而对象的控制权重可作为时间或导航距离的函数而增大或减小。
该方法可包括如下步骤:在指针对象位置超出控制空间中的范围后或如果指针对象不能被跟踪,例如当手指抬高离开触敏屏时,将触敏屏上的首次触摸解释为典型的GUI对象选择。
与每个对象的控制位置相关的唯一的空间控制扇区可伸展和延伸超过凸空间的边界,从而从凸空间的内部接近边界上的点变成从凸空间的外部对称反射地接近。
用于确定每个对象的新的对象控制位置的算法和/或探试程序以位置将保持在凸空间的边界上的方式平移那些位置,其包括接近指针位置的位置。
具体实施方式
现在参照附图通过四个示例来描述本发明。
示例1:递归递减具有正剩余分配的最远对象的控制空间分配
在本发明的该第一示例中,对图形用户界面的布局进行动态用户控制的方法包括接收对初始控制空间分配的描述的步骤。当初始化完成时,开始且自始至终继续用户点位置的接收。用户点的形成轨迹经受至少两种不同类型的解释,从而分别影响控制和显示。
本发明使用本领域公知的触摸屏设备(例如平板电脑)来说明,其中输入硬件和输出硬件以如下这样的方式相互配置:控制空间和显示空间物理上对齐且合并到单个平面中。这样的配置消除了如在鼠标控制的情况下存在的间接性,它不是本发明的必要部分。虽然触摸屏上的控制空间和显示空间对用户来说可能是无法区分的,但是它们在功能上是不同的,因此,为了清晰起见,它们在附图中分开显示。
设置场景
参照图E1-3,处理器28请求和接收来自数据设备90的数据,包括当前相关数据对象的数量N和各种详细说明。这些数据对象由数据设备90表示并设置成可用于交互,并且可以是与数据(如文件名、来源和创建时间)相关联的文本、声音或图像文件。在本示例中,N的值是24,但该数量是可调的以适应数据,使用这种方法与200个对象进行交互并不罕见。
在计算机存储器18中,处理器28建立虚拟数据对象58.1、58.2、……、58.24,其对应于被数据设备90设置成可用的数据对象。每个对象58.i(i的范围为从1到N)是具有属性的某类实例,属性可包括对象内容、名称、来源和创建时间以及显示图像、显示位置、显示尺寸、控制位置和控制权重。这些属性中的一些属性来自于数据设备90,而其它属性由处理器28分配。对象58.i是为了方便而重新排列或索引的,例如根据文件名按字母顺序排列或根据创建时间顺序排列。
每个对象58.i的控制权重属性Ci是非负数,如权利要求所解释的,相对于所有的N个对象,该对象的控制函数集中在控制空间的可用区域上。本示例中的控制权重构成***中的记忆,这对于适应与每个对象相关的指向优势是必不可少的。每个对象的控制权重Ci被初始化为某一个值,在本示例中,对于所有对象,控制权重Ci都取值为1。可替选地,对于每个对象58.i的初始控制权重Ci可基于数据设备提供的先验信息来计算。
归一化控制权重值ci,其中
用来以如下这样的方式将控制空间10中的角度范围Δθi(ci)的尺寸分配给每个对象58.i:所有的N个对象的控制空间角度范围的总和等于2π弧度的整个圆:∑Δθi=2π。
参考点或原点60被建立在控制空间10中,在本示例中靠近该空间的中心,还有通过原点60的参考线600。以原点60为中心、方便半径为R的圆70也被建立。以参考线600处的第一对象为开始,在本示例中选择在12点钟处,顺时针行进,控制空间的楔形段80.i被分配给每个对象58.i,段80.i的角度范围等于如上计算的Δθi。段80.i的尺寸因此将与控制权重Ci成比例。在图E1-3中,明确标记了三个段80.8、80.9和80.21,但可以数到24个段。
公式(1)中的控制权重ci的归一化,结合所描述的控制空间分配方法,保证了任何两个段80.m和80.n(假设m和n不同)之间不会发生重叠,且N个段80.i将一起完全覆盖圆70内的圆盘。它遵循从原点60开始的每个方向通过其段80.i与单个唯一可识别的对象58.i相关联。圆70部分包围每个具有圆弧的段80.i,且每个这样的圆弧的中点被建立作为关联对象58.i在控制空间中的位置50.i。
处理器28建立从控制空间10到显示空间14的线性映射L(即CD函数),以如下这样的方式定义:控制空间10中的圆70被映射到显示空间14中的圆74,且两个圆70和74在触摸屏设备的表面上占据完全相同的位置。处理器28使用映射L,以在显示空间14中建立参考点64作为控制空间10中的原点60的图像。每个对象的控制位置50.i也被用作映射L的参数,以在显示空间14中建立位置54.i。
如果所有对象58.i的控制权重Ci被初始化为相同的值,如在本示例中所实现的,则控制位置50.i将均匀分布在圆70周围。由于映射L的线性,显示位置54.i也将均匀分布在圆74周围。然而,相等的权重不是必要的,可采用对象的控制权重的任何初始分布。通常,控制位置50.i所在的曲线70也不需要是圆形的,但必须是凸空间的边界以保持对象位置的定向唯一性。
在本示例中,所有对象58.i的显示尺寸属性都被初始化为相同的值,被计算成适合圆74的外周周围的对象的数目。每个对象58.i的视觉表示然后通过在显示空间14中的相应显示位置54.i周围建立像素对象84.i来完成。像素对象84.i可基于通用的图像,或基于对象58.i的显示图像属性。像素对象84.i可以采用任何方便的形状,但在本示例中仅以圆示出。
输入和反馈输出
该方法还包括接收用户点(在本示例中为人的手指40)相对于触敏的控制空间10中的原点60的位置的步骤。从原点60到指向对象40的当前位置的距离Rp和从参考线600到将原点60连接到指向对象40的线按顺时针测量的角度θp被确定,且它们一起构成控制空间中的指向对象的正交极坐标(Rp,θp)。
交互处理器28还建立显示空间14中的指针44,其对应于控制空间10中的指向对象40。它使用线性映射L和指向对象位置作为其自变数,来计算和不断更新指针44相对于参考点64的位置。
指向对象40的轨迹可以建立在存储器18中,表示为指向对象位置的序列和每个位置被确定的时间。
参照原点60的控制空间坐标将被称为是绝对的,而相对于指向对象40的变化位置(Rp,θp)的坐标将被称为是相对的。一旦对指向对象40的跟踪已经开始,则所有对象控制位置50.i的相对距离Rip和角度θip被计算并不断更新。
在下面所描述的方式中,控制权重Ci的新值使用基于绝对距离Rp(其为指向对象的坐标之一)的控制权重函数或算法来计算。权重Ci的这个变化触发对每个对象的控制空间角度范围Δθi的尺寸的更新,从而触发对对象段80.i的尺寸的更新。
从相对的角度来看,对对象段80.i的尺寸的改变可被解释为控制空间10的失真,其中依赖位置且随时间改变的失真函数可解释段尺寸的所有改变。在这个意义上,用户可通过指向对象40的径向运动来控制控制空间10的失真。
每一个新段的更新的布置取决于绝对角度θp。如上所指出的,当前角度θp可通过其圆形段80.n总是与被称为焦点对象的唯一对象(即58.n)相关联。为了更新所有对象段80.i的布置,控制段80.n内的角度θp所指定的线保持固定为锚点,并且焦点对象的段80.n的尺寸首先在该线的周围被调整为其新的范围Δθn。然后段80.n的相邻段80.(n-1)和80.(n+1)的尺寸被调整和放置,使得段之间没有角间隙。在两个方向上对相邻段以这种方式进行布置,直到所有段的尺寸再次与控制权重Ci的新的相应值成比例。
可替选地,在其它段被缩放和放置在其周围之前,焦点对象的当前控制位置50.n可被保持固定为锚点,并且段80.n的尺寸可在该线的周围被调整为其新的范围Δθn。
焦点对象的改变由角度θp来确定,角度θp是指向对象的另一个坐标且与Rp正交。因此,用户能够通过指向对象40的径向运动而独立于失真之外控制在控制空间10中的对象之间的指向或导航。
上述控制空间中的变化通过线性映射L被传播至显示空间14,从而导致像素对象84.i的重定位。在重叠的情况下,焦点对象84.n被显示在视觉栈的顶部。基于相对距离Rip的另一函数或算法可用来独立地调整像素对象84.i的尺寸,通常增大离指针44较近的对象的尺寸以及减小离指针44较远的对象的尺寸。
如果被正确地协调,则控制空间和显示空间中的变化可导致较近对象的起初部分重叠的视觉表示被移开直到不再重叠,除了在控制空间中更容易选择外,在显示空间中更清晰可见。
两个极端的例子说明了导航速度和获取容易度之间的反比关系。对于接近于零的Rp的值,理论上可实现非常高的导航速度,因为围绕原点遍历最小圆将允许移动通过所有可能的角度。然而关于任何对象的获取容易度却很低,因为对象在圆70周围非常紧密地聚集在一起,在这些情况下的获取需要非常高精度地操纵指向设备40。此外,存在对指向设备位置的确定的实际限制。
对于接近圆70的半径R的Rp的值,获取容易度相对于附近对象是非常高的,因为它们的控制段80.i已经显著扩大。同时,对远处对象的横向导航速度是低的,因为将所有控制位置50.i移动到更远角度的附近段增多。一些对象可能甚至完全无法纯粹达到横向运动,因为它们的控制权重Ci已被减小到零,导致他们的控制段80.i消失。
这种方法的优点是,用户不受限于这些极端的情况,但可改变Rp以采用0和R之间的所有中间值。这使对导航速度和获取容易度之间的权衡的依赖位置的控制是无缝的,同时不断提供有关交互的进度的视觉反馈,包括导航和获取。
控制算法
为了改变导航速度和获取容易度之间的权衡,轨迹历史的记忆的某种形式是必不可少的。它不需要保留太多的细节,但没有滞后,仅视觉优势适应是可能的。
为了能够与大量的对象交互,将绝对指向对象位置(Rp,θp)映射到控制权重Ci的变化的函数应该是强非线性的,优选是指数的,虽然线性函数可用在少量对象的情况下。在本示例中,作出的决定是将非线性和部分滞后效应分离成单独的函数。
为了方便,相对于圆70的半径R将径向坐标归一化:
然后,从控制空间10中的指向对象40的当前归一化绝对距离rp开始,全局减少函数vp被定义为乘积指数:
在接近原点60处,在指针对象没有太多运动的情况下,绝对方向θp可明显改变。介绍具有归一化半径rk的小圆盘,在该圆盘内控制权重保持不变。这将表达式(2)修改为以下公式中给出的形式:
这两个版本的全局减少函数在图E1-1的曲线图中一起示出,一条曲线对应通过原点的公式(2),另一条曲线对应在点0.2处与水平轴相交的公式(3),因为rk=0.2。在任何特定的时间,只使用两条曲线中的一条。
基于全局减少vp,引入全局计数关系Mp(vp)。它由具有两个可调参数va和Nmin的三角形滞后回线组成。图E1-2中示出了va=0.8和Nmin=8的示例。关系Mp仅沿着滞后回线的较高的线减小,且仅沿着滞后回线的较低的线增大。落入该回线内的vp的任何变化都不影响Mp。所示的两条线都需要用来定义Mp。
用于调整控制权重的算法按照以下方式进行。假设控制权重Ci被初始化,并且以N为开始,Mp的先前值被存储。每当rp发生变化时,根据公式(1)至公式(3)计算相应的vp和Mp,以及全局计数变化ΔMp。全局计数变化需要被分配给控制权重Ci。指向对象40的当前绝对角度θp用来确定焦点对象,即58.n,以及最远对象,即58.k,注意在本示例中对象58.1和对象58.24相邻,因此使用以24为模的运算。
如果全局计数变化ΔMp为负,则最远对象58.k的控制权重Ck减小,如果有必要的话,递归减小两个方向上的相邻物的控制权重,直到控制权重的组合减小匹配负的全局计数变化的点。任何对象的最小控制权重都为零,因此所有剩余控制权重的总和应该一直都等于Mp的值。最低的全局计数受限于关系Mp的最小值,即可调参数Nmin,在本示例中取值为8。
在本示例中,Mp的减小重复集中在具有任何剩余权重的单个最远对象上,有效避免了它们彼此交互,但它可使用某种函数被更广泛地分配,如下面的示例1a所说明的。
如果全局计数变化ΔMp为正,则焦点对象58.n周围的控制权重被增大到每个控制权重的最大值,直到增大匹配全局计数变化。最大控制权重值是意味着一旦Mp再次达到N则所有对象的控制权重将被恢复的值。
如在初始化步骤期间之前,新的控制权重Ci被用于将控制空间中的角度范围按比例分配给对象58.i。新的控制段80.i的布置利用指向对象40作为锚位置。
动作输出
在控制空间10中建立阈值(在本示例中为圆70)。每当处理器28检测到指向对象40穿过任何圆盘段(即80.n)内的阈值70的交点时,处理器28将与关联对象58.n有关的命令发送给数据设备90。如果对象58.i中的每个对象都有例如音乐作为内容,则该命令可导致所选对象58.n的内容的播放。可替选地,轻拍或其它手势可被检测并用来触发动作输出。
用于指示动作输出的另一可能性是断开触摸接触。这种“最后接触”原则基于如下假设:用户开始交互以使一些事情发生。然后应该需要额外的努力,以使没有事情发生,例如返回到原点60附近的安全的接触断开区域。把指向对象40带到范围外的其它任何位置会触发与当前焦点对象58.n相关的动作,一直是这样定义的。
插图
图E1-3示出了在控制空间10中的原点60处的手指40,因此导致指针44和参考点64在显示空间14中重合。归一化的绝对距离rp为零,这意味着控制权重或控制段尺寸或位置相对于其初始值没有发生变化。相对控制距离rip都是相等的,从而导致像素对象的尺寸相等。
图E1-4示出了在控制位置50.21的方向上运动后的手指40,引起与手指相反的方向周围的八个对象58.6-58.13的控制权重减小到零,这反过来使它们的控制空间分配(即它们的段80.6–段80.13)减少到零,使它们从显示空间14中消失以及使得它们暂时不可用于选择。剩下的十六个对象现在可要求整个控制圆,使它们的选择更容易。注意,由于该消除,对象58.5和对象58.14在控制空间和显示空间二者中都已经成为相邻,即用于所有交互目的。
沿着该连续的手指轨迹的其它点示出在图E1-5和图E1-6中,在图E1-5中有十二个对象,在图E1-6中,八个对象中所选的最小对象仍然可用于被选择。
到该点的序列已经示出了指向对象40远离原点60的径向运动。朝向原点的径向运动具有相反的效果,即恢复控制权重(以及因此控制空间)给先前消除的对象,并同时将它们返回到显示。由于示出在图E1-2中的滞后,当径向运动在向内和向外的方向上达到相同的点时,可用对象的数量略有不同。
指向对象40在以原点60为中心具有固定半径的圆上的横向运动不改变控制权重,但它允许导航到且获取显示上剩余的任何对象。
组合径向分量和横向分量的运动具有相应的组合效应。由于提供的视觉反馈,这并不使用户感到混乱。上面提到的滞后消除了由于不经意的小运动而引起的抖动。
在参考点64和指针44处的圆盘的显示可被抑制,以消除视觉混乱。相反地,控制段80.i的边界的映射L下的图像的显示可以在显示空间中实现,以便精确地查看控制权重正在如何变化。
对人的手指40的跟踪和由此产生的更新是实时进行的,使得由于人类视网膜上的图像保留,像素对象84.i的尺寸和位置看起来连续变化。因此人具有通过移动其手指40来连续地且同时地控制所有像素对象84.i的体验。
此外,用户通过径向手指运动来控制导航速度和获取容易度之间的权衡。如控制权重Ci所记忆的其历史允许用户有利地限制与大型的对象58.i的集合中的少数对象的交互。如果需要,则这种限制也易于通过将手指40移动到参考点60附近而在任何时间逆转,从而重置交互。
在本示例中,重置使每一个项目回到其原始角度位置,不受运动历史约束。这具有重新建立类似起点的优势。
示例1a:最远对象周围的一系列对象上的控制空间分配减少的不均匀分布
在示例1a中,概述了对图形用户界面的布局进行动态用户控制的方法,从而以相对直接的方式控制导航速度和获取容易度之间的权衡。本示例使用在示例1中描述的相同的问题描述和方法论。
示例1和本扩展之间的区别主要在于控制权重算法,即在设置场景且已经建立输入和输出的方法之后。此处,概述了一种方法,其中通过控制权重的改变而引起的控制空间的减少被分布在一系列对象上而非集中在最远对象上。
用于设置场景和输入以及反馈输出的方法与示例1是相同的,此处通过引用并入。
控制空间的轨迹解释/重分配
相对于圆70的半径将径向坐标rp、ri和rip归一化,如在示例1中所概述的。全局减少函数vp(其中rk取值为0.2)的形成和随后的全局计数关系Mp(vp)的计算也保持不变。
假设控制权重Ci被初始化,在本示例中所有的控制权重被初始化成值为1。先前的Mp被存储,其被初始化为所有初始Ci的总和。在本示例的情况中,初始Mp因此等于N,因为所有的Ci的初始值为1。每当rp由于用户输入而发生变化时,计算相应的vp和Mp,并且标注全局计数变化ΔMp。全局计数变化需要分布在控制权重Ci上。指向对象40的当前绝对角度θp用来确定最近对象,即对象58.n,以及最远对象,即对象58.k,注意在本示例中对象58.1和对象58.24相邻,因此使用以24为模的运算。
如果全局计数变化ΔMp为负,则最远对象附近的一系列对象的控制权重减小,直到控制权重的总的减小量匹配该全局计数变化的点。对象的最小控制权重为零,因此所有剩余控制权重的总和应该一直等于Mp的值。最低的全局计数为Mp的最小值,即可调参数Nmin,在本示例中取值为8。
考虑控制减少分布函数cr(x),其中x是大于或等于1的某个点,该函数可用来确定特定对象58.k的控制权重的最大允许减小量。在本示例中,控制减少分布函数表示为:
cr(x)=-exe-xforx≥1(1)
在图E1a-1中以图形示出该函数。
当在区间[1,4](包含端点)上的P个点处均匀采样该函数时,至少对于3<P<100000(该不等式在数值上被测试过),该函数变为
该特性用来确定每个对象的需要减小控制权重的点的数量,以可能满足Mp。一系列最远对象的控制权重可以以类似于示例1中所使用的方式被减小到零,直到特性(2)可被应用。应当理解,(1)以外的函数也可用来分布控制权重的减小,公式(2)中所表示的特性不是针对该函数的要求,但便于在这种特定的情况下应用函数(1)。
在由于先前的用户输入而已经减小控制权重的情况下,尽可能多应用计算出的Cr(x)。不能被应用的Cr(x)的任何值同样地分布在算法的末尾。
如果全局计数变化ΔMp为正,则最近对象58.n周围的控制权重被增大到每个控制权重的最大值,直到该增大匹配全局计数变化。最大控制权重值是意味着一旦Mp再次达到其初始值则所有对象的控制权重将被恢复的值,在相等的控制权重分布为1的情况下,Mp等于N。也可以使用类似于(1)的函数来分布单独的控制权重的恢复。然而,在本示例中不考虑这点。
动作输出
在图E1a-2中,在控制空间10中建立阈值(在本示例中为圆70)。每当处理器28检测到指向对象40穿过任何圆盘段(即80.n)内的阈值70的交点时,处理器28将与关联对象58.n有关的命令发送给数据设备90。如果对象58.i中的每个对象都有例如音乐作为内容,则该命令可导致所选对象58.n的音乐的播放。可替选地,轻拍或其它手势可被检测以触发动作输出。
插图
图E1a-2示出了在控制空间10中的原点60处的手指40,因此导致指针44和参考点64在显示空间14中重合。绝对距离rp为零,这意味着控制权重或控制段尺寸或位置相对于其初始值没有发生变化。相对控制距离rip都是相等的,从而导致像素对象的尺寸相等。如果初始控制权重被确定为先验,则此时权重将已被显示在对象的显示尺寸中。
考虑公式(1),如图E1a-1所示。当x的值大于1时,c(x)的值随着x增大而合宜地从-1开始变化并接近0。在负的ΔMp的情况下,使用cr(xi)计算出的值用来分布控制权重的减小。减小开始于具有非零控制权重的最远对象,这将最大控制权重减小量赋值为-1,其在xi=1处使用控制减少分布函数(1)来计算。使用cr(x2)减小第二远的对象,并且针对i=1...P继续该过程或者直到满足变化ΔMp。
考虑图E1a-3,其中手指40在像素对象58.21的方向上移动,使得ΔMp=-8,因此控制权重的总减小量应该等于8。在这种情况下,在应用了该算法后,24个对象中的15个对象仍具有其初始控制权重1,两个对象具有部分权重以及七个对象现在具有最小控制权重0。具有非零控制权重的仅17个对象保留在显示上。
沿着这条连续的手指轨迹的其它点示出在图E1a-4中,其中11个对象仍具有控制权重1以及两个对象具有部分控制权重,从而全局计数Mp增大到12。在图E1a-5中,保持选择的最小量Mp=8,其中九个对象仍可见。
上面的序列已经示出了指向对象40远离原点60的径向运动。朝向原点的径向运动具有相反的效果,即恢复控制权重(以及因此控制空间)给先前消除的对象,并同时将它们返回到显示。
指向对象40在以原点60为中心具有固定半径的圆上的横向运动不改变控制权重,但它允许导航到显示上剩余的任何对象。
组合径向分量和横向分量的运动具有相应的组合效应。由于提供的视觉反馈,这并不使用户感到混乱。
对人的手指40的跟踪和由此产生的更新是实时进行的,使得由于人类视网膜上的图像保留,像素对象84.i的尺寸和位置看起来连续变化。因此人具有通过移动其手指40来连续地且同时地控制所有像素对象84.i的体验。
此外,控制空间10的可用于每个对象58.i的部分也由手指40的运动及其历史(如控制权重Ci所记忆的)来控制,从而允许用户限制与大型的对象58.i的集合中的少数对象的交互,以使对象获取变得容易。如果需要,则这种限制也易于通过将手指40移动到参考点60附近而在任何时间逆转(“重置”),从而允许增大导航到远处对象的速度。
示例2:控制空间的连续重新分配与显示空间的非线性失真的协调
在本发明的下个示例中,对图形用户界面(GUI)的布局进行动态用户控制的方法再次包括接收初始控制空间分配的描述的步骤。一旦完成初始化,则开始且自始至终继续用户点位置的接收。用户点的形成轨迹经受至少两种不同类型的解释,从而分别影响控制和显示。
设置场景
参照图E2-3,处理器28请求和接收来自数据设备90的数据,包括当前相关数据对象的数量N和各种详细说明。这些数据对象由数据设备90表示并设置成可用于交互,并且可以是与数据(如文件名、来源和创建时间)相关联的文本、声音或图像文件。在本示例中,N的值是24,但该数量是可调的以适应数据,使用这种方法与200个对象进行交互是可行的。
在计算机存储器18中,处理器28建立虚拟数据对象58.1、58.2、……、58.24,其对应于被数据设备90设置成可用的数据对象。每个对象58.i(i的范围为从1到N)是具有属性的某类实例,属性可包括对象内容、名称、来源和创建时间以及显示图像、显示位置、显示尺寸、控制位置和控制权重。这些属性中的一些属性来自于数据设备90,而其它属性由处理器28分配。对象58.i是为了方便而重新排列或索引的,例如根据文件名按字母顺序排列,或根据创建时间顺序排列。
每个对象58.i的控制权重属性Ci是非负数,如权利要求所解释的,相对于所有的N个对象,该对象的控制函数在可用控制空间上。与示例1不同,在本示例中的控制权重在整个交互过程中保持恒定。在本示例中,对于所有对象,每个对象的控制权重Ci都取值为1。
归一化控制权重值
用来以如下这样的方式将控制空间10中的角度范围Δθi(ci)的尺寸分配给每个对象:所有对象的控制空间角度范围的总和等于2π弧度的整个圆:∑Δθi=2π。
参考点或原点60被建立在控制空间10中,在本示例中靠近该空间的中心,还有通过原点60的参考线600。以原点60为中心、方便半径为R的圆70也被建立。以参考线600处的第一对象为开始,在本示例中选择在12点钟处,顺时针行进,控制空间的楔形段80.i被分配给每个对象58.i,段80.i的角度范围等于如上计算的Δθi。段80.i的尺寸因此与控制权重Ci成比例。在图E2-3中,明确标记了两个段80.5和80.21,但可以数到它们中的24个段。
公式(1)中的控制权重ci的归一化,结合所描述的控制空间分配方法,保证了任何两个段80.m和80.n(假设m和n不同)之间不会发生重叠,且N个段80.i将一起完全覆盖圆70内的圆盘。它遵循从原点60开始的每个方向通过其段80.i与单个唯一可识别的对象58.i相关联。圆70部分包围每个具有圆弧的段80.i,且每个这样的圆弧的中点被建立作为关联对象58.i在控制空间中的位置50.i。点50.i相对于原点60的极坐标表示为(Ri,θi)。
处理器28建立从控制空间10到显示空间14的线性映射L(即CD函数),以如下这样的方式定义:控制空间10中的圆70被映射到显示空间14中的圆74,且两个圆70和74在触摸屏设备的表面上占据完全相同的位置。处理器28使用映射L,以在显示空间14中建立参考点64作为控制空间10中的原点60的图像。每个对象的控制位置50.i也被用作映射L的自变量,以在显示空间14中建立位置54.i。
在本示例中的显示位置54.i仅从对应的控制位置50.i的线性映射L接收其初始位置。一旦获得输入,则使用该输入将点50.i非线性地映射到54.i(见下文)。
如果所有对象58.i的控制权重Ci被初始化为相同的值,如在本示例中所实现的,则控制位置50.i将均匀分布在圆70周围。然而,相等的权重不是必要的,可采用对象的控制权重的任何初始分布。通常,控制位置50.i所在的曲线70也不需要是圆形的,但必须是凸空间的边界以保持对象位置的定向唯一性。
在本示例中,所有对象58.i的显示尺寸属性都被初始化为相同的值,被计算成适合圆74的外周周围的对象的个数。每个对象58.i的视觉表示然后通过在显示空间14中的相应显示位置54.i周围建立像素对象84.i来完成。像素对象84.i可基于通用的图像,或基于对象58.i的显示图像属性。像素对象84.i可以采用任何方便的形状,但在本示例中仅以圆示出。
输入和反馈输出
该方法还包括跟踪指向对象(在本示例中为人的手指40)相对于触敏的控制空间10中的原点60的位置的步骤。从原点60到指向对象40的当前位置的距离Rp和从参考线600到将原点60连接到指向对象40的线按顺时针测量的角度θp被确定,且它们一起构成控制空间中的指向对象的正交极坐标(Rp,θp)。
交互处理器28还建立显示空间14中的指针44,其对应于控制空间10中的指向对象40。它使用线性映射L和指向对象位置作为其自变量,来计算和不断更新指针44相对于参考点64的位置。
指向对象40的轨迹可以建立在存储器18中,表示成指向对象位置的序列和每个位置被确定的时间。对于本示例,至少需要指向对象的上次记录的位置。
参照原点60的控制空间坐标将被称为是绝对的,而相对于指向对象40的变化位置(Rp,θp)的坐标将被称为是相对的。一旦对指向对象40的跟踪已经开始,则所有对象控制位置50.i的相对距离Rip和角度θip,以及当前位置和上次记录的位置之间的角度坐标变化Δθp被计算并不断更新。
为了方便,相对于圆70的半径R将控制空间中的径向坐标归一化:
在显示空间中,圆74的半径取为Rds。在触摸屏设备上,Rds等于R。
使用如在公式(2)中给出的归一化相对控制距离rip的逆功率函数来改变像素对象84.i的显示尺寸Wi以向用户提供反馈输出:
其中Wui为对象84.i的未放大的显示尺寸,m为自由放大因子以及幂q为控制放大强度的另一自由参数。从公式(2)可以看出,离指针44比离圆74的中心更近的对象将被放大,而那些离指针44更远的对象将被缩小。
除了改变显示尺寸Wi外,圆74上的像素对象84.i的显示位置54.i通过采用以下方式改变点54.i相对于将参考点64连接到指针44的线的相对角度来调整。
控制空间10中的指向对象40的当前角度θp可通过其圆形段80.n而总是与唯一对象(即58.n)相关联,如上面所指出的。于是对象n将也具有离指向对象40最近的控制位置50.n,且将被称为焦点对象。
角坐标相对于π被归一化
注意完成模为2π的角算术。可从上面描述的跟踪的坐标和对象控制空间分配来确定归一化的相对控制角uip。然后使用两个凸凹变换函数vip=f(uip)来计算归一化的相对显示角vip,其中
其中N为对象的数目,参数k和参数d可使用以下公式来计算
和
其中n表示上面提到的焦点对象的索引。对于负参数u,公式(4)反映在两个坐标轴上以提供如图E2-1所示的奇变换函数。注意f(u;Wn)变成了由焦点对象的放大的显示尺寸Wn索引的函数族。该变换函数的原点附近的区域被放大示出在图E2-2中,以突出公式(4)中的乘积指数的效果。
利用使用(4)计算的归一化的相对显示角vip,和也可被计算且用于相对于指针的角度位置44调整圆74上的像素对象的显示位置54.i。
控制算法
为了改变导航速度和获取容易度之间的权衡,轨迹历史的某种形式的记忆是必不可少的。它不需要保留太多的细节,但没有滞后,仅视觉优势适应是可能的。如在示例1中,本示例中的相关记忆为具有角坐标θi的对象控制位置50.i。区别在于如何调整这些坐标。
本示例中,显示空间14中的对象角坐标用来计算控制空间10中的θi的新值。显示坐标依赖于公式(2)和公式(4)给出的强非线性函数。控制坐标通过下式被更新
θi←θi+Δθcp(7)
其中控制空间中的对象位置的均匀角位移Δθcp取决于之前介绍的角坐标变化Δθp:
其中
Δθp=θp(t)-θp(t-)(9)
此处,t表示当前时间,t-表示记录指向对象的位置的先前时间,以及α提供从显示空间到控制空间的反馈:
因子α表示焦点对象的两个相邻物之间的显示空间中的角距离的一半,如针对上次记录的指向对象位置所计算的。需要再次注意将对象1和对象N作为相邻物来处理。
Δθp和α二者对先前时间步骤t-的依赖性对于避免在控制位置调整中的正反馈和形成的不稳定性是必要的。
(8)中的k是控制“摩擦”效应的强度的自由参数。它的值不应该太大,以免移动“控制环”70在指向对象40的后面停止滑动,并开始超越它。这种行为可能使用户感到惊讶和迷惑。
以这种方式调整控制位置50.i的效果是使对焦点对象及其相邻物的选择更容易,指向对象40更接近圆70。相反地,对远处的对象的选择变得更加困难。这是导航速度和获取容易度之间的必不可少的权衡。
此处的创新是,彻底改变焦点需要指向对象40在原点60附近的非常小的运动,这意味着导航速度高,但随着指向对象接近圆70而变得越来越难以改变焦点(因此更容易在焦点周围进行选择)。
因为视觉反馈是连续可获得的,所以用户可以在大约所需的方向上出发,并响应于逐渐成为焦点且因此变大的对象而逐步细化指向对象40的运动。
利用对参数k的正确选择,通过充足地改变指向对象角度θp(可能通过许多旋转),可以随着指向对象40在靠近70的圆上运动而选择任何其它对象58.i。这不同于示例1的行为,在示例1中交互地从合适的集合中移除对象。
然而,在这两种情况下,远距离导航的更好的策略是从每个对象位置50.i可同样再次访问的位置返回到原点60。
动作输出
在控制空间10中建立阈值(在本示例中为圆70)。每当处理器28检测到指向对象40通过任何圆盘段(即80.n)内的阈值70的交点时,处理器28将与关联对象58.n有关的命令发送给数据设备90。如果对象58.i中的每个对象都有例如音乐作为内容,则该命令可导致所选对象58.n的内容的播放。可替选地,轻拍或其它手势可被检测并用来触发动作输出。
插图
图E2-3示出了在控制空间10中的原点60处的手指40,因此导致指针44和参考点64在显示空间14中重合。归一化的绝对距离rp为零,这意味着对象的显示尺寸或位置没有改变,或导致控制段位置相对于其初始值发生改变。相对控制距离rip都是相等的,从而导致像素对象的尺寸相等。
图E2-4示出了在像素对象84.21的方向上径向运动后几乎到达圆70的手指40,使对象21成为焦点对象。很清楚,像素对象84.21及其相邻物已经在显示空间14中增大,而其它像素对象已经缩小。此外,除焦点对象以外的所有像素对象在圆74上都经历了远离显示点54.21的角位移。在圆74的对侧,84.9周围的像素对象已经开始重叠,即使它们比之前小了许多。
不仅84.21的尺寸已在显示空间14中增大,从而相对于观看者-用户给对象以视觉优势,而且段80.21也已在控制空间10中增大,从而相对于选择者-用户给对象以运动优势。也很清楚,对象58.21及其相邻物的视觉和运动优势的增加仅由于对侧的对象58.9及其相邻物所经历的视觉和运动优势的减少而是可能的。
图E2-5示出了在图E2-4的位置之后,在保持径向距离恒定时,手指40的顺时针角运动超过半圈的结果。该运动已扩展到像素对象84.1最大的点,这表示对象58.1已成为焦点对象,焦点已经越过对象22、对象23和对象24。注意在图E2-5中的接近六点钟位置的84.1的角位置,明显从在图E2-3中其开始的十二点钟位置移离。这种偏移指示了***中的滞后,这对于运动优势的调整是必不可少的。
对象1现在必须在不同于其最初出现的角度处被选择的事实,突出了对象的固定位置或角度的丢失。这是所需的滞后的不可避免的副作用。这意味着用户需要依靠视觉反馈,而肌肉记忆可能并不那么有价值。
图E2-6示出了由于图E2-5的位置之后的径向运动而再次处于原点的手指40。所有像素对象84.1和控制段80.1已经返回到相等的尺寸,但是位置被旋转了半转。
参考点64和指针44处的圆盘的显示可被抑制,以消除视觉混乱。相反地,控制段80.i的边界的映射L下的图像的显示能够在显示空间中实现,以便精确查看控制权重是如何变化的。
对人的手指40的跟踪和由此产生的更新是实时进行的,使得像素对象84.i的尺寸和位置由于人类视网膜上的图像保留而看起来是连续变化的。因此人具有通过移动其手指40来连续且同时控制所有像素对象84.i的体验。
此外,用户通过径向手指运动来控制导航速度和获取容易度之间的权衡。如控制位置50.i所记住的其历史允许用户有利地聚焦于大的对象58.i集合中的子集。如果需要,则通过将手指40移动到参考点60附近,该焦点也易于在任何时间逆转。
示例3:在收回视野递归的背景下控制导航速度和获取容易度之间的权衡
在本发明的第三示例中,与前面两个示例的主要区别是,假设感兴趣的对象可以通过树状结构的递归导航来访问。树中除根节点以外的每个节点都有父节点,且没有任何子节点的节点称为终端。在任何时候,树中的用户位置是称为当前节点的单个节点。如果当前节点不是第一种情况下的根,或第二种情况下的终端,则导航从当前节点行进到其父节点或其一个子节点。
在本发明的下一个示例中,用于对图形用户界面(GUI)的布局进行动态用户控制的方法再次包括接收初始控制空间分配的描述的步骤。一旦完成初始化,则开始和自始至终继续用户点位置的接收。用户点的形成轨迹经受至少两种不同类型的解释,从而分别影响控制和显示。
用于对图形用户界面的布局进行动态用户控制的方法再次包括使用交互处理器28(参考图E3-2)来接收设置场景时使用的初始控制空间分配的描述的步骤。控制空间10的一部分被分配给与当前节点对象的每个子对象相关联的每个控制功能,以及显示空间14的一部分被分配给每个这样的子对象。
设置场景
处理器28从数据设备90请求和接收关于当前节点对象的内容的数据,通常开始于根节点,包括其包含的当前相关数据对象的数量Nc和各种详细说明。所有这些数据对象由数据设备表示并设置成可用于交互,并且例如可以是包含子目录和文件的目录结构,其中文件例如为与数据(如文件名、来源和创建时间)相关联的文本文件、声音文件或图像文件。
在处理器28可用的存储器18中,交互数据对象58.i被建立,其对应于每个设备当前节点数据对象,其中i的范围为从1到Nc。每个对象58.i被创建作为具有属性的某类实例,属性可包括内容、名称、来源和创建时间,以及显示图像、显示位置、显示尺寸、控制位置和控制权重。这些属性中的一些来自于数据设备90,而其它属性由处理器28分配。对象58.i是为了方便而重新排列或索引的,例如根据文件名按字母顺序排列,或根据创建时间顺序排列。
每个对象58.i的归一化控制权重属性ci如在之前的示例中那样用来以如下这样的方式为每个对象建立控制空间10中的角度范围Δθi(ci)的初始大小:所有对象的控制空间角度范围的总和等于2π弧度的整个圆。
在控制空间10中建立参考点或原点60,在本示例中其靠近该空间的中心。原点60初始是固定的,虽然由于下面将要说明的合适的用户交互使得它的位置可在后续离散的步骤中改变。以原点60为中心、半径为R的圆70也被建立,其中R并不设置得太大,即屏幕宽度的五分之一,以允许后续的递归。
开始于通过原点60的参考线600(在本示例中在12点钟处截取的),确定的角度范围顺序地或按照索引被分配给每个对象58.i。作为副作用,圆70内的圆盘的楔形段80.i也被分配给每个对象58.i。段80.i的尺寸因此将直接与控制权重Ci成比例。本示例中的分配顺时针进行。
上面给出的归一化法结合控制空间分配方法,保证了任何两个段80.i之间将不发生重叠,且N个段80.i将一起完全覆盖圆70内的圆盘。它遵循从原点60开始的每个方向因此通过段80.i与单个唯一可识别的对象58.i相关联。圆70部分包围每个具有圆弧的段80.i,且每个这样的圆弧的中点被建立作为关联对象58.i的控制位置50.i。点50.i相对原点60的极坐标表示为(Ri,θi)。
处理器28建立从控制空间10到显示空间14的线性映射L(即CD函数),其以如下这样的方式定义:控制空间10中的圆70映射到显示空间14中的圆74,且两个圆70和74在触摸屏设备的表面上占据完全相同的位置。
在显示空间14中也建立参考点64。参考点64仅从控制空间10中的原点60的线性映射L中接收其初始位置。之后,在交互期间,显示参考点64的位置将被允许连续变化,且不同于原点60在映射L下的图像。
在显示空间14中建立称为视野的另一个圆724,其以参考点64为中心且半径为圆74的半径的1.5倍至4倍。圆74和圆724之间的区域形成环714,被称为显示环,该环714可被通过参考点64的径向线划分成环段。圆74的内部704被称为控制圆盘。这些区域如图E3-1所示,其中指针44被称为用户圆盘。
显示位置54.i初始被建立作为控制位置50.i在映射L下的图像。在交互期间,位置54.i可偏离50.i在映射L下的图像,如下面所描述的。
如果每个对象58.i的控制权重Ci如此处所做的那样被给定为相同的值,则控制位置50.i将均匀分布在圆70周围。然而,这不是必要的,可采用对象的控制权重的任何初始分布。通常,控制位置50.i所在的曲线70不需要是圆形的,但必须是凸空间的边界以保持对象位置的定向唯一性。
每个对象58.i的视觉表示通过建立显示环内部的环形段84.i来完成,从而与落在内部圆74上的对应显示位置54.i邻接。每个段的角度限制由其控制段80.i的边界的径向延伸在映射L下的图像来定义。每个段的径向限制内部由圆74定义、外部由圆724定义。每个环形段84.i在颜色上与其相邻物不同,或由对象58.i的显示图像属性来区分。在本示例中,环形段84.i最初显示为尺寸相等,且从不重叠。图E3-2包括显示空间14中的这样的表示的初始配置。
在本示例中,根节点中有十六个数据对象58.i,因此有相同数量的通过颜色区分的环形段84.i。由于递归的力量,Nc不必和在之前的两个示例中的一样大,8和24之间的值是典型的。
输入和反馈输出
本示例中的方法还包括跟踪指向对象(在本情况下为人的手指40)相对于接触敏感控制空间10中的原点60的位置。从原点60到指向对象40的当前位置之间的距离Rp和从参考线600到将原点60连接到指向对象40的线的角度θp被确定,且它们一起构成控制空间中的指向对象的极坐标(Rp,θp)。每当原点60的位置改变时,如将本示例中所进行的,指向对象的坐标随后也改变。与前面一样,通常使用归一化径向坐标rp=Rp/R。
使用线性映射L,交互处理器28建立显示空间14中的指针44,其对应于控制空间10中的指向对象40。它计算且不断更新与原点60的图像有关的指针位置44。然而,显示空间中的构成圆74和圆724的中心的参考点64的位置被不断更新,以与移动的指针44重合。显示参考64的这种改变的效果为,显示环保持以指针44为中心,以及视野724不断收回。尽管显示环由此相对于指针保持静止,但其内容(即环形段)根据指针的运动而改变。
指向对象40的轨迹可以建立在存储器18中,其被表示成指向对象位置的序列和位置被确定的时间。对于本示例,至少需要上次记录的指向对象的位置。
一旦对指向对象40的跟踪已经开始,则所有控制位置50.i的相对距离Rip和角度θip以及当前位置和上次记录的位置之间的角坐标变化Δθp被计算并不断更新。
通过以与示例2相同的方式使用两个凸凹变换函数改变点54.i相对于指针44的相对角度来调整环形段在圆74上的显示位置。两个环形段之间的角度边界被采用以径向通过圆74上的两个显示位置之间的一半。
树中的节点之间的改变和改变控制位置
本示例的方法包括:如果指向对象40的轨迹与圆70相交,则引入多个改变,从而构成数据树中的节点之间的改变。处于当前等级的、具有离交叉点最近的控制位置的对象(即50.n)被采用作为所选对象n,它变成新的当前节点。然而,原点60即刻被移动到交叉点,且相对于原点60重建圆70,其具有与之前相同的半径R。
可听见的流行音乐可被生成作为当前节点已经改变的附加指示符。
处理器28然后从数据设备90请求和接收新的数据,这次关于新的当前节点对象n的内容,包括其包含的数据对象的数量Nn和各种详细说明。附加的交互对象58.(Nn+1)被建立作为退出对象,其可被选择成返回到当前节点的父节点。
新的对象(包括退出对象)完全像原始数据集那样被处理,从而形成新的交互对象58.i、控制位置50.i和控制段80.i,但是现在是相对于新移动的控制原点60,该新移动的控制原点60不再是靠近控制空间10的中间的原点。
如果为了用户的口味而使原点60最终离屏幕侧太近,则可以通过用第二个手指触摸屏幕,大致在相同的方向上将两个手指一起拖动相同的距离,并再次抬起第二个手指,来手动地使原点60连同所有相关的控制对象和显示对象及其位置移动。
显示空间14中的变化稍微不那么激烈,这是因为参考点64已经(以及不断)与指针44重合,并且显示环714因此不需要移动。然而,其内容即时被新的环形段84.i替换,以与前面相同的方式从控制空间中得到新的环形段84.i,而显示位置54.i在其内部边界上。
运动优势的调整所需的控制轨迹的记忆再次为具有角坐标θi的对象控制位置50.i。来自显示空间14的反馈用于计算控制空间10中的θi的新值,如示例2中那样,并且具有许多相同的效果,虽然在本示例中改变发生在移动的参考帧中。
从以上的描述中可以看出,这些效果可看起来是非常复杂的,但是变化的高度连续性和反馈给用户的持续视觉使***的控制是可管理的且甚至是享受的。
本领域技术人员将理解,给定的过程可被递归重复,从而允许包含作为终端的数据对象的信息树的连续控制的遍历和集中的可视化。
动作输出
本示例中包围控制盘的圆70形成了用于传到树结构的下面的等级或先前的等级的自然的阈值。当已经达到含有终端节点的等级时,与终端节点的控制段(即80.n)中的该阈值相交触发将与关联对象58.n相关的命令发送到数据设备90。如果对象58.n具有例如音乐作为内容,则该命令可导致该音乐的播放。如果关于相同的对象需要多个控制函数,则它们可以在树层次结构中作为另一个等级来实现。
插图
图E3-2示出了靠近控制空间10的中间的原点60处的手指40。指针44和参考点64在显示空间14中重合,如在本示例中它们一直如此。归一化绝对距离rp为零,这意味着显示尺寸或位置没有发生变化,或者导致控制段位置相对于其初始值发生变化。相对控制距离rip都是相等的,从而导致环形段的尺寸相等。
图E3-3示出了在控制位置50.1的方向上径向运动了离圆70的20%距离后的手指40,从而使58.1成为焦点对象。注意,显示原点64和显示环已经与指针44一起移动,从而保持指针44到视野714的距离恒定。
很清楚,84.1及其相邻物已经增大,而其它段已经缩小。此外,除焦点对象以外的所有段在圆74上都已经历远离显示点54.1的角位移。在圆74的对侧,段已经被压缩,但避免了重叠。
不仅84.1的尺寸已在显示空间14中增大,从而相对于观看者-用户给对象以视觉优势,而且段80.1也已在控制空间10中增大,从而相对于选择者-用户给对象以运动优势。对象58.1及其相邻物的视觉和运动优势的增加仅由于对侧的对象及其相邻物所经历的视觉和运动优势的减少而是可能的。
图E3-4示出了在相同的50.1的方向上径向运动几乎到达圆70后的手指。很明显,84.1已经基本包围指针44,而其它段已经被移走和压缩。控制段80.1之间的尺寸差异也更明显。
图E3-5示出了在图E3-4的位置之后,手指40逆时针角运动约90°的结果。该运动已扩展到环形段84.15最大的点,这表示对象58.15已成为焦点对象,焦点已经越过84.16。注意图E3-5中的九点钟位置附近的50.15的角位置,其从图E3-2中的开始位置移离。这种偏移指示***中的滞后,这对于运动优势的调整是必不可少的。
对象58.15现在必须在不同于其最初出现的角度处被选择的事实,突出了对象的固定位置或角度的丢失。这是所需的滞后的不可避免的副作用。这意味着用户需要依靠视觉反馈,而肌肉记忆可能并不那么有价值。
图E3-6示出了在84.15的方向上已经与圆70相交的手指40。原点60已转移到交叉点,且下一级的六个对象已被引入到显示环714。注意,提供返回到先前等级的方式的增加的开放段84.exit。还要注意,一些段部分地落到显示空间14外,这可能需要重新定位。
在参考点64和指针44处的圆盘的显示可被抑制,以消除视觉混乱。相反地,控制段80.i的边界在映射L下的图像的显示能够在显示空间中实现,以便精确查看控制权重是如何变化的。
对人的手指40的跟踪和由此产生的更新是实时进行的,使得由于人类视网膜上的图像保留而环形段84.i的尺寸和位置看起来是连续变化的。因此人具有通过移动其手指40来连续且同时控制所有环形段84.i的体验。
此外,用户通过径向手指运动来控制导航速度和获取容易度之间的权衡。如控制位置50.i所记住的其历史允许用户有利地聚焦于大的对象58.i集合中的子集。建立圆70作为径向阈值,进一步使用户能够平滑地向上和向下导航树层次结构。
示例4:三维控制导航速度和获取容易度之间的权衡
该方法不限于二维(2D)输入或输出。下面的示例演示了三维(3D)触摸输入设备与2D显示设备一起使用。参考图E4-1到图E4-4。控制空间10的一部分被分配给与当前感兴趣的每个对象相关联的每个控制功能,以及显示空间14的一部分也被分配给每个这样的对象。
通过让处理器28从数据设备90请求和接收N个可选数据对象来设置场景。
交互数据对象58.i(1≤i≤N)被建立作为具有存储器18中每个接收到的数据对象的属性的某类实例。这些属性中的一些属性来自于数据设备90,而其它属性由处理器28分配。对象58.i可被重新排列或索引,以适应当前的需要。
每个对象的控制权重Ci被初始化为值1。归一化控制权重值ci可用来确定对象在控制空间10中的初始位置和尺寸。
参考点或原点60被建立在控制空间10的左下角。
可以使用许多布局选项。在本示例中描述了基于网格的布局。基于数据对象的数量N和控制空间的宽高比(空间的宽度与高度的比例),网格被划分成Mr个行和Mc个列,从而网格单元的数量NG=Mr*Mc≥N。网格从下到上、从左到右地被填充。如果网格单元的数量超过数据对象的数量,则额外的占位对象58.j(其中,N+1≤j≤NG)被建立作为具有存储器18中的属性的某类实例。剩余的单元被占位对象58.j填充。每个占位对象的控制权重Cj也初始化为值1。占位对象58.j在控制空间10中表现得与数据对象58.i完全一致,但在显示空间中在视觉上不被表示。为了清楚起见,仅索引i将在剩余的示例中使用,其中i≤N的值参考数据对象以及N<i≤NG的值参考占位符。
交互处理器28可执行如下的算法,以基于对象的控制权重和控制空间10的维数来确定控制空间10中的所有对象的更新的控制位置50.i和控制段80.i:
1.确定可用的控制空间宽度Wcs和高度Hcs。
2.确定每列的最大宽度Wc,max:
a.针对每列,查找该列中的最大控制权重Cc,max。
b.使用所有列中的权重的总和归一化最大列权重:
c.计算每列的宽度Wc,max:Wc,max=Cc,max,n·Wcs。
3.确定每行的最大高度Hr,max:
a.针对每行,查找该行中的最大控制权重Cr,max。
b.使用所有行中的权重的总和归一化最大行权重:
c.计算每行的高度Hr,max:Hr,max=Cr,max,n·Hcs。
4.计算每个对象的新的扇区尺寸80.i:
a.对象80.i的宽度w80.i等于列ci的最大宽度Wci,max,即w80.i=Wci,max。
b.对象80.i的高度h80.i等于行ri的最大高度Hri,max,即h80.i=Hri,max。
5.计算每个对象的新的控制位置50.i:
a.针对基于网格的容器中的每行,计算该行中的对象的控制位置50.i的新的x值x50.i。新的x值可以是当前对象的控制扇区宽度w80.i、同一行中的所有对象的控制扇区宽度和控制参考点60的x值x60的函数:
i.将运行的总宽度值WU初始化为零。
ii.针对该行中的每个对象(此处用索引r指示),首先计算新的x位置
然后更新运行的总宽度值WU=WU+w80.r。
b.针对基于网格的容器中的每列,计算该列中的对象的控制位置50.i的新的y值y50.i。新的y值可以是当前对象的控制扇区高度h80.i、同一行中的所有对象的控制扇区高度和控制参考点60的y值y60的函数:
i.将运行的总高度值HU初始化为零。
ii.针对该列中的每个对象(此处用索引c指示),首先计算新的y位置
然后更新运行的总高度值HU=HU+h80.c。
80.i段的尺寸因此直接与控制权重Ci成比例。该布局算法确保了控制空间分配不重叠。
在本示例中,我们假设控制空间10和显示空间14的宽高比是相同的。处理器28建立从控制空间10到显示空间14的线性映射L,以如下这样的方式被选择:对象位置50.i和对象位置54.i将在触摸屏设备的表面上占据完全相同的位置。映射L还建立显示空间14中的参考点64作为控制空间10中的原点60的表示。
每个数据对象58.i的视觉表示通过创建以显示空间14中的对应显示位置54.i为中心的像素对象84.i来完成。对象84.i可采用任何方便的形状和尺寸,但在本示例中以圆角矩形示出。像素对象84.i的尺寸可被减小,以保留像素之间的空间。
本示例中,有四十九个数据对象58.i,以及因此相同数量的圆角矩形像素对象84.i,标记范围从84.1至84.49。
如前面的示例,指向对象的运动轨迹被跟踪并存储在存储器18中,在该情况下为3D可触控制空间10。控制空间10中的指向对象40的位置相对于原点60被确定。交互处理器28可选地在显示空间14中建立指针44,并使用线性显示映射L计算和不断更新其关于参考点64的位置。
每当指向对象40移动时,指向对象40相对于原点60的当前位置的坐标x40、y40和z40,以及所有控制点50.i和指向对象40之间的相对距离ri,40被计算和更新。在本示例中,触摸平面被定义为z=0。输入设备具有最大z轴值,表示为z40,max。为了简化一些计算,指针对象40的归一化z轴值被计算为
每当指向对象40的位置发生变化时,使用基于指针对象40的坐标和当前控制权重的控制权重算法来计算控制权重Ci的新值,如下面所描述的。Ci的该变化触发控制空间10中的每个对象的位置和尺寸的更新,如在上述布局算法中所描述的。
控制权重Ci的新值可使用以下算法来计算:
1.定义全局减少值vp作为指向对象40的z轴值的函数。一种可能的函数是
如果未定义z轴值,则设置vp=0。
2.定义全局计数值Mp作为全局减少值的函数。一种可能的函数是Mp=(Nmin–NG)·vp+NG,其中Nmin为保持完全扩大的对象的最少数量。对于基于网格的布局算法,Nmin理论上应被选择为完全扩大下的每行中所需的最少单元数和每列中所需的最少单元数的乘积。
3.存储更新之间的Mp值,并确定全局计数值的变化ΔMp。ΔMp可被解释为控制权重值的全局变化。
4.如在前面的示例中所说明的,可考虑各种策略,用于基于指针位置40和全局计数值Mp更新控制权重值。在本示例中,我们演示了如下策略:在ΔMp为负时,从离指针最远的对象移除控制权重,使其低至最小值0;在ΔMp为正时,向离指针最近的对象增加控制权重,使其高至最大值1。更具体地:
a.使用对象控制位置50.i确定控制空间中离指针40最近的数据或占位对象58.i。此外,确定该对象在网格中的位置(行rn和列cn)。
b.如果ΔMp为负,则从网格的边缘开始,使用离指针40最近的对象50.n附近的缩小的正方形图案来搜索具有控制权重值Ci>0的最远的对象集合。然后,在该集合中的所有对象上均匀分布全局控制权重值的减小(ΔMp),其达到最小值0。如果最远的对象集合中的所有对象的控制权重值被减小到0,则重复步骤(b),以将剩余的全局控制权重值变化分配给下一个对象集合。
c.如果ΔMp为正,则从网格中离指针40最近的对象50.n的位置开始,使用扩大的正方形图案来搜索位于包含具有控制权重值Ci<1的对象的搜索图案内的最近的对象集合。然后,在该集合中的所有对象上均匀分布全局控制权重值的增大(ΔMp),其达到最大值1。如果最近的对象集合中的所有对象的控制权重值被增大到1,则重复步骤(c),以将剩余的全局控制权重值变化分配给下一个对象集合。
这种不断将控制空间10重新分配给对象58.i的方式使得更容易选择离最近的对象58.n近的对象,从而导致运动优势直接受用户控制。
控制空间10的变化通过线性映射L被传播到显示空间14,从而导致像素对象84.i的尺寸调整和重定位。
插图
图E4-1示出了处理器28从数据设备90请求和接收49个可选数据对象(每个数据对象具有控制权重值1)且布局算法已经被应用后,控制空间10和显示空间中的对象的初始排列。控制空间10中没有出现指针对象40,导致vp=0和Mp=NT。对象的控制权重Ci保持相同。所有对象具有相同的控制段尺寸和显示尺寸。
在图E4-2中,控制段80.25上引入具有z40=z40,max的指针对象40。结果还是vp=0和Mp=NT。由于控制权重Ci没有改变,因此控制空间10中的控制位置50.i和控制段80.i保持相同。显示空间14中的像素对象84.i的排列和尺寸因此也不变。通过线性显示变换L,指针对象40的视觉表示44被引入到显示空间14中。
在图E4-3中,指针对象40在z轴上移向触摸平面。指针对象仍然在控制段80.25上,但z40=0.5。结果是vp=0.824和Mp=16.03。沿着网格的边缘的对象(即离对象80.25最远的对象)的控制权重已经下降到0,而距离网格的边缘一行/列的对象的控制权重已经下降到0和1之间的值。控制段80.i、控制位置50.i和像素对象84.i的尺寸和位置被调整,以对可用空间加权,从而使选择更容易。
在图E4-4中,指针对象40在z轴上移动到触摸平面。指针对象仍然在控制段80.25上,但是现在z40=0。结果是vp=1和Mp=Nmin=9。除了离控制段80.25最近的9个对象之外的所有对象的控制权重已经下降到0。离控制段80.25最近的对象的控制段80.i、控制位置50.i和像素对象84.i的尺寸和位置被调整,以填满所有可用空间。
该序列示出了指向对象40从范围外到触摸平面上的z轴运动。远离触摸平面的Z轴运动具有相反的效果,即恢复控制权重给之前消除的对象(反转从图E4-4到图E4-1的转变),并将它们返回到控制空间和显示空间。在触摸平面上的横向移动不改变控制权重,但允许对任何剩余对象的选择。结合z轴分量和xy平面分量的运动具有相应组合的效果。由于所提供的视觉反馈,这不需要迷惑用户。在实践中,一些滞后被应用到轨迹的解释,以消除由于不经意的小动作而引起的抖动。
在短的时间间隔内重复对人的手指40的跟踪。如果必要的计算是实时完成的,则人具有通过移动其手指40来连续且同时控制所有像素对象84.i的体验。此外,每个对象58.i可用的控制空间10的部分也受手指40运动及其历史来控制,从而允许用户有效地限制与大的对象58.i集合中的少数对象的交互。这种限制也容易逆转。
应当理解,示例被提供用来进一步说明本发明以及帮助本领域技术人员理解本发明,但并不意味着被解释为过分地限制本发明的合理范围。
Claims (32)
1.一种对图形用户界面的布局进行动态用户控制的方法,所述方法包括如下步骤:
接收将所述界面中的控制区域分配给多个虚拟对象而不发生对象重叠的方式的描述;
接收用户点的位置;
基于所述用户点的位置,将来自至少一个对象的所述控制区域的一部分重新分配给不同的对象;
基于对于所述对象而对所述控制区域的当前分配,将所述界面中的显示区域的一部分分配给至少一个所述对象,但控制-显示解耦;以及
足够快速地重复前三个步骤,使得用户将感知基本上连续的变化。
2.根据权利要求1所述的方法,其中,所述虚拟对象代表一个或多个控制功能。
3.根据权利要求1或2所述的方法,其中,对于选择容易度的运动优势与对于导航速度的运动优势逆相关。
4.根据权利要求1至3中任一项所述的方法,其中,在重新分配所述控制区域的一部分的步骤中,包括使用控制算法和/或探试程序来产生在所述控制区域中的对象之间的重新分配和指向或导航。
5.根据权利要求1至4中任一项所述的方法,其中,在分配所述显示区域的一部分的步骤中,采用显示算法和/或探试程序,包括在显示器上画出所述对象的图形表示。
6.根据权利要求1至5中任一项所述的方法,其中,具有离所述用户点较远的控制区域分配的对象具有较强的解耦。
7.根据权利要求1至6中任一项所述的方法,其中,重复率为每秒20次或更快。
8.根据权利要求4至7中任一项所述的方法,其中,所述方法包括使用控制算法和/或探试程序来产生在所述控制区域中的对象之间的重新分配和指向或导航,所述控制算法和/或探试程序通过以下方式来建立:
·对所述控制区域的所述一部分的重新分配由所述用户点的一个位置坐标直接或间接地控制;
·所述指向或导航由所述用户点的另一个优选正交的位置坐标直接或间接地控制;
·采用某种形式的存储器,以使所述控制算法和/或探试程序直接或间接地依赖于所述用户点的所述位置坐标的过去值;
·对所述控制区域的重新分配能够由位置和/或时间的失真函数表征。
9.根据权利要求8所述的方法,其中,所述方法使用彼此正交的坐标。
10.根据权利要求9所述的方法,其中,所述控制算法使用极坐标,其中所述指向对象的径向位置坐标控制对所述控制区域的重新分配以及横向(角)坐标控制在控制空间中的所述导航。
11.根据权利要求1至10中任一项所述的方法,其中,对所述控制区域的重新分配被视为控制空间中的所述对象的所述位置坐标的变化,然后将任何特定对象的下一个位置计算作为指针位置、锚点或线、所述对象的先前位置、以及额外地所述用户点的先前位置的函数。
12.根据权利要求1至10中任一项所述的方法,其中,对所述控制区域的重新分配被视为控制空间中的所述对象的所述位置坐标的变化,然后将任何特定对象的下一个位置计算作为指针位置、锚点或线、所述对象的先前位置、以及额外地分配给每个对象的控制权重的函数,其中所述控制权重的当前值反过来取决于过去的控制权重值和所述用户点的当前位置。
13.根据权利要求12所述的方法,该方法包括使用控制权重算法和/或探试程序,以根据所述指针对象位置相对于所述参考点和/或相对于每个对象控制位置的径向距离来确定每个对象的新的控制权重;
使用控制空间扇区算法和/或探试程序,以根据每个对象的所述控制权重来确定每个对象的新的唯一的控制空间扇区;
使用控制位置算法和/或探试程序,以根据以下项确定每个对象的新的对象控制位置:
-相对于参考线的指针对象位置角或
-离所述指针对象最近的对象的当前对象控制位置,和/或
-每个对象的所述控制权重;以及
将所述新的对象控制位置映射到新的对象显示空间位置,并更新对象表示的显示。
14.根据权利要求1至13中任一项所述的方法,其中,每个对象在所述控制空间中被分别定位在凸空间的边界上,以针对与计算机输入设备有关的每个对象提供所述控制空间的唯一位置和唯一段。
15.根据权利要求14所述的方法,该方法包括使用算法和/或探试程序来确定每个对象的新的控制位置和唯一的控制空间扇区,使用当前对象位置角作为用于锚定所述对象控制位置和扇区的变化的固定线。
16.根据权利要求15所述的方法,该方法包括使用算法和/或探试程序来确定每个对象的新的控制位置和唯一的控制空间扇区,使用离所述指针对象位置最近的对象的当前对象控制位置作为用于锚定所述对象控制位置和扇区的变化的固定线。
17.根据权利要求12所述的方法,其中,用于确定所述新的控制权重的所述算法基于需要避免正反馈的绝对指针位置。
18.根据权利要求17所述的方法,该方法包括针对在所述对象的所述控制空间中未分配控制空间扇区的对象设置最大控制权重的步骤。
19.根据权利要求12、17或18所述的方法,其中,将控制权重分配给对象的步骤和/或确定对象的新的控制权重的步骤包括:
·独立地对于对象分配和更新对应的权重;
·基于存储器中的对象的结构的函数,对于对象分配和更新对应的权重;以及
·基于控制空间本身的某属性,对于对象分配和更新值。
20.根据权利要求1至19中任一项所述的方法,该方法包括使用动作算法和/或探试程序来确定如果有的待执行的动作的步骤。
21.根据权利要求20所述的方法,其中,如果已利用所述动作算法和/或探试程序确定出待执行的动作,则所述方法包括执行该动作的步骤。
22.根据权利要求13至21中任一项所述的方法,包括将所述对象控制位置映射到显示空间中的显示位置并显示所述对象的与其显示位置相关的表示,所述方法还包括将一个或多个对象显示在远离其显示空间位置且因此远离其控制空间位置的位置处。
23.根据权利要求1至22中任一项所述的方法,该方法包括选择对象或允许对象被选择的步骤。
24.根据权利要求1至23中任一项所述的方法,该方法包括在所述控制空间中建立阈值的步骤,并且当与阈值相交时,相应的对象被选择。
25.根据权利要求1至24中任一项所述的方法,该方法包括跟踪指针对象返回到所述控制空间中的指针参考点的步骤,以能够反转用户的输入动作。
26.根据权利要求25所述的方法,该方法包括感测所述控制空间中的所述指针参考点处或所述指针参考点附近的所述指针对象,以将所述对象重置到其在所述显示空间中的初始位置。
27.根据权利要求26所述的方法,其中,在触敏屏的情况下,所述参考点的位置依赖于用户的首个触摸点。
28.根据权利要求12至27中任一项所述的方法,该方法使用算法和/或探试程序来确定每个对象的新的控制权重,并包括遗忘函数,从而对象的所述控制权重能够作为时间或导航距离的函数而增大或减小。
30.根据权利要求1至28中任一项所述的方法,该方法包括如下步骤:在所述指针对象位置超出所述控制空间中的范围后或如果所述指针对象不能够被跟踪,例如当手指抬高离开触敏屏时,将触敏屏上的首次触摸解释为典型的GUI对象选择。
31.根据权利要求15至30中任一项所述的方法,其中,与每个对象的所述控制位置相关的唯一的控制空间扇区伸展和延伸超过所述凸空间的边界,从而从所述凸空间的内部接近所述边界上的点变成从所述凸空间的外部对称反射地接近。
32.根据权利要求14至31中任一项所述的方法,其中,用于确定每个对象的新的对象控制位置的算法和/或探试程序以所述位置将保持在凸空间的边界上的方式平移那些位置,所述那些位置包括接近所述指针位置的位置。
33.一种对图形用户界面的布局进行动态用户控制的方法,基本上如在本文中参考附图所描述的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ZA201209617 | 2012-12-19 | ||
ZA2012/09617 | 2012-12-19 | ||
PCT/ZA2013/000094 WO2014100839A1 (en) | 2012-12-19 | 2013-12-13 | User control of the trade-off between rate of navigation and ease of acquisition in a graphical user interface |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105190508A true CN105190508A (zh) | 2015-12-23 |
Family
ID=50190863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380073371.6A Pending CN105190508A (zh) | 2012-12-19 | 2013-12-13 | 图形用户界面中的导航速度和获取容易度之间的权衡的用户控制 |
Country Status (6)
Country | Link |
---|---|
US (2) | US20150355827A1 (zh) |
EP (1) | EP2936292A1 (zh) |
CN (1) | CN105190508A (zh) |
AU (1) | AU2013363975A1 (zh) |
WO (1) | WO2014100839A1 (zh) |
ZA (1) | ZA201505104B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445383A (zh) * | 2016-09-26 | 2017-02-22 | 艾体威尔电子技术(北京)有限公司 | 一种用于触摸屏上输入密码的方法 |
CN106814966A (zh) * | 2017-01-24 | 2017-06-09 | 腾讯科技(深圳)有限公司 | 一种控制对象的方法及装置 |
CN113632055A (zh) * | 2019-03-26 | 2021-11-09 | 曹卓祺 | 放置在电容式触摸屏上时区分并跟踪多个对象 |
CN114637958A (zh) * | 2022-03-24 | 2022-06-17 | 悍匠机器人(浙江)有限公司 | 一种图形图像的圆角变换算法及*** |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140375572A1 (en) * | 2013-06-20 | 2014-12-25 | Microsoft Corporation | Parametric motion curves and manipulable content |
US10152136B2 (en) | 2013-10-16 | 2018-12-11 | Leap Motion, Inc. | Velocity field interaction for free space gesture interface and control |
US9740296B2 (en) | 2013-12-16 | 2017-08-22 | Leap Motion, Inc. | User-defined virtual interaction space and manipulation of virtual cameras in the interaction space |
US9690478B2 (en) * | 2014-03-04 | 2017-06-27 | Texas Instruments Incorporated | Method and system for processing gestures to cause computation of measurement of an angle or a segment using a touch system |
US9696795B2 (en) | 2015-02-13 | 2017-07-04 | Leap Motion, Inc. | Systems and methods of creating a realistic grab experience in virtual reality/augmented reality environments |
EP3091758B1 (en) * | 2015-05-04 | 2018-07-11 | Volvo Car Corporation | Low latency method and system for sending cloud data to a vehicle |
US9830702B2 (en) | 2015-10-22 | 2017-11-28 | International Business Machines Corporation | Dynamic real-time layout overlay |
US10405034B1 (en) * | 2016-11-14 | 2019-09-03 | Cox Communications, Inc. | Biometric access to personalized services |
US11875012B2 (en) | 2018-05-25 | 2024-01-16 | Ultrahaptics IP Two Limited | Throwable interface for augmented reality and virtual reality environments |
US10936163B2 (en) | 2018-07-17 | 2021-03-02 | Methodical Mind, Llc. | Graphical user interface system |
TWD200442S (zh) * | 2018-09-27 | 2019-10-21 | 沅聖科技股份有限公司 | 顯示螢幕之圖形化使用者介面之部分 |
TWD200443S (zh) * | 2018-09-27 | 2019-10-21 | 沅聖科技股份有限公司 | 顯示螢幕之圖形化使用者介面之部分 |
US10691418B1 (en) * | 2019-01-22 | 2020-06-23 | Sap Se | Process modeling on small resource constraint devices |
US11269479B2 (en) * | 2019-12-31 | 2022-03-08 | Google Llc | Automatic focus detection with relative threshold-aware cell visibility for a scrolling cell collection |
US11966575B2 (en) * | 2020-03-09 | 2024-04-23 | Muchskills Ab | Method for retrieving user input via an interface based on selection of interactive shapes |
US11237641B2 (en) * | 2020-03-27 | 2022-02-01 | Lenovo (Singapore) Pte. Ltd. | Palm based object position adjustment |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006082285A1 (en) * | 2005-02-07 | 2006-08-10 | Ilpo Kojo | Selector |
WO2009042926A1 (en) * | 2007-09-26 | 2009-04-02 | Autodesk, Inc. | A navigation system for a 3d virtual scene |
US20090183100A1 (en) * | 2008-01-11 | 2009-07-16 | Sungkyunkwan University Foundation For Corporate Collaboration | Menu user interface providing device and method thereof |
CN101667091A (zh) * | 2008-05-15 | 2010-03-10 | 杭州惠道科技有限公司 | 实时预测用户输入的人机界面 |
US20100100849A1 (en) * | 2008-10-22 | 2010-04-22 | Dr Systems, Inc. | User interface systems and methods |
WO2010116028A2 (en) * | 2009-04-06 | 2010-10-14 | Aalto-Korkeakoulusäätiö | Method for controlling an apparatus |
US20110138324A1 (en) * | 2009-06-05 | 2011-06-09 | John Sweeney | Predictive target enlargement |
CN102428433A (zh) * | 2009-05-19 | 2012-04-25 | 国际商业机器公司 | 具有可变可选择的项目区域的放射状菜单 |
CN102449588A (zh) * | 2009-05-29 | 2012-05-09 | 苹果公司 | 放射式菜单 |
US20120240259A1 (en) * | 2011-03-15 | 2012-09-20 | Pioneer Hi-Bred International, Inc. | Soybean Variety XB23K11 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8046705B2 (en) | 2003-05-08 | 2011-10-25 | Hillcrest Laboratories, Inc. | Systems and methods for resolution consistent semantic zooming |
KR100469820B1 (ko) * | 2004-06-29 | 2005-02-03 | 엔에이치엔(주) | 화면 갱신 방법 및 그 시스템 |
WO2013049864A1 (en) * | 2011-09-30 | 2013-04-04 | Willem Morkel Van Der Westhuizen | Method for human-computer interaction on a graphical user interface (gui) |
-
2013
- 2013-12-13 AU AU2013363975A patent/AU2013363975A1/en not_active Abandoned
- 2013-12-13 EP EP13834347.0A patent/EP2936292A1/en not_active Withdrawn
- 2013-12-13 US US14/653,708 patent/US20150355827A1/en not_active Abandoned
- 2013-12-13 CN CN201380073371.6A patent/CN105190508A/zh active Pending
- 2013-12-13 WO PCT/ZA2013/000094 patent/WO2014100839A1/en active Application Filing
-
2015
- 2015-07-16 ZA ZA2015/05104A patent/ZA201505104B/en unknown
-
2019
- 2019-05-23 US US16/420,658 patent/US10732813B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080126998A1 (en) * | 2005-02-05 | 2008-05-29 | Kojo Iipo | Selector |
WO2006082285A1 (en) * | 2005-02-07 | 2006-08-10 | Ilpo Kojo | Selector |
WO2009042926A1 (en) * | 2007-09-26 | 2009-04-02 | Autodesk, Inc. | A navigation system for a 3d virtual scene |
US20090183100A1 (en) * | 2008-01-11 | 2009-07-16 | Sungkyunkwan University Foundation For Corporate Collaboration | Menu user interface providing device and method thereof |
CN101667091A (zh) * | 2008-05-15 | 2010-03-10 | 杭州惠道科技有限公司 | 实时预测用户输入的人机界面 |
US20100100849A1 (en) * | 2008-10-22 | 2010-04-22 | Dr Systems, Inc. | User interface systems and methods |
WO2010116028A2 (en) * | 2009-04-06 | 2010-10-14 | Aalto-Korkeakoulusäätiö | Method for controlling an apparatus |
CN102428433A (zh) * | 2009-05-19 | 2012-04-25 | 国际商业机器公司 | 具有可变可选择的项目区域的放射状菜单 |
CN102449588A (zh) * | 2009-05-29 | 2012-05-09 | 苹果公司 | 放射式菜单 |
US20110138324A1 (en) * | 2009-06-05 | 2011-06-09 | John Sweeney | Predictive target enlargement |
US20120240259A1 (en) * | 2011-03-15 | 2012-09-20 | Pioneer Hi-Bred International, Inc. | Soybean Variety XB23K11 |
Non-Patent Citations (1)
Title |
---|
RAINE KAJASTILA 等: "Funkypod:integrating auditory and visual mens", 《INTERNATIONAL WORKSHOP ON HTE PRINCIPLES AND APPLICATIONS OF SPATIAL HEARING》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445383A (zh) * | 2016-09-26 | 2017-02-22 | 艾体威尔电子技术(北京)有限公司 | 一种用于触摸屏上输入密码的方法 |
CN106814966A (zh) * | 2017-01-24 | 2017-06-09 | 腾讯科技(深圳)有限公司 | 一种控制对象的方法及装置 |
CN106814966B (zh) * | 2017-01-24 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种控制对象的方法及装置 |
CN113632055A (zh) * | 2019-03-26 | 2021-11-09 | 曹卓祺 | 放置在电容式触摸屏上时区分并跟踪多个对象 |
CN114637958A (zh) * | 2022-03-24 | 2022-06-17 | 悍匠机器人(浙江)有限公司 | 一种图形图像的圆角变换算法及*** |
CN114637958B (zh) * | 2022-03-24 | 2024-03-08 | 悍匠机器人(浙江)有限公司 | 一种图形图像的圆角变换方法及*** |
Also Published As
Publication number | Publication date |
---|---|
WO2014100839A1 (en) | 2014-06-26 |
ZA201505104B (en) | 2019-07-31 |
US20150355827A1 (en) | 2015-12-10 |
US10732813B2 (en) | 2020-08-04 |
EP2936292A1 (en) | 2015-10-28 |
US20190302994A1 (en) | 2019-10-03 |
AU2013363975A1 (en) | 2015-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105190508A (zh) | 图形用户界面中的导航速度和获取容易度之间的权衡的用户控制 | |
US10852913B2 (en) | Remote hover touch system and method | |
Ren et al. | 3D selection with freehand gesture | |
US8674948B2 (en) | Methods of interfacing with multi-point input devices and multi-point input systems employing interfacing techniques | |
US9268423B2 (en) | Definition and use of node-based shapes, areas and windows on touch screen devices | |
Hasan et al. | Ad-binning: leveraging around device space for storing, browsing and retrieving mobile device content | |
Kopper et al. | Rapid and accurate 3D selection by progressive refinement | |
US20160188157A1 (en) | Method of real-time incremental zooming | |
US20150113483A1 (en) | Method for Human-Computer Interaction on a Graphical User Interface (GUI) | |
JP4743268B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
Käser et al. | FingerGlass: efficient multiscale interaction on multitouch screens | |
Telkenaroglu et al. | Dual-finger 3d interaction techniques for mobile devices | |
Liu et al. | Bignav: Bayesian information gain for guiding multiscale navigation | |
Kwon et al. | Effect of control-to-display gain and movement direction of information spaces on the usability of navigation on small touch-screen interfaces using tap-n-drag | |
Saidi et al. | Investigating the effects of splitting detailed views in Overview+ Detail interfaces | |
Kosara | Indirect multi-touch interaction for brushing in parallel coordinates | |
Saidi et al. | On-body tangible interaction: Using the body to support tangible manipulations for immersive environments | |
Gao et al. | The effects of audiovisual landmarks on spatial learning and recalling for image browsing interface in virtual environments | |
Danyluk et al. | Look-from camera control for 3D terrain maps | |
CN107272880B (zh) | 一种光标定位、光标控制方法及装置 | |
Ren et al. | The adaptive hybrid cursor: A pressure-based target selection technique for pen-based user interfaces | |
Bacim et al. | Wayfinding techniques for multiscale virtual environments | |
WO2013044938A1 (en) | Method and system for providing a three-dimensional graphical user interface for display on a handheld device | |
US20170068415A1 (en) | Dynamic Information Transfer From Display to Control | |
Dumas et al. | VectorLens: Angular selection of curves within 2D dense visualizations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151223 |
|
WD01 | Invention patent application deemed withdrawn after publication |