用于提供撤消/重做机制的方法和设备的制作方法

文档序号:6476251阅读:304来源:国知局
专利名称:用于提供撤消/重做机制的方法和设备的制作方法
技术领域
本发明涉及用于提供撤消/重做机制的方法、软件和设备。
背景技术
在许多计算机应用程序的用户接口中提供了撤消虔做机制。它们早前 通过重复地按下撤消按钮而引起所述应用程序以相反的顺序逐一地撤消命 令来提供撤消执行过的任务的能力。至此,计算机应用程序存储了用户动 作的历史。大多数包括了撤消命令的用户接口还包括重做命令,其允许用 户重做最后的刚被撤消的命令。以这种方式,用户可以重复地按下撤消按 钮直到他后退到一个适合的点,并且之后如果他后退得太远,或者如果他 决定重做刚撤消的任务,则可以使用重做按钮。除了将鼠标点击用于在历 史中导航,翻阅历史列表并从中选择一项也是已知的(网页浏览器历史)。 撤消虔做对于有限数量的撤消/重做动作可以良好地工作。如果动作的数目 过大,例如在诸如发生在测绘、探测、测量或者绘图中的连续变化的情况 下,通过在离散动作中导航进行撤消变得不可行。
本发明的目的在于提供一种改善了的方法和设备,其具体而言适于连 续变化的应用。

发明内容
本发明的这个和其它目的通过根据权利要求1所述的方法、根据权利
要求11的计算机程序以及根据权利要求14的设备而实现。附属权利要求 2-10, 12-13以及15-16限定了有利的实施例。
根据本发明的一个方面,提供了一种用于提供连续撤消/重做机制的方 法。其包括的步骤为基于连续的可逆用户动作来记录历史;通过诸如滑 块或旋钮的连续用户输入器件在所述历史中导航;以及基于所述连续用户 输入器件的位置来识别和显示所述历史的中间状态。可以将连续性逼近到任何预期的程度,因此根据本发明,用户可以以任何所预期的精度来撤消/ 重做动作。内部计算机表示的有限准确度可能限制连续性的准确度。但是, 在本描述中使用的"连续"撤消/重做机制一词意味着由用户所感知的所述 撤消/重做机制是连续的。
本发明特别用于没有天然粒度的所有应用。所有当前已知的撤消/重做 技术通过仅得到活动的快照而非连续地记录活动,而丢掉了大量的历史, 就这一方面而言其是不完整的。 一个在其中可以有利地使用本发明的应用 的例子为绘图/素描。当绘图或素描时,用户可能希望撤消一个错误例如一 个笔画的末端,因此有效地连续縮短笔画直到用户满意为止。另一个例子 为探测。探测用于(例如)通过在周围移动导管而找到心脏心房壁中具有 异常定时行为的位置,来对心脏中的心律不齐的来源进行定位。探测者可 能决定其处在错误在轨迹上,并且希望回溯至的某一时间点,或者尝试备 选探测路径。
US 6,459,442 Bl在图12中公开了使用时间滑块工具来指定事件的历史 中的时间点。但是,在此专利中所描述的撤消/重做机制是离散的。它仅允 许删除完整的笔画以及笔画集合。
在本发明中优选地,所记录的历史包括与上升/下降时间函数的值连同 地记录的多个事件。将诸如来自滑块或旋钮的模拟输入的连续用户输入器 件的位置转换成上升/下降时间函数的值。基于所述值识别和显示中间状态。 将足够平滑的单调上升/下降时间函数的值与历史事件连同地记录是一种非 常有效的、根据本发明实现连续撤消/重做机制的方式,在所述历史事件中 保存了事件的顺序。
上升/下降时间函数可以是时间本身,并且所记录的函数的值可以是时 间值。这种实施例是易于实现的。时间值可以是事件的时间戳或者事件之 间的时间步长。
基本上,存在两种针对撤消/重做机制来记录历史的方式。第一种方式 为记录可逆的用户动作,以及可能地记录外部事件。这些为可能添增了具 体地仅用于允许撤消所需的信息的用户动作。 一个例子为游戏的情况为 了从赛车游戏中的碰撞恢复,不仅需要记录用户的动作,还需要记录诸如 出现在游戏中的对象的位置及速度的游戏的状态。外部值也可以为测量值。这里的例子为上述用于定位心脏中的心律不齐的来源的探测过程。
第二种方式为记录所有中间状态。该第二种方式在探测应用的情况中 是有用的,但在绘图/素描中用处不大。在这一应用中,每一个中间状态包 括大量的数据,这将可能导致响应迟缓。
所记录的历史可以是连续的。就本发明而言,连续的历史意味着所记 录的时间戳事件对应于最小的可感知到的用户动作。在移动对象的情况下, 这可能取决于显示器的分辨率,或者诸如鼠标的用户输入器件的精度。
根据另一个实施例,识别以及显示与上升/下降时间函数的所确定的值 最接近的所记录的事件和相应的中间状态。在所记录的历史为连续的情况 下,以这种方式提供被用户感知为连续的撤消/重做机制。
根据备选实施例,确定与上升/下降时间函数的值最接近的更早和更晚 的事件。使用插值算法来识别对应于所述值的中间状态。根据这个备选实 施例,所记录的历史不一定是连续的,因此允许记录更少的事件。以这种 方式,需要更少的存储器,并且可能获得更快的响应。这个实施例在诸如 绘制直线或沿直线移动对象的"可预测"的用户动作的情况下是特别的有 用的。当然,所记录的事件的密度不应选择为过低,这是因为其将会影响 所需精度。
在另一个优选实施例中,当在历史中导航时,连续地显出与连续用户 输入器件的位置最接近的状态。因此,用户不需要通过按下按键或点击鼠 标按钮或等等来选择所预期的历史状态。以这种方式,总是向用户直接地 提供用于准确导航至所预期位置的所需信息。
优选地,通过计算机程序来实现根据本发明的方法。
根据本发明的另 一个方面,提供一种用于提供撤消/重做机制的设备, 其包括记录装置,其基于可逆的用户动作来记录历史;连续用户输入器 件,其用于在所述历史中导航;以及识别和显示装置,其基于连续用户输 入器件的位置来识别和显示历史的中间状态。
优选地,所述设备为用于执行电生理过程的医学设备。在电生理过程 中,对于允许如根据本发明的设备所提供的连续撤消/重做机制的用户接口 存在一种的强烈需求。
参考以下描述的实施例,本发明的这些和其它方向将会显而易见并且得以阐明。


