使用可视陆标来组织图的制作方法

文档序号:6594076阅读:241来源:国知局
专利名称:使用可视陆标来组织图的制作方法
使用可视陆标来组 织图背景1.背景和相关技术计算机系统和相关技术影响社会的许多方面。的确,计算机系统处理信息的能力 已转变了人们生活和工作的方式。计算机系统现在通常执行在计算机系统出现以前手动执 行的许多任务(例如,文字处理、日程安排和会计等)。最近,计算机系统彼此耦合并耦合到 其他电子设备以形成计算机系统和其他电子设备可以在其上传输电子数据的有线和无线 计算机网络。因此,许多业务相关进程的执行分布在多个不同的计算机系统和/或多个不 同的计算组件上。例如,可使用图表应用来生成流程图、组织图、工作流程图等。大多数图表应用至 少包括工具栏和画布区域。用户可以从工具栏中拉取形状(例如,圆圈、矩形、正方形、菱形 等)以便添加到画布。形状可以彼此连接以指示形状之间的关系。用户还可重新排列和移 除画布中的现有形状和连接。至少某些图表应用利用自由形式的画布以允许用户完全控制画布上的形状的组 织和间隔。用户在他们觉得合适时不受限地自由(重新)排列形状和连接。由此,自由形 式的画布给予用户针对其确切的规约来创建图的显著灵活性。然而,使用自由形式的画布来创建图也可能是乏味且劳动密集的。图的含义在组 织并适当地间隔图中的形状时更适当地传达(例如,在视觉上感知到)。由此,每一次图改 变时(例如,新形状被引入图或者从图中移除现有形状或在图中移动形状),形状和连接的 组织和间隔可能需要调整以适当地传达图的新含义。不幸的是,使用自由形式的画布,用户被要求自己单独地作出所有这些调整,诸如 例如断开并重新连接形状、像素对齐等。对于许多图,且尤其是较大和/或较复杂的图,这 些调整可能是众多的并且可能花费相当的时间量来实现。此外,对图的单个改变可具有导 致大量形状变得未经组织和/或不适当地间隔的连锁反应。因此,某些图表应用包括自动化机制,诸如例如自动布局算法,以便协助用户响应 于对图的改变来适当地调整形状和连接。自动布局算法可具有实质上规定图中的形状和连 接的放置的各种布局(例如,组织和间隔)约束。自动布局算法还可包括各种不同的功能 中的一个或多个。例如,当一形状(新的或移动的)被插入到图中的指定位置时,自动布局算法可以 自动将该形状从该指定位置移至更适当(例如,附近)的位置(画布上)以遵照布局约束。 类似地,当一形状从图中的位置移除(删除或移动)时,自动布局算法可以自动调整先前连 接到所移除的形状的形状(画布上)以遵照布局约束。当在图中移动形状时,可同时实现 这些功能。自动布局算法还可包括响应于添加、删除或移动形状来调整图中的任何及其他 形状和连接以遵照布局约束(例如,为了补偿连锁反应)的功能。因此,自动布局算法可用于自动排列图中的形状和连接以便更好地传达图的新含 义。某些自动布局算法甚至准许调整布局约束以使得用户具有对图的布局的某种控制。然 而,自动布局算法通常是规定的并且不准许对图的非顺应改变(即使基于经调整的布局约束)。此外,用户通常无法在插入、移动或删除形状之前知道自动布局算法将如何调整形状 和/或周围连接的形状的位置。通常, 形状可被放置在相对于图中的现有形状的任何数量的位置处且遵照布局约 束。然而,用户可能无法在作出改变之前知道什么顺应位置是相对于现有形状的。因此,用 户必须依靠自动布局算法来选择顺应位置,基于用户对图的意图,该位置可能不是最适当 的顺应位置。的确存在向另外的自由形式的图提供受限的组织的某些其他工具。这些其他工具 可提供诸如对齐、居中和分布等能力。然而,这些其他工具具有多个缺陷。例如,这些工具 通常不被呈现在画布上。此外,对于更新这些工具不自动重新应用,诸如例如添加新形状。 由此,必须(以某种程度的频率且在某些环境中基本上是不断地)重新应用这些工具以调 用其功能。另外,这些其他工具通常是不可定制的。缺少可定制性使得难以构造和维护专 用布局。简要概述本发明涉及用于使用可视陆标来组织图的方法、系统和计算机程序产品。在某些 实施例中,使用可视陆标来组织图。一种计算机系统呈现表示图的一个或多个可视元素。该 计算机系统在图中连同该一个或多个可视元素一起呈选可视陆标。可视陆标配置有将要应 用于相关联的可视元素以便相对于可视陆标来定位相关联的可视元素的一个或多个属性。计算机系统接收选择一个或多个可视元素中的要放置在图中的一个可视元素的 输入。计算机系统接收指示所选可视元素要与可视陆标相关联的进一步输入。计算机系统 根据可视陆标的一个或多个对应的属性来自动相对于可视陆标定位所选可视元素,以便组 织图中的所选可视元素。所选可视元素响应于接收到进一步输入而定位。在其他实施例中,定制可视陆标以便在组织图时使用。计算机系统访问并可视地 呈现可用于组织图中的可视元素的存储的可视陆标。计算机系统根据用户输入的输入来更 改可视陆标的视觉呈现。计算机系统根据用户输入的输入来配置可视陆标的一个或多个属性。所配置的一 个或多个属性指示如何相对于可视陆标来自动定位相关联的可视元素以组织图中的相关 联的可视元素。计算机系统存储经更改的视觉呈现以及所配置的一个或多个属性作为新的 可视陆标。新的可视陆标供在组织图中根据用户输入的输入来使用。提供本概述是为了以精简的形式介绍将在以下详细描述中进一步描述的一些概 念。本概述并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确 定所要求保护的主题的范围。本发明的其他特征和优点将在随后的描述中阐述,并且部分地将从本说明书中显 而易见,或可以通过本发明的实施来获知。本发明的特征和优点可通过在所附权利要求书 中特别指出的工具和组合来实现和获得。本发明的这些和其他特征将通过以下描述和所附 权利要求书变得更加显而易见,或可通过对下文中所述的本发明的实践来领会。附图简述为了描述可以获得本发明的上文所列举的及其他优点和特征的方式,将通过参考 附图中所示的本发明的各具体实施例来呈现上文简要描述的本发明的更具体的描述。可以 理解,这些附图只描绘了本发明的各典型实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释本发明,在附图中

