用于可视化计算机屏幕上显示的对象的方法、程序和产品编辑系统的制作方法

文档序号:6601866阅读:156来源:国知局
专利名称:用于可视化计算机屏幕上显示的对象的方法、程序和产品编辑系统的制作方法
技术领域
本发明涉及计算机实现的程序和系统领域,并且更具体地说,涉及产品编辑系统, 其提供用于在计算机屏幕上显示对象的图形用户界面(GUI)。
背景技术
已知产品编辑系统包括计算机辅助设计或CAD,其涉及用于创作产品设计的软件 方案。类似地,CAE是计算机辅助工程的首字母缩写词,例如它涉及用于模拟未来产品的物 理行为的软件方案。CAM代表计算机辅助制造并且通常包括用于定义制造处理和操作的软 件方案。市场上提供有许多产品和程序用于形成产品的对象(零件)或对象的组件的设 计,例如由Dassault Systemes提供的商标为CATIA的产品。这些CAD系统允许用户(例 如,设计者)构建和操作对象或对象的组件的复杂的三维(3D)模型。因而,CAD系统使用 边或线,在特定情况下使用面,来提供模型化对象的表示。可以以各种方式来表示线或边, 例如非均勻有理B样条(NURBS)。这些CAD系统将零件或零件的组件管理为模型化对象,所 述模型化对象大体上是规范的几何形状。特别地,CAD文件包含根据其生成几何形状的规 范,这些规范又允许生成表示。可以将几何形状和表示存储在单个或多个CAD文件中。CAD 系统包括图形工具,其用以将模型化对象表示给设计者;这些工具专门用于复杂对象的显 示——对于每个零件,在CAD系统中表示对象的文件的通常大小为一兆字节的范围,并且组 件可以包括数千个零件。CAD系统管理对象模型,这些对象模型存储在电子文件中。在计算机辅助技术中,当考虑到技术的效率时,图形用户界面(GUI)发挥重要的 作用。特别地,⑶I提供了用户/计算机交互。从CAD系统的观点来看,对象基本上是至少包括名字的文件。这些文件可以存储 在数据库中。数据库被构造来便于结合各种数据处理操作来对数据进行存储、获取、修改和 删除。数据库通常由文件或一组文件构成,所述文件可以被分解为记录,每一个记录由一个 或多个字段构成。字段是数据存储的基本单元。用户主要通过查询来获取数据库信息。使 用关键字和排序命令,用户可以快速地对许多记录中的字段进行搜索、重排、分组和选择, 以根据使用的数据库管理系统的规则来获取或创建关于特定的数据聚合的报告。CAD系统包括用于向用户表示模型化对象的图形工具。在其中定义了对象之间 的空间关系的场景中表示模型化对象。场景由至少两个对象来组成。这些图形工具专用 于创建、显示、修改复杂对象。特别地,可以经由确定对象的性质的一个或多个参数的修改 来对对象或对象的一部分的性质进行修改。对象的性质(property)是对象的一组属性 (attribute),也就是,表示对象的一组品质或特征。一个或多个参数的修改可以由图形工 具作用于对象而引起。在这种情况下,当对对象的性质的修改被保存时,所述修改是永久的 修改。例如,用户可以使用铣刀来对立体对象的粗糙边进行倒圆。铣刀作用于立体对象的 一个或多个参数并且修改该对象的几何性质,例如铣刀对立体对象的边进行碾磨。由铣刀对立体对象的一个或多个参数进行的修改因此是永久的修改。但是,用户可能不但希望容易并且渐进地修改对象的一个或多个性质,而且还希 望动态地修改所述性质。例如,用户可能希望根据铣刀和立体对象之间的距离来将铣刀渐 进地作用于立体对象的几何性质。因此,在可视化计算机屏幕上显示的对象领域中的一个重要问题是用户可能希望 根据在给定对象和另一个对象(即,作用于目标对象(所述给定对象)的主动对象(例如, 工具))之间的距离来移动或修改场景中显示的所述给定对象的性质。有文献已经讨论了在对象和另一个对象之间距离的评估的问题。数个方案允许测 量在场景中显示的两个对象之间的距离。为了使得设计者能够测量在场景中显示的两个对象之间的距离,文献中讨论的大 多数软件提供用于识别对象的模块。实际上,只有识别了至少两个对象才可能测量距离。一 般而言,软件使用被称为“选择模式”的专用模式,该模式使得能够选择在屏幕的法线方向 上最靠近的对象或对象的一部分。传统上,选择的对象被高亮显示以便向设计者可视地指示哪个对象被选择。但是, 由于各种原因,这种方案没有有效率地应对上述问题。例如,选择是基于在场景中不是3D 对象的鼠标指针;因此,它仅在屏幕的2D平面中移动。因此,选择被限制于平面的法线方向 中的第一对象。此外,可以注意到,在这种选择的过程中,对象属性没有被修改,并且将覆盖 增加到选择的对象上以使得选择可见。一旦设计者经由“选择模式”选择了对象或对象的一部分,两个对象之间的距离可 以被测量。用于测量两个对象之间的距离的第一已知方案是立体视觉,其再现3D自然视觉。 该方案包括计算出视点有小位移(shift)的两个图像,然后将这两个图像重叠。为了可以 使用,设计者需要佩带特殊的眼镜。简而言之该方法需要两倍的计算量(要求每帧两个图 像,而不是单个图像)。还需要特定的设备。最后,可能并且确实无法提供准确的信息,因为 其主要关注于模仿人类的视觉。第二种方案依赖于投影墙。投影墙是轴对齐并且为场景定界(delimit)的平面。 它们用于显示对象的2D投影。该技术解决了上述选择对象的问题。然而,尽管显示被完全 并入在场景中,但是会增加大量的视觉复杂度。此外,每个单独的投影不足以具有关于距离 的精确信息。第三种方案依赖于显示一面板,其中在两个选择的对象之间的距离被“物理地”物 化(materialize)在屏幕上。这里,对象的各种选择方案都是可用的,包括通过一组对象的 列表进行选择,或者用专用工具(例如,鼠标指针)直接在场景中选择对象。尽管这种方案 提供了精确的结果,但是它呈现出几个主要缺点。例如,在包括多个对象或对象的部分的大 型场景中,对象的选择可能是繁重的。另一个缺点是信息没有被并入到场景中,因为显示对 象之间的距离的面板被显示在屏幕上并且可能占据了大量可视位置,而使得场景中的对象 被面板部分地或全部地隐藏。已经开发了另一种方案以减轻上述提及的缺点。为了避免在场景中显示面板,该 方案包括将测量的结果直接显示在场景中。为了实现该目标,在感兴趣的对象之间绘制 线,并且在已经绘制了线后,将数值显示在该线上并且示出测量的结果。但是,这种方案具有数个缺点。这在图2中进行了描绘,该图说明了该公知方案。如在该图中所示,两个对象 (立方体和球体)是在图形用户界面中显示的场景的一部分。为了测量球体和立方体之间 的距离,绘制了箭头。该箭头连接这两个对象,并且更准确地说,该箭头连接分别属于显示 的两个对象中的一个的两个点,即,球体的中心以及立方体的面对球体的面上的点。在绘制 了箭头之后,在专用的栏上显示对应的距离。因此,距离的测量取决于选择的确定箭头的点。创建箭头会是特别困难的,因为用 户必须对3D场景中的点进行定位。例如,如在图2中所示,由于图形的指示,用户可以容易 地选择球体的中心。相反,如果用户想要测量立方体和球体的面向立方体的最近点之间的 距离,那么这种点的选择是无法靠直觉获知的。此外,如果场景包括多个对象并且如果用户想要测量场景的对象之间的数个距 离,那么必须确定并且绘制分别的多个箭头。这会导致箭头彼此交叉并且不利于相关数据 的说明。因此,当前产品编辑系统未提供根据一个对象和另一个对象之间的距离来修改场 景中显示的该对象的性质的可能性。所以,根据上面简要讨论的现有方案的限制,需要改进的方法,用于可视化计算机 屏幕上的场景中显示的对象,以及用于根据场景中显示的对象之间的距离来修改场景的性 质。