通过参考以下附图连同随附的具体说明,本领域技术人员将会更好地 理解本发明,其众多的目的和优势对于本领域技术人员将会变得更显而易 见,其中
图l示出了用于实现根据本发明的方法的存储器结构;
图2示出了在根据本发明的方法中所使用的滑块;
图3示出了第一应用,在其中有利地实现根据本发明的方法;
图4示出了第二应用,在其中有利地实现根据本发明的方法。
在附图中,相似的参考数字表示相似元件。
具体实施例方式
根据本发明,提供了一种用于连续撤消/重做的方法。可以通过载入到 计算机上的计算机程序来实现所述方法。
根据所述方法,记录基于可逆的用户动作的历史。所述历史包括多个 事件。基本上,存在两种记录历史的方式
第一种方式为记录可逆的用户动作,以及可能地记录外部事件。这些 为可能添增了具体地仅用于允许撤消所需的信息的用户动作。 一个例子为 游戏的情况为了从赛车游戏中的碰撞恢复,不仅需要记录用户的动作, 还需要记录诸如出现在游戏中的对象的位置及速度的游戏状态。外部值也 可以为测量值。这里的例子是上述用于定位心脏中心律不齐的来源的探测 过程。
第二种方式为完整地记录所有中间状态。
图l示意性示出了用于实现记录历史的步骤的存储器结构10。所述存 储器结构10包括用于存储所述历史事件的第一部分20。根据实现方式,所 述历史事件可以为用户动作或者中间状态。在存储器的第二部分30中,存 储了上升时间函数的值,其与第一部分20中的历史事件相关联。或者,可
以使用下降时间函数的值。所存储的值可以是对应于历史事件的函数的值 或者所述事件之间的步长值。由于易于实现,上升时间函数可以简单地为时间本身。在这种情况下,可以存储对应于事件的时间戳或者事件之间的 时间步长。但是,可使用任何其它足够平滑的单调上升时间函数,在该时 间函数中保存了用户事件的顺序。这里的一个例子是一种时间函数,其在 存在许多用户事件的时期中相对快速地增加而在存在少量用户事件的时期 中缓慢地增加。当在历史中导航时,这允许用户快速地通过历史中的"安 静"时期。
现在将针对上升时间函数为时间本身,并将历史事件与相应的时间戳 连同记录的情况进一步解释所述方法。
根据第一个例子,所记录的历史为连续的。这意味着所记录的时间戳 事件对应于最小的可感知用户动作。在移动对象的情况下,这可能取决于 显示器的分辨率,或者,诸如鼠标的用户输入器件的精度。
向用户提供如图2所示的连续用户输入器件40用于在历史中导航。所 示的用户输入器件40为滑块,但也可使用其它的诸如旋钮的连续用户输入 器件。用户可通过移位滑块而在所述历史中向前或向后移动。如果用户向 后移动,这导致撤消所有先前的动作。如果用户向前移动,则再一次重做 先前被撤消的任何动作。所述滑块可以由物理器件实现,但其也可作为图 形用户接口上的按钮而实现。
将来自滑块的模拟输入转换成一时间点。之后,所述撤消机制识别与 所选择的时间点最接近的所存储的用户动作或中间状态。
原则上可以使用任何接近度的量度。基本上,关键在于使用时间上接 近而在状态上并非那么接近,以保存因果关系以及对于用户来说的连续感。 系统显示属于该时间点的中间状态。
当在历史中导航时,系统连续地示出了与所选择的位置最接近的状态。 以这种方式避免了用户必须通过诸如按下按键或点击鼠标按钮的另一用户 输入动作来激活所选择的中间状态。
根据所描述的方法,提供了一种被用户感知为连续的撤消/重做机制。
在一个备选例子中,确定比对应于滑块位置的时间点早的最接近时间 戳事件,并确定比对应于滑块位置的时间点晚的最接近时间戳事件。之后 使用插值算法来识别对应于该时间点的中间状态。显示这一中间状态。这 允许降低所记录的历史事件的密度。这一备选例子所基于的观察为对于一些用户动作,例如沿直线移动对象或者绘制直线,或者旋转对象,不需要 具有非常密集的所记录的历史。由于这些动作的可预测性,可以使用插值 来提供仍被用户感知为连续的撤消/重做机制。另外,用户可甚至后退到实 际上未被记录的(近似的)状态。
对插值的使用允许随时间推移时间分辨率发生退化,以避免所述历史 变得无法操作的大历史更早部分可能不需要更近的历史所需要的时间分 辨率。举一个例子以10msec的间隔记录最后10秒,以100msec的间隔 记录在其之前的最后100秒,以1秒的间隔记录在其之前的1000秒,等等。
本方法可用于没有天然粒度的所有应用。这里的一个例子为医学系统 领域,具体而言,电生理过程领域。 一个电生理过程的例子为定位心脏中 心律不齐的来源。这可以通过在周围移动导管而找到心脏的心房壁中具有 异常定时行为的位置而完成。这通常通过在不同的位置处重复地测量心脏 组织的相对激活定时(离所述来源越近,所述激活在时间上越早)而完成。 图3示意性示出了医学系统的框图,其中,所述导管在周围移动。除了所 述导管IOO,系统包括插线110和驱动机制120。医务人员可通过在计算机 130上发出命令而控制所述移动。所述计算机包括用于示出导管的位置的显 示器140,以及包括了用于移动所述导管的键盘150和鼠标160的输入装置 等。它还包括用于连续撤消/重做的滑块40。所述计算机130还包括其它已 知的元件,例如处理器、存储器等(未示出)。
用于定位心律不齐的来源的导管的移动为探索性过程,其中回溯是非 常重要的。操作者可能决定其处于错误的轨迹,并且需要退回至一个己知 的、可接受的点,之后开始备选的探测路径。
还可以有利地使用本方法用于诸如配准的医学领域中的其它应用。配 准为将来自不同来源(例如,X射线和MR)的两幅图像对准从而使得两幅 图像中的解剖特征重合的过程。由于这本质上涉及沿6个自由度(3个平移 +3个旋转)移动30对象,因此使用2D投影(图形显示)以给出用户反馈, 对于用户而言这是一项困难的任务。
图4中示意性地示出了这一点。其示出了 2维对象50以及三维对象60。 用户可沿箭头70所指示的连续标度来移动CT对象50,以及沿箭头80所 指示的连续标度来移动MRI对象60。用户以一种已知的方式执行这种移动,例如通过选择对象并通过鼠标对其进行拖拽。在图中,示出了在连续移动 期间两个对象的大量不同位置。最后,可以有利地使用这里所描述的连续 撤消/重做机制用于在连续标度上良好地调整所述对象中的一个直到其完全 地映射到另一个对象上。
另外,本发明可应用于涉及诸如远足的探险的应用GPS器件通常记 录全部行程。利用上述方法,用户可消除行程的最后部分(采取了错误的 转向的部分)并且后退返回到已知的最后一个正确点。
另一个应用为多维("艺术")设计当操作多维参数设计时,针对导 航过程而描述的相同的情况可能发生经过了 "恰当"的设计,用户停止 操作过迟。
当然,所述方法也可用于绘图/素描应用当绘图或素描时,用户可能 希望撤消一个错误,例如笔画的末尾,因此连续地縮短笔画直到用户满意 为止。
另一个在其中可使用所述方法的应用为计算机游戏/仿真在许多游戏 中,用户可使用"保存游戏"以能够退回到具体时刻。这种繁琐的事情(人 们可能忘记保存游戏,保存游戏是一件额外的工作,其使人们从游戏比赛 中分心)可以通过当前发明的方法而避免。
这里,重要的是允许用户利用指向正确方向的控制来重新开始游戏比 赛。如果用户在赛车游戏中碰撞了他的车,利用上述方法,其能够将动作 返回。但是一旦游戏重新开始,需要保证车轮指向正确的方向,并且以恰 好正确的量压下加速器踏板,等等。 一种解决方法可能为力反馈技术在 重新开始游戏比赛之前,在正确的方向上转动车轮,将踏板移动至正确的 深度。
如本领域技术人员将会领会到的,可以在遍及广范围的应用上修改和 改变在本申请中所描述的创新概念。
因此,专利的主题的范围不应受到任何所讨论的具体示范性教导的限 审U,而是由所附的权利要求所限定。
权利要求中的任何参考标记不应解释为限制权利要求的范围。
权利要求
1、一种用于提供连续撤消/重做机制的方法,其包括如下步骤a基于连续可逆的用户动作记录历史;b通过连续用户输入器件(40)在所述历史中导航;c基于所述连续用户输入器件的位置,识别和显示所述历史的中间状态。
2、 根据权利要求1所述的方法,其中,在步骤"a"中所记录的历史 包括与上升/下降时间函数的值连同地记录的多个事件(20, 30),并在步骤"c"中,将所述连续用户输入器件(40)的位置转换成所述上升/下降时间 函数的值,且基于所述值识别和显示所述中间状态。
3、 根据权利要求2所述的方法,其中,所述上升/下降时间函数为时间, 并且所记录的函数的值为时间值。
4、 根据权利要求3所述的方法,其中,所述值为所述事件的时间戳。
5、 根据权利要求3所述的方法,其中,所述值为所述事件之间的时间 步长。
6、 根据权利要求2所述的方法,其中,所述事件为可逆的用户动作。
7、 根据权利要求2所述的方法,其中,所述事件为中间状态。
8、 根据权利要求2所述的方法,其中,步骤"c"包括识别与所述上 升/下降时间函数的值最接近的所记录的事件,并且确定和显示相应的中间 状态。
9、 根据权利要求1所述的方法,其中,连续地执行步骤"c"。
10、 根据权利要求2所述的方法,其中,步骤"c"包括确定与所述上 升/下降时间函数的值最接近的更早和更晚的事件,使用插值算法来识别对应于所述值的所述中间状态,并且显示所得到的中间状态。
11、 一种包括了计算机程序代码模块的计算机程序,当所述程序在计 算机上运行时,其适于执行权利要求1-10的任何步骤。
12、 一种根据权利要求ll所述的计算机程序,其具体实现在计算机可 读介质上。
13、 携带有根据权利要求11所述的计算机程序的载体介质。
14、 一种用于提供撤消/重做机制的设备,其包括a记录装置(10),其用于基于连续可逆的用户动作来记录历史; b连续用户输入器件(40),其用于在所述历史中导航; c识别和显示装置(140),其用于基于所述连续用户输入器件(40) 的位置来识别和显示所述历史的中间状态。
15、 根据权利要求14所述的设备为医学设备。
16、 根据权利要求13所述的设备,其中,所述设备适于执行电生理过程。
全文摘要
描述了一种用于提供连续撤消/重做机制的方法。所述方法包括如下步骤基于可逆的用户动作来记录多个时间戳事件的历史;通过连续用户输入器件在所述历史中导航;将所述连续用户输入器件的位置转换成一时间点;以及基于所述时间点识别和显示所述历史的中间状态。
文档编号G06F9/44GK101578582SQ200880001909
公开日2009年11月11日 申请日期2008年1月8日 优先权日2007年1月11日
发明者G·莫伊斯, N·W·舍林格胡特 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1