用于在实体模型中进行主动式选择的系统和方法

文档序号:6593936阅读:182来源:国知局
专利名称:用于在实体模型中进行主动式选择的系统和方法
技术领域
在此描述的创新的系统通常涉及计算机辅助设计软件应用。更确切地说,所述系 统涉及在实体模型表示中建议选择。
背景技术
在当今的计算机辅助设计(CAD)应用和几何建模系统的领域里,通常按照以下两 种方式之一来设计零件基于历史的方式或没有历史的方式。基于历史的系统的特征通常 在于出现在1980年代中期的参数化建模范式。在参数化建模系统中,创建配方(或历史树) 来反映事物之间如何彼此联系起来。当对一个原始项目做出改变时,后来从该原始项目创 建的所有项目都被更新。这样例如就可以使两个面保持共面,因为所述两个面在设计过程 期间是利用这样的关系来设计的并且在更新过程期间简单地“被重放”。图Ia — Ic图示了 三维块的三度投影。参照图la,三维(“3D”)的C形块100在计算机显示器上对用户可见,并 且需要由用户通过改动底边105、顶边110或者同时改动底边105和顶边110来进行修改。 在基于历史的系统中,用户修改所述C形块100的难易程度与所述C形块100最初在CAD 应用系统中是如何设计的有关,所述CAD应用系统诸如有西门子产品使用寿命管理软件公 司(Siemens Product Lifecycle Management Software Inc.)的 NX。 !!#: ,MtJ 的 计者创建和/或设计零件,该零件后来由修改设计者进行修改,所述修改设计者可能对最 初设计者完全不熟悉。举例来说,如果最初的设计者(即最初设计所述C形块100的人)的 设计方法是意图把与底边105和顶边110相关的面约束为共面的,则利用对3D模型设计领 域内的技术人员来说是基本的已知的参数化/基于历史的建模技术很容易实现图Ic中所 图示的修改动作;当两个面被约束为共面时,移动一个面将导致另一个面也发生移动。另一 方面,在像CoCreate、IronCAD和Kubotek这样的公司所采用的没有历史的或基于主体的方 法中修改所述C形块100无法维持通过所述参数化建模范式而广受欢迎的历史树。在所述 没有历史的方法中,明确地针对实体模型上的每个项目做出改变。如果所述C形块100的 最初设计者意图底边105和顶边110上的面维持共面关系,那么后来的修改要求人工选择 编辑的面,以确保所期望的结果,这在不知道或无法确定最初设计者的意图的情况下是很 困难的。举例来说,修改设计者可以简单地通过选择一个面或者单独地选择所有其它共面 的面来做出在图Ib或图Ic中所图示的改变,这在本例中恰好是小数目,但是在复杂的组装 模型中可能有数百个。可替换地,某些软件应用可以允许修改设计者“使得各面共面”并且 事后在编辑时永久性地捕获所述设计意图,但是这样做也可能很麻烦,对于非常大的模型 来说尤其如此。这种后来的改动会使得很难在以后进行图Ib中所见的修改,这特别是因为 此时可能已经把设计意图烤到(bake)与设计意图相反的所述模型中。
基于历史的方法的问题在于,设计意图在模型创建时被并入并且被固定。与此相 反,没有历史的系统在以后可以做出灵活的改变,但是几乎捕获不到关于事物如何相关的 智能。如果修改设计者确定在以后的时间点人工捕获这种智能,则像基于历史的系统那样, 该智能被并入并且被固定,从而限制进一步的灵活性。尽管如此,在所述几何建模系统中,几何选择技术涉及到在选择几何结构之前设 置选项,即设计者必须提前计划以准备他们想要选择的内容。提前计划要求有推荐的准备 动作,并且在许多情况下,当所述选择并不满足手头的修改时要求有推荐的错误恢复。在没 有历史的系统命令中,被用来执行修改的选择选项有可能在命令会话之间发生改变,以及 有可能在所述命令会话之内发生改变。举例来说,对于移动面命令,设计者可以在一个命令 会话内移动接缘(boss)、筋条(rib)以及连接接缘与筋条的面。在另一命令会话中,设计者 可以移动单个面或者简单地移动槽(slot)。图2图示了提前计划交互(planning ahead interaction),其中每个箭头表示不 同的交互路径。参照图2,每个方框表示根据在该方框内标识的情况而发生的认知或物理过 程。箭头与越多方框相交,该路径就要求有越多过程。“箭头1” 200是最简单的交互,其图 示出选择选项被正确地设置并且设计者选择所意图的内容。“箭头2”205与“箭头1”200 类似但是经过了恢复,从而意味着设计者并没有做准备并且无意中选择某事物进行修改, 而且不得不从该错误恢复。“箭头3”210发生在以下情况中设计者在选择之前解释选择 选项,从而认为该选项的设置正确,但是仍然无意中选择了要求设计者恢复错误的某事物。 “箭头4” 215代表最坏情况,并且发生在以下情况中设计者解释所述选择选项、确定需要 改变该选项并且改变该选项,但是仍然无意中选择了要求设计者从错误恢复的某事物。“箭 头5”220发生在以下请求中设计者解释选择选项、确定需要改变该选项、改变该选项并且 随后选择该设计者所意图的内容。“箭头6”225发生在以下情况中设计者解释选择选项、 确定所述选择选项为正确的并且随后选择该设计者所意图的内容。来向所述用户显示所述修改后的实体模型。在下面的说明书和附图中部分阐述了所述系统的其它特征,并且部分地可以通过 实践所述系统而获知。现在将参照形成本申请的部分的下列附图来描述所述系统。应当理 解的是,在不偏离所述系统的范围的情况下可以利用及改变其它实施例。