发明内容
所以,本发明提供了可视化计算机屏幕上显示的对象的计算机实现的方法,所述 对象被显示在产品编辑系统的图形用户界面内的场景中,所述方法包括以下步骤-识别所述场景中显示的至少两个对象中的第一对象和第二对象,所述第一对象 被识别为主动对象;-根据所述第一对象和所述第二对象之间的距离修改所述第二对象的性质;-根据所述第二对象的所修改的性质来修改所述场景。所述方法可以包括以下特征中的一个或多个特征-修改所述第二对象的性质的所述步骤和修改所述场景的所述步骤是伴随着用户 激励所述场景中的所述第一对象而进行的。-在识别对象的所述步骤处,当用户激励所述第一对象时,所述第一对象是作用于 所述第二对象的工具;-所述方法还包括在修改性质的所述步骤处,所修改的性质是所述场景中的所 述第二对象的渲染性质,并且修改所述场景的所述步骤包括根据所修改的性质来修改所述 场景中的所述第二对象的渲染;-所述方法还包括在修改所述第二对象的性质的所述步骤和修改所述场景的所 述步骤处,模拟附着在所述第一对象的光源的效果,由此根据模拟的所述光源来修改所述 性质;-在进行模拟的所述步骤处,根据所述第一对象的位置来模拟所述光源的效果,所 述模拟忽略所述第一对象的结构和/或几何形状;-修改所述场景的所述步骤还包括无关于被模拟的所述光源而渲染所述第一对象;-修改所述性质和/或修改所述场景的所述步骤还包括执行用于渲染所述第二 对象的着色器程序,无关于所述着色器而渲染所述第一对象;-修改所述性质的所述步骤包括修改所述第二对象的表面的镜面反射率;-修改所述性质的所述步骤包括修改所述第二对象的表面的表面法线;-修改所述性质的所述步骤还包括根据由所述第一对象和所述第二对象所定义 的方向来修改所述第二对象的性质;-所述产品编辑系统包括数据库,所述数据库包括所述对象的规范,所述规范允许 生成几何形状以及所述对象的表示,所述方法还包括以下步骤将所修改的性质存储在所 述数据库中;-所述产品编辑系统包括数据库,所述数据库包括所述对象的规范,所述规范允许 生成几何形状以及所述对象的表示,所述方法还包括以下步骤将所修改的性质存储在存 储器中,而不将所修改的性质存储在所述数据库中;-所述场景是三维对象场景;-进行识别的所述步骤包括默认或者根据用户选择将所述第一对象识别为主动 对象;-修改所述性质的所述步骤包括修改以下性质中的一个或多个性质渲染性质; 几何性质;以及物理性质。此外,本发明还提供了可视化计算机屏幕上显示的对象的计算机实现的方法,所 述对象被显示在产品编辑系统的图形用户界面内的场景中,所述方法包括以下步骤-识别所述场景中显示的至少两个对象中的第一对象和第二对象,所述第一对象 被识别为主动对象;-根据在所述第一对象和所述第二对象之间的距离修改所述第二对象的性质,所 述性质的修改是对所述场景中的所述第二对象的渲染性质的临时修改;-根据所述第二对象的所临时修改的性质来修改所述场景;并且其中,在用户激励所述第一对象时,所述第一对象是作用于所述第二对象的 工具,所述工具执行对所述第二对象的性质的永久修改。本发明还涉及存储在计算机可读介质中的计算机程序,用于在产品编辑系统的图 形用户界面中显示对象,所述计算机程序包括代码模块,所述代码模块用于使得加载了所 述计算机程序的计算机执行所述方法的所有步骤。本发明还涉及产品编辑系统,其包括用于执行所述方法的所有步骤的程序代码模 块。