图1示出了方便使用可视陆标来组织图的示例计算机体系结构。图2示出了用于使用可视陆标来组织图的示例方法的流程图。

图3A-3D示出了使用可视陆标来组织图的示例。图4A-4E示出了使用可视陆标来组织图的另一示例。图5A-5C示出了使用可视陆标来组织图的另一示例。图6A和6B示出了使用可视陆标来组织图的另一示例。图7A-7C示出了使用可视陆标来组织图的另一示例。图8A-8C示出了使用可视陆标来组织图的另一示例。图9A和9B示出了使用可视陆标来组织图的另一示例。图10A-10D示出了可用于组织图中的元素的拟合条的示例。图IlA和IlB示出了可用于组织图中的元素的拟合贝塞尔曲条的示例。图12A-12C示出了可用于组织图中的元素的拟合弧的示例。图13A-13C示出了可用于组织图中的元素的重力井(gravity well)的示例。图14A和14B示出了可用于组织图中的元素的拟合栈的示例。图15示出了可用于组织图中的元素的粘性框(sticky box)的示例。图16示出了可用于组织图中的元素的粘性套索(sticky lasso)的示例。图17示出了用于定制可视陆标的示例方法的流程图。图18示出了定制的可视陆标的示例。详细描述本发明涉及用于使用可视陆标来组织图的方法、系统和计算机程序产品。在某些 实施例中,使用可视陆标来组织图。一种计算机系统呈现表示图的一个或多个可视元素。该 计算机系统在图中连同该一个或多个可视元素一起呈选可视陆标。可视陆标配置有将要应 用于相关联的可视元素以便相对于可视陆标来定位相关联的可视元素的一个或多个属性。计算机系统接收选择一个或多个可视元素中的要放置在图中的一个可视元素的 输入。计算机系统还接收指示所选可视元素要与可视陆标相关联的输入。计算机系统根据 可视陆标的一个或多个对应的属性来自动相对于可视陆标定位所选可视元素,以便组织图 中的所选可视元素。所选可视元素响应于接收到进一步输入而定位。在其他实施例中,定制可视陆标以便在组织图时使用。计算机系统访问并可视地 呈现可用于组织图中的可视元素的存储的可视陆标。计算机系统根据用户输入的输入来更 改可视陆标的视觉呈现。计算机系统根据用户输入的输入来配置可视陆标的一个或多个属性。所配置的一 个或多个属性指示如何相对于可视陆标来自动定位相关联的可视元素以组织图中的相关 联的可视元素。计算机系统存储经更改的视觉呈现以及所配置的一个或多个属性作为新的 可视陆标。新的可视陆标供在组织图中根据用户输入的输入来使用。本发明的各实施例可以包括或利用包含计算机硬件的专用或通用计算机,这将在 下文中更详细地讨论。本发明范围内的各实施例还包括用于承载或存储计算机可执行指令 和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或 专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限 制,本发明的各实施例可包括至少两种完全不同的计算机可读介质物理存储介质和传输 介质。物理存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁 存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通 用或专用计算机访问的 任何其他介质。“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传输电子 数据的一个或多个数据链路。当信息通过网络或另一通信连接(硬连线、无线、或硬连线或 无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质 可包括可用于携带计算机可执行指令或数据结构形式的所需程序代码装置并可由通用或 专用计算机访问的网络和/或数据链路。上面各项的组合也应该包括在计算机可读介质的 范围内。此外,应当理解,在到达各种计算机系统组件之后,计算机可执行指令或数据结构 形式的程序代码装置可从传输介质自动转移到物理存储介质(或者相反)。例如,通过网 络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如, “NIC”)内的RAM中,然后最终被传送到计算机系统RAM和/或计算机系统处的较不易失的 物理存储介质。由此,应当理解,物理存储介质可被包括在同样(或甚至主要)利用传输介 质的计算机系统组件中。计算机可执行指令包括例如使通用计算机、专用计算机或专用处理设备执行某一 功能或一组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言 等中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主 题,但可以理解的是,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述 特征和动作是作为实现权利要求的示例形式而公开的。本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络 计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息 处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型 计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可以在其中通 过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路 的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实践。在分布式系 统环境中,程序模块可以位于本地和远程存储器存储设备中。图1示出了方便自动布局顺应图的灵活创建的示例计算机体系结构100。参考图 1,计算机体系结构100包括用户界面101、图编辑器102、和呈现模块107。所描绘的组件中 的每一个可通过诸如例如局域网(“LAN”)、广域网(“WAN”)和甚至因特网等网络(或作为 网络的一部分)彼此连接。因此,所描绘的组件中的每一个以及任何其他连接的组件都可 以创建消息相关数据并通过网络交换消息相关数据(例如,网际协议(“IP”)数据报和利 用IP数据报的其他更高层协议,诸如传输控制协议(“TCP”)、超文本传输协议(“HTTP”)、 简单邮件传输协议(“SMTP”)等)。输入设备114可包括各种输入设备,诸如例如键盘和/或鼠标。用户113可利用输 入设备114来将数据输入到计算机体系结构100中。显示设备108可将从计算机体系结构100输出的数据可视地展示在显示画面109上。用户113可在视觉上感知在显示画面109 处显示的数据。一般而言 ,用户界面101被配置成用作用户113和计算机体系结构100的其他组 件之间的中间软件层。用户界面101可用诸如例如驱动程序等的适当的软件来配置以便从 输入设备114接收输入并将输出发送至显示设备108。因此,用户界面101可将用户输入转 发到其他组件,诸如例如图编辑器102。用户界面101还可将可呈现的图像数据从诸如例如 呈现模块107等的其他组件转发到显示设备108。图编辑器102被配置成编辑可呈现图的图数据。图数据可指示图中的可视元素的 形状类型、形状位置和形状之间的连接。响应于用户输入,图编辑器102可添加、删除和更 改表示图中的可视元素的形状位置、形状类型和连接的图数据。在某些实施例中,用户动作 导致图编辑器102对图数据执行一系列编辑。例如,响应于将可视元素放置在图中,图编辑 器102能够a)编辑图数据以包括可视元素的形状的位置和类型以及b)编辑图数据以包括 形状和其他适当的形状之间的连接。图编辑器102还可访问来自可视陆标储存库135的可视陆标并且在图数据中包括 表示可视陆标的数据。由此,类似于图中的形状,图编辑器102还可添加、删除和更改表示 图中的可视陆标的可视陆标位置、类型和连接的图数据。可视陆标操作也可以响应于用户 输入。呈现模块107被配置成从图数据中生成互连的可视元素(形状和/或可视陆标) 以便在显示设备108处呈现图。图可以是各种不同类型的图中的任一种,包括流程图、工作 流程图、组织图、过程图、示意图等。图可包括包含几何形状在内的各种不同的可视元素中 的任一种,诸如例如圆圈、菱形、正方形、矩形、三角形等。可视元素之间的连接可被表示为 线条。如图所示,呈现模块107包括视觉辅助模块117。视觉辅助模块117被配置成向用 户提供视觉反馈以帮助用户进行图创建和编辑。例如,在用户选择了图中的可视元素之后, 视觉辅助模块117可提供指示对该视觉元素的选择的视觉反馈。视觉反馈可包括更改元素 和连接的视觉特性以指示选择(例如,将视觉元素的轮廓变灰)。视觉反馈还可包括用附加 视觉信息来补充图以帮助用户布局图中的元素和连接。图3A-3D示出使用可视陆标来组织图300。图2示出了用于使用可视陆标来组织图的示例方法200的流程图。方法200将参 考计算机体系结构100中所描绘的组件和数据并参考图300来描述。方法200包括呈现表示图的一个或多个可视元素的排列的动作(动作201)。方 法200包括呈现可视陆标以及图中的一个或多个可视元素的动作,该可视陆标配置有将应 用于相关联的可视元素以便相对于可视陆标来定位相关联的可视元素的一个或多个属性 (动作202)。例如,用户界面101可以在显示设备108处呈现可视元素141。可视元素141 可包括元素和一个或多个可视陆标。例如,参考图3A,元素301和拟合条302可以呈现在 显示器109上。拟合条302可以配置有将应用于元素301以便相对于拟合条302来定位元 素301的一个或多个属性。例如,拟合条302可包括在拟合条302上垂直对齐元素301的 属性。方法200包括接收选择要放置在图中的可视元素的输入的动作(动作203)。例如,用户界面101可接收用户元素选择输入133(例如,对元素301的鼠标点击)。用户界面 101可确定用户元素选择输入133是对新的或现有可视元素的选择。由此,用户界面101可 将选择输入 转发给呈现模块107。可选择新元素(例如,从工具栏中)以包括在图中。可选择现有元素(例如,已经 在图中)以便在图中移动。例如,参考图3A,可选择元素301(新元素或来自图300中的别 处的元素)以便包括在图300中或者在图300中移动。当选择要移动的现有元素时,现有 元素的当前表示可保留在其当前位置。连同当前表示,可以创建现有元素的所选临时表示。 元素的所选临时表示可以在图中移动以表示该元素到图中的不同位置的可能移动。如果最 终产生现有元素的实际移动,则该元素的当前表示移至新位置。方法200包括提供指示所选可视元素已被选择的视觉反馈的动作(动作204)。例 如,视觉辅助模块117可提供元素选择视觉反馈142以便显示在显示设备108处。元素选 择视觉反馈可由于以某种方式更改所选可视元素的视觉特性以指示它被选择而产生。例 如,现在参考图3B,用户113已经用光标391选择了元素301。如图所示,元素301用虚线 (与实线形成对比)来表示以指示元素301已被选择。然而,其他视觉特性改变,诸如例如 颜色、亮度、大小、形状的改变等,也是可能的。对虚线(或其他视觉特性)的视觉感知准许 用户113更容易地确定元素301已被选择。如果元素301是现有元素,则元素305的当前 表示可保留在图300中的别处(未示出)。方法200包括接收指示所选可视元素要与可视陆标相关联的进一步输入的动作 (动作205)。例如,参考图1和3C两者,用户界面101可检测到指示元素301已经移动以 使其至少部分地与拟合条302位于同处(例如,显示画面109上)的移动输入132。用户 界面101可确定移动输入132与呈现模块107相关并且可将移动数据162转发给呈现模块 107。呈现模块107可从移动数据162中确定元素301至少部分地与拟合条302位于同处。方法200包括通过响应于接收到进一步输入而根据可视陆标的一个或多个对应 的属性来相对于可视陆标定位所选可视元素,来更新一个或多个可视元素的排列以便组织 图中的所选可视元素的动作(动作206)。例如,响应于移动数据162 (例如,元素301与拟 合条302位于同处),图编辑器102可通过根据拟合条302的一个或多个属性来相对于拟合 条302定位元素301来更新图数据112 (例如,表示图300)。可执行相对于拟合条302定位 元素301以组织图300中的元素301。方法200包括呈现一个或多个可视元素的已更新的排列以便反映图中的所选可 视元素的组织的动作(动作207)。例如,参考图1和3D,呈现模块107可将已更新的可视 元素143 (例如,如图3D中排列的元素301和拟合条302)发送到显示设备109。显示设备 109可呈现已更新的可视元素143。例如,如图3D所描绘的,元素301在拟合条302上垂直 对齐。因此,图3A-3D示出了使用拟合条来灵活地组织图中的元素的示例。然而,还构想 各种其他实施例。先前和随后描述的图中的任一个可以在显示设备(例如,显示设备108) 的显示画面(例如显示画面109)处显示并且通过该显示画面来交互。本发明的各实施例方便标记元素以相对于可视陆标来定位。例如,图4A-4E示出 了标记多个元素以便将拟合条的属性应用于图400中的多个元素的示例。如图4A所描绘的,图400包括元素401、402和403。元素401、402和403在图400中的任意位置。如图4B 所描绘的,使用光标491来对元素401应用标记指示符411。如图 4C所描绘的,使用光标491来对元素402应用标记指示符412。元素401保持用标记指示 符411来标记。如图4D所描绘的,使用光标491来对元素403应用标记指示符413。元素 401和402保持分别用标记指示符411和412来标记。元素的标记可以在选择输入161中 表示。响应于标记来将元素变为虚线可以在元素选择视觉反馈142中表示。在标记元素403后,用户113可提交进一步输入,诸如例如从菜单或按钮栏(由用 户界面101呈现)中选择项目以指示元素401、402和403要与拟合条(或某一其他可视陆 标)相关联。该进一步输入可以在用户界面101处接收并被转发给呈现模块107和/或图 编辑器102。呈现模块107和图编辑器102可以互操作以自动更新图400的排列。例如,呈 现模块107表现元素401、402和403的已改变的位置并且图编辑器102可更改图数据112 以包括拟合条404。元素401、402和403可根据拟合条404的属性(例如,元素之间的均勻 间隔和垂直对齐)来相对于拟合条404定位。呈现模块107可以在显示设备109处呈现图400的已更新的排列(用已更新的可 视元素144来表示)。如图4E所描绘的,元素401、402和403在拟合条404上均勻地间隔 并且在拟合条404上垂直对齐。本发明的各实施例方便向已经包括一个或多个元素的可视陆标添加元素。图 5A-5C示出了在图500中向拟合条添加元素的示例。如图5A所描绘的,所选元素501 (新元素或来自图500中的别处的现有元素)用光 标591来选择并且被移动以部分地与拟合条503位于同处。例如,通过用户输入,用户113 可将所选元素501拖到拟合条503上。现有元素502已经根据拟合条503的属性而定位在 拟合条503上。通过进一步用户输入,用户113可指示所选元素501要被定为在拟合条503上。例 如,用户113可将所选元素501放到拟合条503上。响应于检测到所选元素501被放到拟 合条503上,图500可以自动更新并呈现在显示画面109上。例如,如图5B所描绘的,拟合 条503调整大小至经调整大小的拟合条503R以容纳所选元素501。如图5C所描绘的,所选 元素501和现有元素502根据经调整的拟合条503R的属性在经调整的拟合条503R上调整 并对齐。本发明的各实施例方便在可视陆标上扩展现有元素。图6A和6B示出了图600中 的在拟合条上扩展元素的示例。如图6A所描绘的,元素601和602根据拟合条603的属性来相对于拟合条603定 位。元素602用光标691来选择(例如,通过用户输入)。通过进一步用户输入,用户113 可指示元素602要在拟合条603上扩展。例如,用户113可以从菜单和按钮栏(由用户界 面101呈现)中选择扩展项目。响应于选择扩展项目的进一步用户输入,图600可以自动更新并呈现在显示画面 109上。例如,如图6B所描绘的,拟合条603调整大小至经调整大小的拟合条603R以容纳 扩展的元素602E。扩展的元素602E还揭示三个子元素,即元素612、622和632。元素601、 扩展的元素602E以及元素612、622和632根据经调整的拟合条603R的属性在经调整的拟 合条603R上调整并对齐。本发明的各实施例方便将可视陆标上的元素移至可视陆标上的不同位置。图7A-7C示出了图700中的在拟合条上移动元素的示例。如图7A所描绘的,元素701和702根据拟合条703的属性而定为在拟合条703上。 随后接收到的用户输入指示元素702将从元素701的右侧移至元素701的左侧。例如,元 素702可以用光标791来选择并且从元素701的右侧拖到元素701的左侧。如图7B所描 绘的,元素702 (已选择)被定位到元素701的左侧。