下文中将结合附图描述一种系统,其中相似的附图标记指代相似的要素,并且 图Ia — Ic图示了三维块的三度投影;
图2图示了提前计划交互,其中每个箭头表示不同的交互路径; 图3图示了样本虚拟产品开发环境; 图4是可以实践所述系统的计算机环境的方框图; 图5图示了具体实现在软件应用中的软件编程代码的一般概念; 图6是所述实施例所采用的方法的总览的方框图; 图7是所述实施例所采用的方法的总览的方框图; 图8图示了通过使用所公开的系统而得到的主动式选择交互; 图9a — 9d图示了实体模型修改系统中的示例性主动式选择;以及 图10图示了一种示例性实体模型修改系统。
具体实施例方式1、导言
描述一种用于修改实体模型中的几何关系的方法和系统。在下面的描述中,出于解释 的目的阐述了许多具体细节,以便提供对于所述系统的透彻理解。但是对于本领域技术人 员明显的是,可以在没有这些具体细节的情况下实践所述系统。在其它情况下,以方框图的 形式示出了公知的结构和设备,以便避免不必要地使所述系统难理解。图3图示了样本虚拟产品开发环境。现今所采用的虚拟开发环境通常开始于总 体上在300处示出的创建或改进产品的顾客请求(或固有愿望)。所述产品可以简单如开瓶 器,或者可以复杂如潜水艇。进一步参照图3,最初的设计者根据由计算机辅助设计(CAD) 应用305所采用的公知方法对所期望的产品进行建模,所述CAD应用305在通用计算机上 执行,所述通用计算机随后变成用于在应用执行和交互时执行计算机辅助设计例程的专用 计算环境,下面讨论其细节。所述CAD应用305优选地是SolidEdge或NX,这二者都由西门 子产品使用寿命管理软件公司许可提供。CAD用户按照众所周知的和被理解的方式来操作 所述CAD应用305,以便视觉显示与根据所述顾客请求或固有愿望所确定的原始设计要求 相仿和相符的实体模型。所述实体模型通常是部件和组件的组装,其中所述组件被进一步 分解成子组件和/或部件,所有这些子组件和/或部件都优选地具有被存储在实体模型数 据文件325中以供随后再调用的虚拟表示。一旦按照与所述原始设计要求相符的适当形式确定了所述实体模型,就优选地由 计算机辅助工程(CAE)用户利用诸如由西门子产品使用寿命管理软件公司所提供的NX CAE 或FEMAP之类的CAE应用310来针对零件容错测试以及多种其它工程化测试进行测试。如 果所述CAE用户确定必须对所述实体模型进行修改来成功地通过所述容错测试,则把所述实体模型返回给所述CAD用户以供在所述CAD应用305中进行修改。在所述CAD应用305 与CAE应用310以及相应的用户之间的这种迭代是递归性的,直到所述实体模型成功地通 过必要的设计要求和工程化测试为止。在成功完成之后,最终设计形式的所述实体模型进一步被设计用于在诸如NX CAM 或CAM Express之类的计算机辅助制造(CAM)应用315中进行物理制造,NX CAM和CAM Express均由西门子产品使用寿命管理软件公司提供。通过使用所述CAM应用315,CAM用 户将对数字控制程序、铸型、工具以及模具如何制造物理产品330进行建模。所述CAM用户 可以进行附加的修改,以便与原始设计要求相符,例如使用放电加工(EDM)可能要求不同的 技术,这取决于是用线切割EDM还是用开模EDM来制造所述物理产品330。为了虚拟地碾磨 零件,所述CAM应用315定义用于EDM工艺的轨道的优选电极路径。所述CAM用户可确定 为了与设计和工程化要求相符,例如在进行冷却以便考虑到构成所述物理产品330的材料 硬化之后,要求对所述实体模型的规格进行细微的修改。在所述产品的成功的虚拟设计、工程化以及制造之后,制造商可以把所有制造规 程与关于所述产品的产品工程化相链接,其包括利用诸如由西门子产品使用寿命管理软 件公司提供的Tecnomatix之类的数字工厂应用320进行过程布局和设计、过程仿真/工 程化以及生产管理。所述制造商可能发现需要修改所述物理产品330,因为所述CAM用户 例如利用过时的并且要求制造商使用5轴车床来创建必要的毛坯的EDM系统来对所述产品 建模,或者因为所述制造商已经转换到注射成型而不是压缩成型来形成构成所述物理产品 330的零件。例如必须对所述实体模型进行修改,以便与制造所述物理产品330的最终要求 相符。在前面描述的整个虚拟产品开发中,所述产品设计例如从顾客请求流向CAD用 户、流向CAE用户、流向CAD用户、流回到CAE用户、流到CAM用户以及然后流到制造商,以 便对所述物理产品230进行物理生产。在对所述实体模型的每次编辑的情况下,几何关系 也被修改,以便与例如由所述CAD用户、CAE用户、CAM用户以及制造商所做的必要的设计改 变相符。此外,随着所述CAD/CAE/CAM用户中的每个用户修改所述实体模型,还对定义所述 实体模型的数据模型进行修改,以便适当地说明上面所讨论的改变,并且将这个数据模型 适当地存储在所述实体模型数据文件325中。所述制造商随后继续根据原始设计规范和随 后的工程化修改来生产所述物理产品330。所述虚拟产品开发在系统中进行,其中所述用于 修改实体模型中的几何关系的系统和方法可以在多种软件应用中执行,所述多种软件应用 驻留在多种硬件系统上的存储器中,下面更详细地进行描述。2、计算机程序产品
现在转向硬件系统,图4是可以在其中实践所述系统的计算机系统的方框图。图4和 下面的讨论意图提供关于可以在其中实施所述实施例的适当硬件系统和计算环境的简要 的一般性描述。可以在多种已知的计算环境中的任何计算环境内执行所述实施例。参照图4,一种示例性的计算机系统包括具有计算机400形式的计算设备,比如台 式或膝上型计算机,该计算设备包括多个相关外围设备(未描绘出)。所述计算机400包括 中央处理单元(CPU)405和总线410,所述总线410被采用来根据已知的技术连接所述中央 处理单元405与所述计算机400的多个部件并且实现在所述中央处理单元405与所述计算 机400的多个部件之间的通信。所述CPU 405的操作在本领域内被良好地理解,其优选地是可以执行其上编码有计算机可执行指令(比如由所述计算机400执行的程序模块)的计算机 程序的电路。一般来说,程序模块包括执行特定任务或实施特定数据类型的例程、程序、对 象、组件、数据结构等。所述程序模块优选地包括文件处理模块406、数据显示模块407、逻 辑处理模块408以及方法处理模块409。所述逻辑处理模块408向所述文件处理模块406、 所述数据显示模块407和所述方法处理模块409发送请求,以便根据所述计算机可执行指 令进行操作。同样地,所述逻辑处理模块接收来自所述文件处理模块406、所述数据显示模 块407和所述方法处理模块409的请求,以便根据所述计算机可执行指令进行操作。所述 总线410还实现在所述各种程序模块和所述多个部件中的通信。所述总线410可以是几种 类型的总线结构中的任一种,其包括使用多种总线体系架构中的任一种的存储器总线或存 储控制器、外围总线以及本地总线。所述计算机400通常包括用户接口适配器415,所述用 户接口适配器415把所述中央处理单元405通过所述总线410连接到一个或更多接口设 备,所述接口设备比如是键盘420、鼠标425和/或可以是任何用户接口设备的其它接口设 备430、比如触敏屏、数字笔输入板等等。所述总线410还把诸如LCD屏幕或监视器之类的 显示设备435通过显示适配器440连接到所述中央处理单元405。所述总线410还把所述 中央处理单元405连接到存储器445,所述存储器445可以包括ROM、RAM等等。所述计算机400还包括驱动器接口 450,所述驱动器接口 450把至少一个存储设 备455和/或至少一个光学驱动器460耦合到所述总线。所述存储设备455可以包括用于 读写盘的硬盘驱动器(未示出)、用于读写可移动磁盘驱动器的磁盘驱动器(未示出)。同样 地,所述光学驱动器460可以包括用于读写诸如CD ROM之类的可移动光盘或其它光学介质 的光盘驱动器(未示出)。前面提到的驱动器和相关联的计算机可读介质提供计算机可读指 令、数据结构、程序模块以及用于所述计算机400的其它数据的非易失性存储,所述用于所 述计算机400的其它数据可以由所述文件处理模块406根据由所述逻辑处理模块408所接 收到的指令按照由所述方法处理模块409提供的指令所描述的方法进行访问。所述计算机400可以通过通信信道465与其它计算机或计算机网络进行通信。所 述计算机400可以与局域网(LAN)或广域网(WAN)中的这样的其它计算机相关联,或者可以 是与另一计算机构成的客户端/服务器装置中的客户端等等。此外,还可以在分布式计算 环境中实践所述实施例,其中任务指令由所述逻辑处理模块408按照由所述方法处理模块 409提供的指令所描述的方法来提供并且由通过通信网络链接的远程处理设备来执行。在 分布式计算环境中,所述程序模块既可以位于本地存储器存储设备中又可以位于远程存储 器存储设备中。所有这些配置(以及适当的通信硬件和软件)在本领域内都是已知的。现在更详细地转向所述程序模块,图fe —恥图示了具体实现在软件应用中的软 件编程代码的一般概念。进一步参照图5a,下面将在本实施例的背景下更详细地描述所述 程序模块,其中软件应用500包含如上面所讨论的可访问程序模块。所述软件应用500可以 具有实体建模应用的形式,比如前面提到的CAD应用205、CAE应用210或CAM应用215。此 外还可以设想到,所述软件应用500由具有针对访问和利用的特定API (“应用编程接口” ) 调用特征的第三方供应商提供。接下来,随着用户与所述软件应用500进行交互,某些修改 事件触发与变动建模工具包(variational modeling toolkit) 505的交互,下面将更详细 地进行讨论。如在实体建模的领域内通常所理解的那样,所述软件应用500和所述变动建 模工具包505 —起或单独地按照由所述方法处理模块409提供的指令所描述的方法利用所述逻辑处理模块408来调用低级别的几何建模内核,以便根据由用户选择并且由所述软件 应用500执行的命令实现对所述实体模型的某些修改事件,但是下面也更加详细地进行讨 论。所述低级别的几何建模内核通常是至少三维(3D)几何建模器510 (像由得到西门子产 品使用寿命管理软件公司许可的Parasolid)的集合以及几何软件部件库515 (像由西门子 产品使用寿命管理软件公司提供的3D DCM (或“DCM”)产品)的集合。换而言之,参照图恥,所述变动建模工具包505对从所述软件应用500所传送的 变动编辑命令起作用。此外,所述软件应用500把非变动建模调用传送到所述3D几何建模 器510,并且所述3D几何建模器510按照在几何建模器领域内通常所理解的那样利用几何 软件部件库515的集合。关于所述变动建模工具包505,并且下面将更详细地讨论,发生与 所述变动编辑相关的几种操作,这些操作涉及查找、编辑、求解以及应用。在实体建模领域 内通常理解的是上述几何软件部件库的集合例如提供诸如几何约束求解、变动设计、参数 化设计、运动仿真、碰撞检测、间隙计算(clearance computation)、拓扑位置、拓扑移动解 以及隐藏线去除之类的建模功能。在本实施例的范围内还可以设想到,所述3D几何建模器 510和所述部件库515是相同应用的部件,而不是单独的部件或其组合。在描述了所述计算 机程序产品之后,现在提供关于系统的更多细节。3、主动式选择系统
现在转向主动式选择系统,图6是所述实施例所采用的方法的总览的方框图。参照图 6,所述实施例公开了 逻辑处理模块408使用由所述方法处理模块409提供的指令所描述 的方法,其中所描述的方法是一种用于在操纵于具有用于设计的软件指令的计算机中的实 体模型上选择修改特征的方法,总体上被描绘为600。提及下面的步骤是为了提供关于在 具有随后所讨论的细节的系统中描述的该实施例的总览。所述系统利用传送来自用户的 修改意图的计算机外围输入直接在实体模型上选择修改特征(步骤600)。所述系统建议 多个附加选择特征以便与所述修改特征包括在一起(步骤605)。所述系统通过视觉高亮显 示来检验所包括的多个附加选择特征与所述修改意图相符(步骤610)。所述系统根据所述 修改意图修改所述实体模型,从而得到修改后的实体模型和修改后的视觉显示信息,(步骤 615)。所述系统利用所述修改后的视觉显示信息来向用户显示所述修改后的实体模型(步 骤620)。4、主动式选择方法
现在更详细地转向所述主动式选择系统,图7是所述实施例所采用的方法的总览的方 框图。参照图7,在700的姿态解释(“GI”)模块接收优选地来自所述鼠标425的通知和消 息,并且解释在705的鼠标事件下将要发生什么,所述在705的鼠标事件优选地包括选择修 改拓扑。所述在700的姿态解释模块接收所述通知,并且指示在710的所选对象的高亮。在 710的所选对象的高亮指示朝向在715的主动式选择模块的动作。在所述在715的主动式 选择模块中,创建在720的运动灵敏启动器,以便与所述主动式选择进行接口连接,下面将 讨论所述在720的运动灵敏启动器的细节,其中利用以下样本伪代码来创建所述运动灵敏 启动器
权利要求
1.一种用于在操纵于具有软件指令的计算机中的实体模型上选择修改特征的系统, 其包括计算机系统,其中所述计算机系统包括存储器、处理器、用户输入设备和显示设备; 计算机生成的几何模型,所述计算机生成的几何模型被存储在所述计算机系统的存储 器内的存储器中;并且其中,所述计算机系统执行以下操作利用传送来自用户的修改意图的计算机外围输 入直接在实体模型上选择修改特征;建议多个附加选择特征以与所述修改特征包括在一 起;通过视觉高亮显示检验所包括的多个附加选择特征与所述修改意图相符;根据所述修 改意图修改所述实体模型,从而得到修改后的实体模型和修改后的视觉显示信息;以及利 用所述修改后的视觉显示信息来向所述用户显示所述修改后的实体模型。
2.第9段的系统,其中,所述计算机系统在没有根据提取自实体模型数据文件的视觉 显示信息所计算的设计意图智能的情况下显示实体模型。
3.第9段的系统,其中,所述计算机系统把具有视觉显示数据的实体模型数据文件加 载到实体模型建模应用中。
4.权利要求3的系统,其中,所述计算机系统把所述修改后的实体模型计算到所述实 体模型数据文件中。
5.一种用于选择对实体模型的修改的方法,其包括利用传送来自用户的修改意图的计算机外围输入直接在实体模型上选择修改特征; 建议多个附加选择特征以与所述修改特征包括在一起; 通过视觉高亮显示检验所包括的多个附加选择特征与所述修改意图相符; 根据所述修改意图修改所述实体模型,从而得到修改后的实体模型和修改后的视觉显 示信息;以及利用所述修改后的视觉显示信息来向所述用户显示所述修改后的实体模型。
6.权利要求5的方法,其还包括在没有根据提取自实体模型数据文件的视觉显示信 息所计算的设计意图智能的情况下显示实体模型。
7.权利要求5的方法,其还包括把具有视觉显示数据的实体模型数据文件加载到实 体模型建模应用中。
8.权利要求7的方法,其还包括把所述修改后的实体模型计算到所述实体模型数据 文件中。
9.一种计算机程序产品,其包括在其中具体实现了计算机可读程序代码的计算机可 用介质,所述计算机可读程序代码被适配成执行来实施一种用于选择对实体模型的修改的 方法,所述方法包括提供一种系统,其中所述系统包括逻辑处理模块、显示处理模块和方法处理模块; 在实体建模应用中利用传送来自用户的修改意图的计算机外围输入直接在实体模型 上选择修改特征,并且其中所述选择是由方法处理模块响应于被所述逻辑处理模块调用而 执行的;计算多个附加选择特征以与所述修改特征包括在一起,并且其中所述计算是由所述方 法处理模块响应于被所述逻辑处理模块调用而执行的;通过视觉高亮显示检验所包括的多个附加选择特征与所述修改意图相符,其中所述检验是由所述显示处理模块响应于接收来自所述方法处理模块的被传送到所述逻辑处理模 块的所计算的和所选择的信息而执行的;根据所述修改意图修改所述实体模型,从而得到修改后的实体模型和修改后的视觉显 示信息,并且其中所述修改是由方法处理模块执行的;以及由所述显示处理模块利用来自所述修改处理模块的所述修改后的视觉显示信息来向 所述用户显示所述修改后的实体模型。
10.权利要求9的计算机程序产品,其还包括在没有根据提取自实体模型数据文件的 视觉显示信息所计算的设计意图智能的情况下显示所述实体模型,并且其中所述显示是由 显示处理模块响应于被所述逻辑处理模块调用而执行的。
11.权利要求10的计算机程序产品,其还包括为所述系统提供数据文件处理模块。
12.权利要求11的计算机程序产品,其还包括把具有视觉显示数据的实体模型数据 文件加载到所述实体模型建模应用中,并且其中所述加载是由数据文件处理模块响应于被 所述逻辑处理模块调用而执行的。
13.权利要求11的计算机程序产品,其还包括由数据文件处理模块响应于被所述逻 辑处理模块调用而把所述修改后的实体模型计算到所述实体模型数据文件中。
14.一种用于选择对操纵于具有用于设计的软件指令的计算机中的实体模型表示的 修改的系统,其包括计算机系统,其中所述计算机系统包括存储器、处理器、用户输入设备和显示设备;计算机生成的几何模型,其被存储在所述计算机系统的存储器内的存储器中;并且其中,所述计算机系统执行以下操作把具有视觉显示数据的实体模型数据文件加载 到实体模型建模应用中;在没有根据提取自实体模型数据文件的视觉显示信息所计算的设 计意图智能的情况下显示实体模型;利用传送来自用户的修改意图的计算机外围输入直接 在实体模型上选择修改特征;建议多个附加选择特征以与所述修改特征包括在一起;通过 视觉高亮显示检验所包括的多个附加选择特征与所述修改意图相符;根据所述修改意图修 改所述实体模型,从而得到修改后的实体模型和修改后的视觉显示信息;把所述修改后的 实体模型计算到所述实体模型数据文件中;以及利用所述修改后的视觉显示信息来向所述 用户显示所述修改后的实体模型。
全文摘要
一种用于在操纵于具有软件指令的计算机中的实体模型上选择修改特征的系统、方法和计算机程序包括计算机系统,其中所述计算机系统包括存储器、处理器、用户输入设备和显示设备;计算机生成的几何模型,其被存储在所述计算机系统的存储器内的存储器中;并且其中所述计算机系统执行以下操作利用传送来自用户的修改意图的计算机外围输入直接在实体模型上选择修改特征;建议多个附加的选择特征以与所述修改特征包括在一起;通过视觉高亮显示检验所包括的多个附加选择特征与所述修改意图相符;根据所述修改意图修改所述实体模型,从而得到修改后的实体模型和修改后的视觉显示信息;以及利用所述修改后的视觉显示信息来向所述用户显示所述修改后的实体模型;以及所述系统、方法和计算机程序包括适当的装置和计算机可读指令。
文档编号G06T17/00GK102067134SQ200980122301
公开日2011年5月18日 申请日期2009年4月14日 优先权日2008年4月14日
发明者马比 E., 余 F., 德迪亚 H., 秦 H. 申请人:西门子产品生命周期管理软件公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1