现在将通过非限制性的示例并参照附图,来描述实施本发明的系统,在附图中-图1是像CAD这样的图形用户界面(⑶I)的示例;-图2描绘了现有技术的方案;-图3是用于实行本发明的处理的流程图;-图4A、4B、4C、4D是其中实行了本发明的两个对象场景的示意图;以及
-图5根据本发明的实施例示例了图1的图形用户界面中的场景内可以显示的主 动对象。
具体实施例方式本发明是关于可视化场景中的对象的方法。根据本发明的方法的目标是通过根据 到主动对象的距离修改目标对象的性质(像渲染性质),来指示对象之间的距离。通常,光源被模拟并且被附着在主动对象上,并且场景被相应地动态修改;这种修 改被称为“临时修改”或者“渲染修改”,因为对象性质的修改没有被保存。这种方法绕过了 对对象之间的距离进行基本物化。因此,没有非本质要素的显示是强制性的,并且防止了可 能的干扰。此外,不需要计算场景中的非本质要素。因此,计算资源被保存并且可以例如被 分配到系统的其它功能。因此,提高了系统的整体性能。重要的是,用户仅识别场景中的一 个对象,即,主动对象。因此,识别步骤花费较少的时间并且用户可以集中于其它任务。此 外,就定义而言,这种方法允许例如对目标对象的渲染进行渐进的修改。因此,场景中的修 改被用户更好地理解,给所述用户带来对目标更好的控制。对象的性质是对象的一组属性,也就是,表示对象的一组品质或特征。在CAD领域 中,对象的性质是指但并不限于指渲染性质、几何性质和物理性质。参照图1,示例性图形用户界面(或⑶1)100可以是典型的像CAD这样的界面,其 具有标准菜单栏110、120以及底部和边侧工具栏140、150。如本领域已知的,这种菜单和工 具栏包含一组用户可选择的图标,每一个图标与一个或多个操作或功能相关联。这些图标中的一些与软件工具相关联,适合于对模型化产品200或产品200的零 件(例如,在GUI 100中所显示的产品或零件)进行编辑和/或操作。为了简洁起见,在以 下描述中,“产品”、“零件”、“组件”等都可以被称为“零件”。注意,“零件”的概念事实上可 以被一般化为“对象”的概念,其中,对象可以是设计的产品的仅一“物理”部分,更一般地, 可以是参与设计过程的任何软件工具(但是,并不一定“在”最终的产品中)。软件工具可以分组成工作台。每个工作台包括软件工具的子集。特别地,工作台中 的一个是编辑工作台,其适合于编辑模型化产品200的几何特征。在操作中,用户(例如, 设计者)可以例如预先选择对象200的一部分,然后启动操作(例如,改变维度、颜色等) 或者通过选择合适的图标来编辑几何约束。例如,典型的CAD操作是在屏幕上显示的3D模 型化对象的冲孔或折叠的建模。这些操作可以很大程度地受益于根据本发明的方法。⑶I可以例如显示与所显示的产品200有关的数据250。在图1的示例中,显示为 “特征树”的数据250和它们的3D表示200是关于制动组件,所述制动组件包括制动钳和 盘。⑶I还可以示出各种类型的图形工具130、400,例如用于便于对象的3D取向,用于触发 所编辑产品的操作的模拟或者渲染所显示的产品200的各种属性。 图3示出了反映本发明的具体实施例的流程图。参照该图,该方法的目标是提供 对在计算机屏幕的场景中显示的对象的可视化。特别地,根据本发明的方法的目标是通过 根据到第一对象的距离修改第二对象的性质(例如,像渲染性质)来评估对象之间的距离。距离是对象相距多远的描述,也就是说,距离是两个对象之间的分离程度。距离可 以是指物理长度、时间段或者基于其他准则的估计。通常,在如参考图1描述的⑶I内,对象被显示在场景中(步骤S10)。场景是其中
8描述了在对象之间的空间关系的空间。场景包括至少两个对象,并且对象可以是模型化对 象或三维(3D)模型化对象。因此,如果场景包括3D模型化对象,那么场景是3D空间。三维(3D)模型化对象是三维(3D)空间中的对象的描述。3D空间是物理世界的几 何模型,其可以由几何形状来数学地表示,所述几何形状通过坐标描述三维空间中的每一 个点。顺带提及,还存在描述三维空间的其它方法。3D模型化对象实际上是指根据其生成 几何形状的规范。因此,3D模型化对象是描绘3D对象的数学描述,也就是,3D空间中点的 集合,这些点由各种几何实体(例如,三角形、线、曲面等)来连接。3D模型化对象是由3D模型化对象的3D表示来表示。一般而言,3D表示显示在⑶I 中,所以可以显示在场景(或者3D场景)中。所述表示是渲染(也称为3D渲染)的结果, 所述渲染通常被定义为根据模型生成图像的过程。通常,3D模型化对象的生成是通过计算 表示3D模型化对象的数据来获得的。可以使用不直接取决于对象本身并且将修改对象渲染的参数来执行对象的渲染。 这种修改称为“临时修改”或“渲染修改”,因为对象性质的这种修改没有被保存。相反,如 果性质的修改被保存,那么对象的性质的修改是永久的修改。所述表示允许对3D模型化对象进行操作,也就是说,用户可以经由显示的3D表示 来构建并操纵3D模型化对象。例如,用户可以操纵处理中的视点、3D模型化对象的显示的 3D表示的视角。相反,2D表示不允许用户进行这种操纵。在实践中,如在步骤S20中所说明的,场景的第一对象被识别为主动对象。从系统 的角度来看,所述主动对象是被这样识别。可以根据用户选择来执行场景的第一对象的识 别。用户可以经由触觉设备(例如,键盘、鼠标、触笔等)来进行选择。例如,在两键鼠标中, 左键可以用于选择主动对象。系统还可以默认识别主动对象,即,无需用户选择。系统还识 别场景中所显示的对象中的一个或多个第二对象。所述一个或多个第二对象是要被操作的 对象并且也被称为目标对象。因此,场景的对象可以被分类为两种类型由用户识别或由系 统默认识别的主动对象,以及由系统识别的至少一个目标对象。相比于本领域已知的方案,本发明中执行的识别是有优势的,因为用户不需要识 别场景中显示一个或多个目标对象。实际上,识别目标对象对用户来说可能是困难并且 繁重的任务,特别是当场景过于拥挤或者包括非常靠近或者重叠的数个目标对象时尤其如 此。通常,如上面参考图1提到的,第一对象(即,主动对象)是作用于至少一个第二 对象(即,目标对象)的工具。然而,仅为了进行示例说明,第一对象将在后文中被认为是 可能作用于场景中所识别的一个目标对象的主动对象。接下来,在步骤S30,根据在主动对象和目标对象之间的当前距离来修改目标对象 的性质。如将在之后示例说明的,所讨论的性质可以是渲染性质。然后,在步骤S40,根据目标对象的修改的性质来修改场景。例如,目标对象的渲染 性质可能受到影响。如上文所提及,这种方法不需要基本地物化场景中的对象之间的距离,由此非本 质要素的显示被丢弃。所以,用户不会受到非本质要素的干扰并且可以更容易地集中于他 的任务,因为非本质要素不会干扰场景的观察。此外,用户更好地理解场景(特别是对象的 相对位置和其中的透视图(perspective))。此外,不需要计算非本质要素以及它们在场景中的显示。因此,计算资源被保存并且可以例如被分配到其它任务。优选地,目标对象的性质是动态并由此渐进地被修改的,也就是说,修改目标对象 的性质和场景的步骤是伴随着用户激励(actuate)(步骤S50)场景中的主动对象而进行 的。在实践中,当用户移动场景中的主动对象时,场景中主动对象和目标对象之间的距离被 改变并且性质根据改变的距离而被修改。在操作中,可以经由触觉设备(例如,键盘、鼠标、触笔等)来执行主动对象的激 励。但是,主动对象的激励并不受这些设备的限制,并且可以使用本领域已知的任何合适的
直o因此,获得对场景的渐进修改,由此使得场景中的修改对用户是直观的。特别地, 动态处理允许改进的与用户的交互用户可以更容易地对目标对象进行操作,因为对象的 相对布置中的修改对用户来说表现为是连续进行的,甚至当移动主动对象(或目标对象) 时(S60)也是如此。此外,在用户激励被识别为主动对象的第一对象后,该主动对象可以作为作用于 第二对象的工具。如上文参考图1所提及的,存在各种类型的用于对对象和场景进行操作 的图形工具。在该情况下,作用于第二对象的工具执行对第二对象的性质的永久修改,也就 是说,性质的这些修改被保存。通常,修改的性质是目标对象的渲染性质。因此,修改场景主要依赖于修改目标的 渲染。在这方面,注意,渲染通常被定义为根据模型生成图像的过程。所述模型可以是3D 对象的描述,其可以或多或少是穷尽的。渲染的结果表示应用到对象可视化属性(颜色、透 明度、纹理、照明参数、明暗处理等)的替代可视化,所述可视化属性示出了该对象的某些 特性。所述特性可以是物理特性、阻特性或可能是其他特性。因此,当用户激励场景中的主动对象时,目标对象的渲染被动态地修改。所以,用 户可以容易地并渐进地理解关于目标对象的性质的修改。例如,如果用户使用铣刀(主动 对象)来对立体对象(目标对象)的粗糙边进行倒圆,那么她/他可以容易地并且渐进地 看到由铣刀对立体对象所进行的改变。此外,该方法可以包括模拟附着到主动对象的光源的效果。所讨论的性质在该情 况下根据模拟的光源来被修改。优选地,用户选择并激励在场景中作为工具的主动对象。当对工具进行激励时,渲 染修改(或者临时修改)被执行以动态地表示对象距离的改变。基于场景修改的渲染,用 户可以估计对象之间满足他或她的要求的距离,从而用户可以向系统要求对象性质的永久 修改(例如,对目标对象进行操作的工具执行的修改)。因此,临时渲染修改允许用户具有 基于距离执行的对象修改的实时并且直观的可视反馈,所述可视反馈可能要耗时的。这里,光源意指任何电磁或热源(特别是当模拟目标对象的物理性质时)。用户可 以看到相对距离以连续并且自然的方式发生改变,而无需预先选择成对的点来确定距离。 此外,对光源的模拟将照亮目标对象的表面上的许多点(理论上为无穷多),用户可以无干 扰地同时捕捉到这些点。有利的是,当根据主动对象的位置对光源的效果进行模拟时,该模拟忽略主动对 象的结构和/或几何形状。因此,模拟的光源可以到达目标对象,即,目标对象被主动对象 照亮,即使该源位于主动对象“内”。因此,在该实施例中,光源没有简单地附着到主动对象并相应地渲染周围的对象,而是从光模拟的角度来看,主动对象被认为不在场景中。例如, 在光栅化过程中,模拟的光源没有被主动对象的几何形状所遮挡,即使被置入网状(mesh) 中也是如此。在计算机图形学领域中,光栅化是获得以矢量图形格式描述的图像并且将其 转化为光栅图像以在显示器上输出的任务。此外,主动对象可以优选地无关于模拟的光源而被渲染。因此,基本上,主动对象 没有像任何其他目标对象那样被照射,以允许用户更好地辨别场景中的对象。所以,用户仍 然可以看到主动对象,而不会被可以通过主动对象的光干扰,即使光源被封闭在主动对象 中也是如此。优选地,可以经由着色器的执行来修改目标对象的性质和/或场景。在计算机图 形学领域中,着色器是一组软件指令,其被图形资源主要用来执行渲染效果。因此,着色器 程序被执行以获得目标对象的渲染。有利的是,这里的主动工具无关于用于渲染场景中的 目标对象的着色器程序而被渲染。因此,计算资源被保存,因为主动对象无关于用于渲染目 标对象的着色器而被渲染。此外,修改目标对象的性质可以包括修改其表面的镜面反射率。在3D渲染领域 中,光泽度(specularity)是这样的量,其表示表面具有的镜面反射率的量。该性质用于确 定镜面高亮区域的亮度,并与反光度一起用于确定高亮区域的大小。此外,直接来自点光源 的光的镜面反射被模型化为镜面高亮区域。因此,数个计算资源被保存,因为光的镜面反射 的计算需要较少的计算资源来作为镜面高亮区域的计算。有利的是,修改目标对象的性质还可以包括修改表面的表面法线(或简单法线)。 在计算机图形学领域中,法线用于确定朝向光源的用于平面着色的表面的取向,或者用于 确定每个角(顶点)的取向来模仿曲面。因此,法线用于照明计算。更一般地,可以在渲染性质、几何性质和物理性质的性质中选择修改的性质。渲 染性质涉及对象可视化,其可以表征为例如颜色、透明度、纹理、照明参数、明暗处理等的属 性。几何性质涉及图形的大小、形状和相对位置以及空间性质。物理性质是对象或物质在 不改变其特性的情况下可以被测量或感知的任何方面。本发明并不限于上述性质并且目标 对象的任何性质都可以被修改。有利的是,除了主动对象和目标对象之间的距离以外,还可以根据由它们所定义 的方向来修改目标对象的性质。这通常在模拟定向而非全向光时出现。由此,使用户更好 的集中于目标对象。通常,产品编辑系统包括数据库,所述数据库包括在场景中显示的对象的规范。特 别地,在数据库中存储的对象的规范允许生成几何形状,所述几何形状又允许生成对象的 表示。有利的是,修改的性质可以在同一数据库中被存储或更新。在一变型方案中,修改的性质可以存储在易失性存储器中,以加速处理。如之前所提及的,在场景中显示对象。通常,场景是三维对象场景。在实践中,用户可以首先选择第一主动对象,由此光源自动地附着到所述主动对 象。他/她随后可以切换到另一个主动对象,由此光源自动地附着到当前选择的主动对象 (步骤S70)。因此,系统自动地确定附着光源的位置。例如,系统可以确定光源是否附着在 主动对象的质心上。光源的位置并不限于质心,并且系统可以自动地选择任何合适的位置。顺便提及,用户可以选择光源被附着到选择的主动对象的位置。实际上,主动对象可以提供用户可能希望附着光源的数个位置。将光源附着在选择的工具上的位置的自由选 择改进了用户和场景之间的交互,因为光源的位置反映了用户的选择。可以经由触觉设备 (例如键盘、鼠标、触笔等)来进行位置的选择。位置的选择并不限于这些设备,并且可以通 过本领域公知的任何合适的装置来执行。在一变型方案中,取决于人体工程学的环境,可以默认将第一对象识别为主动对象。图4A、4B、4C、4D示例了图3的流程图中的本发明的步骤S20-S50的结果。这里,考 虑两个对象(500-600)。尽管意在将它们如通常那样在计算机屏幕上显示在例如图1所描 绘的产品编辑系统的图形用户界面内,但是这里表示的三维对象场景仅限于两个对象500、 600。图4A表示初始视图。识别为主动对象的第一对象500具有球体形状。识别为目 标对象的第二对象600是立方体。主动对象500是意图作用于立方体的工具。例如,所述 工具是之前提及的用于使得立方体成形的铣刀。在图4中描绘的实施例中,工具的选择是上面提及的预先进行用户选择(没有示 出)的结果。这里,光源被模拟并且被附着到工具。注意,电磁或热源也可以被附着到工具。但 是,这里用户可以有利地看到相对距离以连续方式发生改变。如上所述,模拟优选地忽略工 具的结构和/或几何形状,以保存计算资源,如之前所看到的。接下来,模拟光源影响立方体(目标对象)的镜面700,这里用轮廓线示意性地描 绘所述镜面。立方体的渲染相应地受到影响。如可在图4B-4D上看到的,当用户将工具(主动对象)逐渐向立方体的一个面移 动时,光泽度渐进地受到影响。在最后一幅图(图4D)中,因为不再有光反射出现,所以用 户被告知工具正在接触或即将接触到立方体。因此,临时渲染修改允许用户具有对工具和 立方体的面之间的距离的实时并且直观的可视反馈,从而用户可以向系统要求对象性质的 永久修改(例如,对目标对象操作的工具执行的修改)。注意,距离的传统基于箭头的描绘 不能进行这种渐进描绘。所以,用户可以用容易、渐进并且动态的方式来评估主动对象(工具)和目标对象 (立方体)之间距离。用户了解主动对象和目标对象之间的距离,并且更一般地,因此提高 了用户对场景的了解。图5示出了紧靠天花板700设置的工具500 (这里为白色)的典型屏幕截图。虽然 主要照亮的是天花板,但是场景中的其它对象600、620、700a也可能受到影响。但是,因为 渲染取决于涉及的相对距离,所以用户可以容易地抓住出现问题的每个对象的相对情形。 因此,用户更好地理解场景。应当理解,上述方法可以应用于能够由CAD/CAM/CAE系统或者由用于从各种视角 显示对象的视图的任何系统定义的任何结构中的任何对象。可以以数字电子电路或者以计 算机硬件、固件、软件或它们的组合来实现本发明。可以用计算机程序产品来实现本发明的 装置,所述计算机程序产品有形地包含在机器可读存储设备中以由可编程处理器来执行; 并且可以由可编程处理器来执行本发明的方法步骤,所述可编程处理器执行程序的指令, 来通过对输入数据进行操作并且生成输出而执行本发明的功能。
本发明可以有利地用一个或多个计算机程序来实现,所述计算机程序可以在可编 程的系统上执行,所述可编程系统包括至少一个可编程处理器、至少一个输入设备和至少 一个输出设备,所述至少一个可编程处理器耦合来从数据存储系统接收数据和指令,并且 向数据存储系统发射数据和指令。应用程序可以用高级过程或面向对象编程语言来实现, 或者如果需要的话,可以用汇编或机器语言来实现;在任何情况下,所述语言可以是编译或 解释性语言。一般而言,处理器将从只读存储器和/或随机存取存储器接收指令和数据。适合 于有形地包含计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,作为举 例说明,包括半导体存储器设备,例如EPROM、EEPR0M和闪存设备;磁盘,例如内部硬盘和 移动盘;磁光盘;以及CD-ROM盘。前述任何部件都可以通过专门设计的ASIC (专用集成电 路)来补充或者被并入其中。已经描述了本发明的优选实施例。应当理解,可以在不背离本发明的精神和范围 的情况下进行各种变型。所以,其它实现在所附权利要求的范围内。例如,可以影响其他对 象性质或与其它对象性质相互影响的任何源(例如,电磁或热源,以及重力源)也可以被附
着到工具。
权利要求
一种可视化计算机屏幕上显示的对象的计算机实现的方法,所述对象被显示在产品编辑系统的图形用户界面内的场景中(S10),所述方法包括以下步骤-识别所述场景中显示的至少两个对象中的第一对象和第二对象,所述第一对象被识别为主动对象(S20);-根据所述第一对象和所述第二对象之间的距离修改所述第二对象的性质(S30);-根据所述第二对象的所修改的性质来修改所述场景(S40)。
2.根据权利要求1所述的方法,其中,修改所述第二对象的性质的所述步骤和修改所 述场景的所述步骤是伴随着用户激励(S50)所述场景中的所述第一对象而进行的。
3.根据权利要求2所述的方法,其中,在识别对象的所述步骤处,当用户激励所述第一 对象时,所述第一对象是作用(S60)于所述第二对象的工具。
4.根据权利要求1、2或3所述的方法,其中-在修改性质的所述步骤处,所修改的性质是所述场景中的所述第二对象的渲染性质;以及-修改所述场景的所述步骤包括根据所修改的性质来修改所述场景中的所述第二对 象的渲染。
5.根据权利要求1至4中的任一项所述的方法,其中,修改所述第二对象的性质的所述 步骤和修改所述场景的所述步骤包括模拟附着在所述第一对象的光源的效果,由此根据 模拟的所述光源来修改所述性质。
6.根据权利要求5所述的方法,其中-在进行模拟的所述步骤处,根据所述第一对象的位置来模拟所述光源的效果,所述模 拟忽略所述第一对象的结构和/或几何形状。
7.根据权利要求5或6所述的方法,其中,修改所述场景的所述步骤还包括无关于被 模拟的所述光源而渲染所述第一对象。
8.根据权利要求7所述的方法,其中,修改所述性质和/或修改所述场景的步骤还包 括执行用于渲染所述第二对象的着色器程序,无关于所述着色器而渲染所述第一对象。
9.根据权利要求5至7中的任一项所述的方法,其中,修改所述性质的所述步骤包括 修改所述第二对象的表面的镜面反射率。
10.根据权利要求5至7中的任一项所述的方法,其中,修改所述性质的所述步骤包括 修改所述第二对象的表面的表面法线。
11.根据权利要求1至10中的任一项所述的方法,其中,修改所述性质的所述步骤还包 括根据由所述第一对象和所述第二对象所定义的方向来修改所述第二对象的性质。
12.根据权利要求10所述的方法,其中,所述产品编辑系统包括数据库,所述数据库包 括所述对象的规范,所述规范允许生成几何形状以及所述对象的表示,所述方法还包括以 下步骤-将所修改的性质存储在所述数据库中。
13.根据权利要求10所述的方法,其中,所述产品编辑系统包括数据库,所述数据库包 括所述对象的规范,所述规范允许生成几何形状以及所述对象的表示,所述方法还包括以 下步骤-将所修改的性质存储在存储器中,而不将所修改的性质存储在所述数据库中。
14.根据权利要求1至13中的任一项所述的方法,其中,所述场景是三维对象场景。
15.根据权利要求1至14中的任一项所述的方法,其中,在进行识别的所述步骤处,默 认或者根据用户选择将所述第一对象识别为主动对象(S70)。
16.根据权利要求1至15中的任一项所述的方法,其中,修改所述性质的所述步骤包括 修改以下性质中的一个或多个性质-渲染性质;-几何性质;以及-物理性质。
17.根据权利要求3所述的方法,其中,作用于所述第二对象的工具执行对所述第二对 象的性质的永久修改。
18.根据权利要求4至17中的任一项所述的方法,其中,-在根据所述第一对象和所述第二对象之间的距离来修改所述第二对象的性质的所述 步骤处,所述性质的修改是对所述场景中的所述第二对象的渲染性质的临时修改;-修改所述场景的所述步骤包括根据所临时修改的性质,临时修改所述场景中的所 述第二对象的渲染。
19.一种存储在计算机可读介质中的计算机程序,用于在产品编辑系统的图形用户界 面中显示对象,所述计算机程序包括代码模块,所述代码模块用于使得加载了所述计算机 程序的计算机执行权利要求1至18中的任一项所述的步骤中的所有步骤。
20.一种产品编辑系统,包括用于执行权利要求1至18中的任一项所述的步骤中的所 有步骤的程序代码模块。
全文摘要
本发明涉及用于可视化计算机屏幕上显示的对象的方法、程序和产品编辑系统。本发明是关于在场景中可视化对象的方法、程序和产品编辑系统。根据本发明的方法目标是通过根据到主动对象的距离修改(S30)目标对象的性质(像渲染性质)来指示对象之间的距离。通常,光源被模拟并且被附着在主动对象,并且场景相应地被动态修改(S30-S50)。这种方法绕过了对对象之间的距离进行基本物化。因此,没有非本质要素的显示是强制性的,并且防止了可能的干扰。此外,根据定义,这种方法允许渐进地修改例如目标对象的渲染。因此,场景中的修改将被用户更好地理解,并且改善了人体工程学。
文档编号G06T15/00GK101866379SQ201010164098
公开日2010年10月20日 申请日期2010年4月14日 优先权日2009年4月14日
发明者E·格朗热, M·埃尔布林 申请人:达索系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1