通过进一步用户输入,用户113可指示元素702将在拟合条703上被定位到元素 702的左侧。例如,用户113可将元素702 (已选择)放在图7B中所指示的位置处。响应 于检测到元素702 (已选择)被放到拟合条703上,图700可以自动更新并呈现在显示画面 109上。例如,如图7C所描绘的,元素701和702根据拟合条703的属性在拟合条703上调 整并对齐。元素702被定位在元素701的左侧。本发明的各实施例方便移动可视陆标以便移动位于该可视陆标上的所有元素。图 8A-8C示出了图800中的移动拟合条以便移动该拟合条上的所有元素的示例。如图8A所描绘的,元素801和元素802根据拟合条803的属性来相对于拟合条803 定位。随后接收到的用户输入指示要选择拟合条803。例如,拟合条803可以用光标891来 选择。在选择后,拟合条803可以在图800中移动。例如,如图8B所描绘的,拟合条803可 以向右下移至(已选择拟合条803的)新位置。元素801和802与拟合条803 —起移动。 进一步用户输入可指示拟合条803将停留在图800中的该新位置。可使用拖放操作来将拟 合条803以及元素801和802 —起移至该新位置。本发明的各实施例方便切换可视陆标的可见性。图9A和9B示出了图900中的切 换拟合条的示例。如图9A所描绘的,元素901相对于拟合条911定位,元素902、903和904相对于 拟合条912定位,而元素905、906和907相对于拟合条913定位。拟合条914被指示为对 接收到的可视元素可用。拟合栈921提供用于在排列图900中的元素的网格结构。例如, 拟合栈921可具有维护相邻拟合条之间的所定义的间隔(实质上维护多行)的属性。每一 个拟合条(行)可以水平调整大小以便在适当时容纳元素。当向图900添加元素时,这些 元素可占据新拟合条或现有拟合条上的位置。如图9B所描绘的,拟合栈921关闭(包括拟合条914,因为它是空的)。然而,保 持根据图9A的可视陆标的属性的元素排列。由此,元素可使用可视陆标和随后隐藏的可视 陆标来组织,以使得只保持经组织的元素排列。由此,一般而言,可视陆标可被添加到图以帮助组织图中的元素。可使用各种不同 类型的可视陆标。每一种类型的可视陆标都可包括为与这种类型的可视陆标相关联的元素 定义排列和调整的可配置属性。可配置属性可定义相关联的元素如何相对于可视陆标来定 位。可配置属性还可定义相关联的元素如何相对于彼此定位。随后,图中的元素可以与可 视陆标相关联并且根据可视陆标的可配置属性来排列和/或调整。例如,图10A-10D示出了可用于组织图中的元素的拟合条的多个示例。图IOA描 绘了相对于水平拟合条1003定位的元素1001和1002。水平拟合条1003的一个属性可指 示元素将在水平拟合条1003上水平地均勻间隔。图IOB描绘了相对于水平拟合条1014定 位的元素1011、1012和1013。水平拟合条1014的一个属性可指示水平拟合条1014上的元 素1012和元素1013之间的增加的间隔。图IOC描绘了相对于垂直拟合条1024定位的元素1021、1022和1023。垂直拟合条1024的一个属性可指示元素将在垂直拟合条1024上垂 直地均勻间隔。图IOD描绘了对角拟合条1033上的元素1031和1032。图IlA和IlB示出了可用于组织图中的元素的拟合贝塞尔曲条的示例。拟合贝塞 尔曲条是拟合条的变体。图1IA描绘了拟合贝塞尔曲条1105上的元素1101、1102、1103和 1104。拟 合贝塞尔曲条1105的一个属性可以是它具有较不显著的曲率。图IlB描绘了拟 合贝塞尔曲条1115上的元素1111、1112、1113和1114。拟合贝塞尔曲条1105的一个属性 可以是它具有较显著的曲率。图12A-12C示出了可用于组织图中的元素的拟合弧的示例。拟合弧类似于拟合条 但形状是椭圆形的。图12A描绘了拟合弧1206上的元素1201、1202、1203、1204和1205。 拟合弧1206的属性可包括较小的半径和较大的角度(即,接近于完整的圆圈)。图12B描 绘了拟合弧1214上的元素1211、1212和1213。拟合弧1214的属性可包括较小的半径和 较小的角度(即,较远离完整的圆圈)。图12C描绘了拟合弧1224上的元素1221、1222和 1223。拟合弧1224的属性可包括较大的半径和较小的角度。此外,拟合条、拟合贝塞尔曲条和拟合弧可具有各种其他可配置公共属性。例如, 拟合条、拟合贝塞尔曲条和拟合弧可包括定义以下内容的可配置属性分布是均勻的还是 自由形式的、下对齐、上对齐、左对齐和右对齐中的一个或多个(在适用时)、旋转角度(例 如,45度、90度等)以及间隔(例如,以像素计)。重力井可以是椭圆形的并且可以按需调整大小。重力井的“影响场”中的添加的形 状可以朝重力井移动,如由基于力的算法定义的。图13A-13C示出了可用于组织图中的元 素的重力井的示例。图13A描绘了重力井1304的影响场中的元素1301、1302、1303。重力 井1304是圆形的。图13B描绘了重力井1314的影响场中的元素1311、1312和1313。重力 井1314是椭圆形的并且是垂直方向的。图13C描绘了重力井1323的影响场中的元素1321 和1322。重力井1323是椭圆形的并且是对角方向的。重力井可包括定义范围(例如,直 径)和分布(例如,平衡的、上、下、左、右等)的可配置属性。拟合栈可用于根据堆栈网格结构来排列元素。当将形状添加到路径时,这些形状 可占据新的行或现有行中的单元格。新的行和单元格可以在向拟合栈添加元素时生成。图 14A和14B示出了可用于组织图中的元素的拟合栈的示例。图14A描绘了包括拟合条1411、 1412、1413和1414的拟合栈1421。图14B描绘了位于拟合条1411、1412和1413上的互连 元素1401-1407。拟合栈可包括定义单元格分布(例如,自由形式或均勻地)、栈左、栈中、 栈右、旋转(例如,45度、90度等)、以及行间隔的可配置属性。粘性框是矩形的并且担当可用于组织、移动和管理元素集合的可视组。图15示出 了可用于组织图中的元素的粘性框的示例。图15描绘了粘性框1505中的元素1501-1504。 粘性套索是任意形状的并且担当可用于组织、移动和管理元素集合的可视组。图16示 出了可用于组织图中的元素的粘性套索的示例。图16描绘了粘性套索1611中的元素 1601-1605。元素1606、1607和1608在粘性套索1611之外。粘性套索方便那样使用不适 合更标准的几何形状的感兴趣的分组区域。粘性框和粘性套索可包括定义扩展/收缩和调 整大小/重新规划路径的可配置属性。一般而言,本发明的各实施例准许用户定制可视陆标以使得可视陆标展示所需行 为。本发明的各实施例还包括定制单独的可视陆标以创建新可视陆标。例如,可修改现有拟合弧的半径(增大或减小)以创建新的拟合弧,可以修改现有粘性套索以创建具有新边 界的区域,可以修改拟合贝塞尔曲条以更改曲率,添加新曲线,或移除现有曲线以创建新的 拟合贝塞尔曲条,等等。在某些实施例中,组合多个现有可视陆标以创建定制的可视陆标。图18示出了定 制的可视陆标1800的示例。图17示出了用于定制可视陆标的示例方法1700的流程图。方 法1700将参考图1的计算机体系结构100的组件和定制的可视陆标1700来描述。方法1700包括访问并可视地呈现可用于组织图中的可视元素的存储的可视陆标 的动作(动作1701)。例如,现在参考图1,用户113可输入可视陆标选择输入134。用户界 面101可确定可视陆标选择输入134是选 择可视陆标的用户输入。作为响应,用户界面101 可将可视陆标选择输入转发给图编辑器102。图编辑器102可处理可视陆标选择输入134 并且访问来自可视陆标储存库135的可视陆标。图编辑器102可包括图数据112中的可视 陆标并且将图数据112发送到呈现模型107以便呈现在显示设备108处。呈现模块107能 够在显示画面109上可视地呈现所选可视陆标。当要组合多个现有可视陆标时。动作1701 可以在适当时重复以访问并可视地呈现多个可视陆标中的每一个可视陆标。例如,参考图 18,动作1701可以重复以访问拟合条1821、1822、1823、1824和1825。方法1700包括根据用户输入的输入来更改可视陆标的视觉呈现的动作(动作 1702)。例如,用户131可输入用户输入以更改在动作1701中可视地呈现的任何可视陆标。 当选择了可视陆标时,可视陆标反馈能够可视地向用户113指示选择(例如,使用适用于图 中的元素的任何指示)。例如,在选择拟合条1821后,呈现模块可将可视陆标反馈143 (例 如,用虚线呈现拟合条1821)发送到显示设备108。方法1700包括根据用户输入的输入来配置可视陆标的一个或多个属性的动作, 所配置的一个或多个属性指示如何相对于可视陆标来自动定位相关联的可视元素以组织 图中的相关联的可视元素(动作1703)。例如,在图18中,各个拟合条的端点可以连接以便 将拟合条组合在一起。端点1821B、1822A和1823A可以相互连接并且端点1823B、1824A和 1825A可以连接以形成定制的可视陆标1800。方法1700包括存储经更改的视觉呈现以及所配置的一个或多个属性作为新可视 陆标的动作,该新可视陆标供在根据用户输入的输入来组织图时使用(动作1704)。例如, 用户113可输入使得将定制的可视陆标1800存储在可视陆标储存库135中的用户输入。可视陆标可以应用于具有以自由形式的方式排列的可视元素的图以帮助组织图 中的元素。可视陆标还可应用于具有根据自动排列机制(例如,根据自动布局算法)来排 列的可视元素的图,以帮助组织图中的元素。可视陆标可通过对可视元素的自动排列施加 约束来结合自动排列机制工作。由此,本发明的各实施例方便使用(在某些实施例中是定制的)可视陆标来组织 图中的元素。图中的元素可根据可视陆标的所定义的可配置属性来组织以便在图中提供某 种程度的布局结构。因此,本发明的各实施例给予提供某种结构但保留自由形式编辑的灵 活性的用户体验。在不偏离本发明的精神或必要特征的情况下,本发明能以其他具体形式来实现。 所描述的实施例在各个方面都只作为说明性的,而不是限制性的。因此,本发明的范围由所 附权利要求书而不是由前面的描述指出。在权利要求的等效方案内的含义和范围内的所有更改都将包括在它们的 范围内。
权利要求
1.一种计算机体系结构(100)中的用于使用可视陆标来组织图(300)的方法,所述方 法包括呈现表示图(300)的一个或多个可视元素(144)的动作;呈现可视陆标(302)以及所述图(300)中的一个或多个可视元素(144)的动作,所述 可视陆标(30 配置有将应用于相关联的可视元素以便相对于所述可视陆标(30 来定位 所述相关联的可视元素的一个或多个属性;接收选择所述一个或多个可视元素(144)中的要放置在所述图(300)中的一个可视元 素的输入的动作(133)接收指示所选可视元素(301)要与所述可视陆标(30 相关联的进一步输入(134)的 动作;根据所述可视陆标的一个或多个对应的属性来相对于所述可视陆标(302)自动定位 所选可视元素(301),以便响应于接收到所述进一步输入(134)来组织所述图(300)中的所 选可视元素(301)的动作;以及呈现所述一个或多个可视元素(144)的已更新的排列以便反映所述图(300)中的所选 可视元素的组织的动作。
2.如权利要求1所述的方法,其特征在于,所述呈现表示图的一个或多个可视元素的 动作包括呈现一个或多个几何形状的动作。
3.如权利要求1所述的方法,其特征在于,所述呈现可视陆标以及所述图中的一个或 多个可视元素的动作包括呈现选自以下各项的可视陆标的动作拟合条、拟合弧、拟合贝塞 尔曲条、重力井、拟合栈、粘性框、以及粘性套索。
4.如权利要求1所述的方法,其特征在于,所述呈现可视陆标以及所述图中的一个或 多个可视元素的动作包括呈现具有定义以下各项中的一个或多个的属性的可视陆标的动 作如何相对于所述可视陆标来对齐可视元素、如何在所述可视陆标上相对于彼此地间隔 元素、以及所述可视陆标的旋转。
5.如权利要求1所述的方法,其特征在于,所述呈现可视陆标以及所述图中的一个或 多个可视元素的动作包括呈现由一个或多个其他可视陆标构成的自定义可视陆标的动作。
6.如权利要求1所述的方法,其特征在于,所述接收选择所述一个或多个可视元素中 的要放置在所述图中的一个可视元素的输入的动作包括接收选择所述一个或多个可视元 素中的要放置在所述图中的一个可视元素的用户输入的动作。
7.如权利要求1所述的方法,其特征在于,所述接收选择所述一个或多个可视元素中 的要放置在所述图中的一个可视元素的输入的动作包括接收选择将从所述图中的当前位 置移至所述图中的新位置的可视元素的输入的动作。
8.如权利要求1所述的方法,其特征在于,还包括提供指示已经在接收到选择所述一个或多个可视元素中的要放置在所述图中的一个 可视元素的输入后选择所述一个或多个可视元素中的所述一个可视元素的视觉反馈的动作。
9.如权利要求1所述的方法,其特征在于,所述接收指示所选可视元素要与所述可视 陆标相关联的进一步输入的动作包括接收移动所选可视元素以便与所述可视陆标相交的用户输入的动作;以及接收在所选可视元素与所述可视陆标相交时释放所选可视元素的进一步用户输入的 动作。
10.如权利要求1所述的方法,其特征在于,所述根据所述可视陆标的一个或多个对应 的属性来相对于所述可视陆标自动定位所选可视元素的动作包括相对于所述可视陆标来 对齐所选可视元素的动作。
11.如权利要求1所述的方法,其特征在于,所述根据所述可视陆标的一个或多个对应 的属性来相对于所述可视陆标自动定位所选可视元素的动作包括相对于与所述可视陆标 相关联的其他可视元素来间隔所选可视元素的动作。
12.如权利要求1所述的方法,其特征在于,所述根据所述可视陆标的一个或多个对应 的属性来自动相对于所述可视陆标定位所选可视元素的动作包括将所选可视元素从一个 位置移至所述可视陆标上的另一个位置的动作。
13.如权利要求1所述的方法,其特征在于,所述呈现所述一个或多个可视元素的已更 新的排列的动作包括呈现与所述可视陆标相交的可视元素的动作。
14.如权利要求1所述的方法,其特征在于,所述呈现所述一个或多个可视元素的已更 新的排列的动作包括呈现所述可视陆标的界限内的可视元素的动作。
15.一种计算机体系结构中的用于定制用来组织图的可视陆标的方法,所述方法包括访问并可视地呈现可用于组织图中的可视元素的存储的可视陆标的动作;根据用户输入的输入来更改所述可视陆标的视觉呈现的动作;根据用户输入的输入来配置所述可视陆标的一个或多个属性的动作,所配置的一个或 多个属性指示如何相对于所述可视陆标来自动定位相关联的可视元素以组织图中的相关 联的可视元素;以及存储所更改的视觉呈现以及所配置的一个或多个属性作为新可视陆标的动作,所述新 可视陆标供在根据所述用户输入的输入来组织图时使用。
16.如权利要求15所述的方法,其特征在于,所述根据用户输入的输入来更改所述可 视陆标的视觉呈现的动作包括访问并可视地呈现可用于组织图中的可视元素的第二存储的可视陆标的动作;以及将所述可视陆标的呈现连接到所述第二可视陆标的呈现以便将所述可视陆标和所述 第二可视陆标组合成复合可视陆标的动作。
17.如权利要求15所述的方法,其特征在于,还包括访问并可视地呈现可用于组织图中的可视元素的第二存储的可视陆标的动作;并且其中所述根据用户输入的输入来更改所述可视陆标的视觉呈现的动作包括将所述可 视陆标与所述第二可视陆标连接。
18.如权利要求15所述的方法,其特征在于,所述根据用户输入的输入来配置所述可 视陆标的一个或多个属性的动作包括配置选自以下各项的可视陆标的一个或多个属性的 动作拟合条、拟合弧、拟合贝塞尔曲条、重力井、拟合栈、粘性框、以及粘性套索。
19.如权利要求15所述的方法,其特征在于,所述配置所述可视陆标的一个或多个属 性的动作包括配置以下各项中的一个或多个的动作与所述可视陆标相关联的可视元素的 分布、与所述可视陆标相关联的可视元素的对齐、所述可视陆标的旋转、以及所述可视陆标的直径。
20. 一种计算机系统,所述计算机系统包括 一个或多个处理器; 系统存储器;一种或多种物理存储介质,其上存储有用于使用可视陆标来组织图的计算机可执行指 令以及用于定制可视陆标的计算机可执行指令,其中所述用于使用可视陆标来组织图的计 算机可执行指令当在所述处理器中的一个处执行时使所述计算机系统执行以下操作 呈现表示图的一个或多个可视元素;呈现可视陆标以及所述图中的一个或多个可视元素,所述可视陆标配置有将应用于相 关联的可视元素以便相对于所述可视陆标来定位所述相关联的可视元素的一个或多个属 性;接收选择所述一个或多个可视元素中的要放置在所述图中的一个可视元素的输入; 接收指示所选可视元素要与所述可视陆标相关联的进一步输入; 根据所述可视陆标的一个或多个对应的属性来相对于所述可视陆标定位所选可视元 素,以便响应于接收到所述进一步输入来组织所述图中的所选可视元素;以及呈现所述一个或多个可视元素的已更新的排列以便反映所述图中的所选可视元素的 组织;并且其中所述用于定制可视陆标的计算机可执行指令当在所述处理器中的一个处执行时 使所述计算机系统执行以下操作访问并可视地呈现可用于组织图中的可视元素的存储的可视陆标; 根据用户输入的输入来更改所述可视陆标的视觉呈现;根据用户输入的输入来配置所述可视陆标的一个或多个属性,所配置的一个或多个属 性指示如何相对于所述可视陆标来自动定位相关联的可视元素以组织图中的相关联的可 视元素;以及存储所更改的视觉呈现以及所配置的一个或多个属性作为新可视陆标,所述新可视陆 标供在根据所述用户输入的输入来组织图时使用。
全文摘要
本发明涉及用于使用可视陆标来组织图的方法、系统和计算机程序产品。本发明的各实施例方便使用可视陆标来组织图中的元素。图中的元素可根据可视陆标的所定义的可配置属性来组织以便在图中提供某种程度的布局结构。因此,本发明的各实施例给予提供某种结构但保留自由形式编辑的灵活性的用户体验。用户可以定制可视陆标以使得可视陆标展示所需行为。
文档编号G06F17/50GK102077166SQ200980124800
公开日2011年5月25日 申请日期2009年6月12日 优先权日2008年6月27日
发明者D·K·佩克, J·塞恩, L·莫利科内, S·M·丹顿, S·罗伯茨, T·D·普莱斯, Y·瑞彻金恩 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1