CN102067133A - 用于分离实体模型上的面的系统和方法 - Google Patents

用于分离实体模型上的面的系统和方法 Download PDF

Info

Publication number
CN102067133A
CN102067133A CN2009801222942A CN200980122294A CN102067133A CN 102067133 A CN102067133 A CN 102067133A CN 2009801222942 A CN2009801222942 A CN 2009801222942A CN 200980122294 A CN200980122294 A CN 200980122294A CN 102067133 A CN102067133 A CN 102067133A
Authority
CN
China
Prior art keywords
solid model
processing module
modification
computer
revised
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.)
Granted
Application number
CN2009801222942A
Other languages
English (en)
Other versions
CN102067133B (zh
Inventor
V·汉布里奇
J·J·博曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Industry Software NV
Original Assignee
Siemens Product Lifecycle Management Software Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Siemens Product Lifecycle Management Software Inc filed Critical Siemens Product Lifecycle Management Software Inc
Publication of CN102067133A publication Critical patent/CN102067133A/zh
Application granted granted Critical
Publication of CN102067133B publication Critical patent/CN102067133B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Computation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种用于选择对在具有软件指令的计算机中操纵的实体模型的修改的系统、方法和计算机程序,包括:计算机系统,其中,所述计算机系统包括存储器、处理器、用户输入设备、以及显示设备;计算机生成的几何模型,其被存储在所述计算机系统的存储器中;以及其中,所述计算机系统使用计算机外围设备输入端直接在实体模型上选择修改特征上的选择点;按距离将邻近于由所述选择点确定的选择面的多个相邻面分类;确定是否存在其中所述多个相邻面向所述选择面凸起的凸起情况;确定是否存在其中所述多个相邻面与先前访问的面共享同一表面并且存在所述凸起情况的候选曲线;将所述候选曲线标记在所述实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改;根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改所述实体模型;以及使用所述已修改可见显示信息向用户显示所述已修改实体模型、以及适当装置和计算机可读指令。

Description

用于分离实体模型上的面的系统和方法
相关申请的交叉引用
本申请要求2008年4月14日提交的待决临时美国申请序号61/044,644的优先权。
技术领域
本文所述的创新的系统一般涉及计算机辅助设计软件应用程序。更具体而言,所述系统涉及将实体模型表示中的面(faces)分离。
背景技术
在当今的计算机辅助设计(CAD)应用程序和几何建模系统的世界中,通常以两种方式:基于历史或无历史(history-less)中的一种来设计部件。基于历史的系统常常以在19世纪80年代中期出现的参数建模范例为特征。在参数建模系统中,创建配方(recipe)或历史树以反映事物如何彼此相关。当对一个原始项目进行修改时,在稍后的时间由该原始项目产生的所有项目被更新。这样,例如,两个面可以保持共面,因为其被以在设计过程期间捕捉且在更新过程期间简单地“重放”的此类关系设计。图1a-1c举例说明三维块的三度投影。参照图1a,三维(“3D”)的C块100对于用户而言可在计算机显示器上观看且需要由用户通过改变底部支腿105、顶部支腿110、或底部支腿105和顶部支腿110两者来进行修改。在基于历史的系统中,用户有多容易地修改C块100取决于其最初在诸如西门子产品生命周期管理软件公司的SolidEdge的CAD应用程序系统中被如何设计。通常,原始设计者创建和/或设计稍后被修改设计者修改的部分,修改设计者可能对原始设计者完全不熟悉。例如,如果原始设计者、即最初设计C块100的那个人具有将与底部支腿105和顶部支腿110有关的面约束为共面的设计方法意图,则在图1c中举例说明的修改动作很容易使用对于3D模型设计领域的技术人员来说基本的已知参数/基于历史的建模技术来实现,但是用于简单的解释因为两个面被约束为共面,移动一个面将促使另一面也移动。如果另一方面,修改设计者意图在单独留下顶部支腿110的同时仅移动与底部支腿105相关联的面,例如,图1b,则必须发生多个附加步骤以去除共面约束,这要求多个附加步骤,从理解如果修改设计者不是原始设计者、那么如何产生C块100的两个支腿开始。此外,如果C块100的原始设计者未将底部支腿105和顶部支腿110建模成共面的,而是用诸如距离或公式的某些其它方法来对支腿进行建模,则如在图1c中看到的那样,要改进两者将使困难增加至修改设计者也可以从头开始对C块100进行建模的程度。
另一方面,在由类似于例如CoCreate、IronCAD、和Kubotek的公司采取的无历史或基于主体的方法中修改C块100未能保持由参数建模范例使之普及的历史树。在无历史方法中,明确地对实体模型上的每个项目进行改变。如果C块100的原始设计者意图在于底部支腿105和顶部支腿110上的面保持共面关系,则稍后的修改要求用于编辑的面的手动选择以保证期望的结果,如果原始设计者的意图是未知或不能确定的,则这是困难的。例如,修改设计者可能仅仅通过选择一个面或单独地选择所有其它共面的面来进行图1b或图1c所示的变化,这在本示例中碰巧是少数的,但是在复杂组件模型中可以有几百个。或者,某些软件应用程序可以允许修改设计者“使面共面”并在事后在编辑时永久性地捕捉设计意图,但是这也可能是繁琐的,特别是在具有非常大的模型的情况下。此后一种变化将使日后进行的在图1b中看到的修改困难,特别是由于现在设计意图可能被烧固(baked)到与设计意图相反的模型中。
基于历史的方法存在的问题是在模型创建时结合并固定设计意图,这可能使在模型创建时未预期的稍后进行的改变变得复杂。相反,无历史系统在日后的变化方面是灵活的,但捕捉到关于事物如何相关的微乎其微的智能(intelligence)。如果修改设计者确定在稍后的时间点手动地捕捉此类智能,则类似于基于历史的系统,该智能被结合并固定,从而限制进一步的灵活性。
也就是说,在几何建模系统中,几何结构选择技术涉及在选择几何结构之前设置选项,即设计者必须提前计划以准备其想要选择什么。提前计划需要推荐的准备动作,并且在许多情况下,当选择不满足即将进行的修改时,需要推荐的错误恢复。这些推荐动作经证明对于无历史系统而言是过度劳动密集的。在无历史系统命令中,用来执行修改的选择选项很可能在命令会话之间、以及在命令会话内改变。例如,用移动面命令,设计者可以在一个命令会话中移动凸台(boss)、肋(rib)、和连接凸台和肋的面。在另一命令会话中,设计者可以移动单个面或简单地移动槽。存在这样的技术挑战,即识别在什么情况下面存在于可以用于限制(bound)被合并的肋的边界的模型上,其中,所述被合并的肋是具有与非肋面齐平的面的肋。已知的是“肋”是形成凸起形状的面的集合,并且“被合并的肋”115具有肋面必须被再分以将其与模型的其余面隔离的附加性质。例如,如果修改设计者意图修改被合并的肋115并意图仅选择被合并的肋115面,则修改设计者可能已意外地选择在120处指示的C块100的整个面。
本发明人已有利地认识到需要一种用于在实体模型中将用于修改的面、特别是被合并的肋的那些面分离的系统和方法。
发明内容
为了解决所识别的需要和相关问题,一种系统提供用于选择对在具有软件指令的计算机中操纵的实体模型的修改的系统,包括计算机系统,其中,所述计算机系统包括存储器、处理器、用户输入设备、以及显示设备;计算机生成的几何模型,其被存储在所述计算机系统的存储器中;并且,其中,所述计算机系统使用计算机外围设备输入端直接在实体模型上选择修改特征(feature)上的选择点;按距离将邻近于由所述选择点确定的选择面的多个相邻面分类;确定是否存在其中所述多个相邻面向所述选择面凸起的凸起情况;确定是否存在其中所述多个相邻面与先前访问的面共享同一表面并且存在所述凸起情况的候选曲线;将所述候选曲线标记在所述实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改;根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改所述实体模型;以及使用所述已修改可见显示信息向用户显示所述已修改实体模型。
所述系统的其它特征部分地在以下说明书和附图中阐述,并且部分地通过该系统的实施了解。现在参照构成其一部分的以下附图来描述该系统。应理解的是在不脱离所述系统的范围的情况下,可以利用其它实施例且可以进行修改。
附图说明
在下文中将结合附图来描述系统,其中,相同的标识表示相同的元件,并且:
图1a-1c举例说明三维块的三度投影; 
图2举例说明样本虚拟产品开发环境; 
图3是其中可以实施所述系统的计算机环境的方框图; 
图4a-4b举例说明在软件应用程序中体现的软件编程代码的一般概念; 
图5是实施例所采用的方法的总体视图的框图; 
图6举例说明示例性实体模型修改系统;以及 
图7a-7b举例说明实体模型修改系统中的示例性面分离方法。
具体实施方式
1. 介绍
描述了一种用于修改实体模型中的几何关系的方法和系统。在以下说明中,出于解释的目的,阐述了许多特定细节以便提供对所述系统的透彻理解。然而,对于本领域的技术人员来说应显而易见的是可以在没有这些特定细节的情况下实施该系统。在其它实例中,以方框图的形式示出众所周知的结构和设备以便避免不必要地使该系统含糊难懂。
图2举例说明样本虚拟产品开发环境。当今所采用的虚拟开发环境通常从创建产品或对其加以改进的客户请求或固有期望开始,一般在200处示出。该产品可以是如开瓶器一样简单或如潜水艇一样复杂。进一步参照图2,原始设计者根据计算机辅助设计(CAD)应用程序205所采用的已知方法对期望产品进行建模,在通用计算机上执行CAD应用程序205,所述通用计算机随后变成用于在应用程序执行和交互时执行计算机辅助设计例行程序的专用计算环境,其细节在下文讨论。CAD应用程序205优选地是都由西门子产品生命周期管理软件公司提供以获得许可的SolidEdge或NX。CAD用户以众所周知且被很好地理解的方式操作CAD应用程序205以便虚拟地显示类似于且符合根据客户请求或固有期望确定的原始设计要求的实体模型。该实体模型一般是部件的组件和多个组件,其中,所述多个组件被进一步分解为子组件和/或部件,全部优选地具有被存储在实体模型数据文件225中以供后续重新调用的虚拟表示。
一旦实体模型被确定为处于与原始设计要求一致的适当形式,则优选地由CAE用户使用诸如由西门子产品生命周期管理软件公司提供的NX CAE或FEMAP的计算机辅助工程(CAE)应用程序210对其进行测试,以便进行部分容错测试和多种其它工程测试。如果CAE用户确定必须对实体模型进行修改以成功地通过容错测试,则实体模型被返回到CAD用户以便在CAD应用程序205中进行修改。CAD应用程序205和CAE应用程序210与各用户之间的此迭代是递归的,直至实体模型成功地通过必要的设计要求和工程测试为止。
在成功完成之后,处于以其最终设计形式的实体模型还被设计为用于诸如都由西门子产品生命周期管理软件公司提供的NX CAM或CAM Express的计算机辅助制造(CAM)应用程序215中的实际制造。通过使用CAM应用程序215,CAM用户将对数控程序、模具、工具和冲模(die)如何制造实际产品230进行建模。CAM用户可以具有附加修改以符合原始设计要求,例如使用放电加工(EDM)可能要求不同的技术,取决于是否使用线切割EDM还是刻模(die sinking)EDM来制造实际产品230。为了虚拟地对一部分进行铣磨(mill),CAM应用程序215定义用于EDM过程的轨道的优选电极路径。CAM用户可以确定为了符合设计和工程要求,实体模型要求例如在冷却之后的尺寸方面的细微修改以允许包括实际产品230的材料的硬化。
在产品的成功虚拟设计、工程化、和制造之后,制造省可以将所有制造规则与和产品有关的产品工程化链接,包括:过程布局和设计、过程模拟/工程化、和利用诸如由西门子产品生命周期管理软件公司提供的Tecnomatix的数字工厂应用程序200的生产管理。制造省可能发现需要改进实际产品230,因为CAM用户用例如已过时且要求制造商使用5轴图灵机(turning machine)来产生必要的坯的EDM系统对产品进行建模,或者制造商已转入喷射成型而不是压缩成型来形成包括实际产品230的部分。例如,必须将实体模型修改为符合制造实际产品230的最终要求。
遍及上述虚拟产品开发,产品设计例如从客户请求流动至CAD用户至CAE用户至CAD用户,返回至CAE用户、至CAM用户、然后至用于实际产品230的实际生产的制造商。随着对实体模型的每次编辑,还修改几何关系以便符合例如CAD用户、CAE用户、CAM用户、以及制造商进行的必要设计更改。此外,由于CAD/CAE/CAM用户中的每一个修改实体模型,定义实体模型的数据模型也被修改以适当地解决上文所讨论的变化并被适当地存储在实体模型数据文件225中。然后,制造商根据原始设计规范和后续工程化修改来继续生产实际产品230。虚拟产品开发在系统中发生,其中,用于修改实体模型中的几何关系的所述系统和方法可在驻留于多种硬件系统上的存储器中的多种软件应用程序中执行,下文进行更详细的描述。
2. 计算机程序产品
现在转到硬件系统,图3是其中可以实施所述系统的计算机系统的方框图。图3和随后的讨论意图提供其中可以实现本实施例的适当硬件系统和计算环境的简要的一般说明。本实施例可以在多种已知计算环境中的任何一种中执行。
参照图3,示例性计算机系统包括计算机300形式的计算设备,诸如台式计算机或膝上型计算机,其包括多个相关外围设备(未描绘)。计算机300包括中央处理单元(CPU)305和依照已知技术用来在中央处理单元305与计算机300的多个部件之间进行连接并能够实现通信的总线310。CPU 350的操作在本领域中被透彻地理解,其优选地为电路,能够执行具有被编码在其上的计算机可执行指令的计算机程序,诸如由计算机300执行的程序模块。通常,程序模块包括执行特定任务或实现特定数据类型的例行程序、程序、对象、部件、数据结构等。优选地,程序模块包括文件处理模块306、数据显示模块307、逻辑处理模块308、和方法处理模块309。逻辑处理模块308向文件处理模块306、数据显示模块307和方法处理模块309发送请求以根据计算机可执行指令进行操作。同样地,逻辑处理模块从文件处理模块306、数据显示模块307和方法处理模块309接收请求以根据计算机可执行指令进行操作。总线310还使得能够实现各种程序模块和多个部件之间的通信。总线310可以是多种类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线、和本地总线,其使用多种总线架构中的任何一种。计算机300通常包括将中央处理单元306经由总线310连接到诸如键盘320、鼠标325、和/或其它接口设备330的一个或多个接口设备的用户接口适配器315,其它接口设备330可以是任何用户接口设备,诸如触感屏、数字化钢笔输入板等。总线310还经由显示适配器340将诸如LCD屏幕或监视器的显示设备335连接到中央处理单元305。总线310还将中央处理单元305连接到可以包括ROM、RAM等的存储器345。
计算机300还包括将至少一个存储设备355和/或至少一个光驱360耦合到总线的驱动接口350。存储设备355可以包括用于从盘读取和向其写入的未示出的硬盘驱动器、用于从可移动磁盘驱动器读取或向其写入的未示出的磁盘驱动器。同样地,光驱360可以包括未示出的光盘驱动器,其用于从诸如CD ROM或其它光学介质的可移动光盘读取或向其写入。前述驱动器和相关计算机可读介质提供计算机可读指令、数据结构、程序模块和用于计算机300的可被文件处理模块306在由方法处理模块309提供的指令所描述的方法中根据由逻辑处理模块308接收到的指令进行访问的其它数据的非易失性存储。
计算机300可以经由通信信道365与其它计算机或计算机网络通信。计算机300可以与局域网(LAN)或广域网(WAN)中的此类其它计算机相关联,或者其可以是具有另一计算机的客户端/服务器布置中的客户端等。此外,还可以在分布式计算环境中实施本实施例,其中,由通过通信网络链接的远程处理设备来执行在由方法处理模块309提供的指令所描述的方法中由逻辑处理模块308提供的任务指令。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备二者中。所有这些配置、以及适当的通信硬件和软件在本领域中是已知的。
现在更详细地转到程序模块,图4a-4b举例说明在软件应用程序中体现的软件编程代码的一般概念。进一步参照图4a,下面将在本实施例的背景下更详细地描述程序模块,其中,软件应用程序400包括如上文所讨论的那些的可访问程序模块。软件应用程序400可以是实体建模应用程序的形式,诸如上述CAD应用程序205、CAE应用程序210或CAM应用程序215。此外,可以预期由具有供访问和利用的特定API(“应用程序编程界面”)调用特征的第三方供应商提供软件应用程序400。继续,随着用户与软件应用程序400相交互,某些修改事件触发器与变化建模工具箱(toolkit)405相交互,这将在下文中更详细地讨论。软件应用程序400和变化建模工具箱405一起或单独地在由方法处理模块309提供的指令所描述的方法中利用逻辑处理模块308来调用低级几何建模内核以根据由用户选择并由软件应用程序400执行的命令来实现实体模型的某些修改事件,如在实体建模领域中一般理解的那样,但在下文中更详细地进行讨论。低级几何建模内核通常是类似于由西门子产品生命周期管理软件公司授权的Parasolid的至少三维(3D)几何建模器(modeler)410的集合和类似于由西门子产品生命周期管理软件公司提供的3D DCM(或“DCM”)产品的几何软件部件库415的集合。
另一方面,参照图4b,变化建模工具箱405对从软件应用程序400传送的变化编辑命令进行操作。另外,软件应用程序400将非变化建模调用(call)传送到3D几何建模器410,并且3D几何建模器410利用几何软件部件库415的集合,如几何建模器领域中通常理解的那样。关于变化建模工具箱405及下文将更详细地讨论的,发生与涉及查找、编辑、求解和应用的变化编辑有关的多个操作。在实体建模领域中一般应理解的是以上几何软件部件库的集合提供建模功能,例如,诸如几何约束求解、变化设计、参数设计、运动模拟、冲突检测、间隙计算、拓扑结构位置、拓扑结构移动解决方案、以及隐藏线消除。还可以预期在本实施例的范围内,3D几何建模器410和部件库415是同一应用程序的部件而不是单独的部件、或其组合。已描述了计算机程序产品,现在提供关于分离系统的更多细节。
3. 分离系统
现在转到面分离系统,图5是本实施例所采用的方法的总体视图的框图。参照图5,本实施例公开了使用由方法处理模块309提供的指令所描述的方法的逻辑处理模块308,其中,所述方法是用于分离在具有用于设计的软件指令的计算机中操纵的实体模型中的面的方法,一般在500处描绘。提到以下步骤是为了提供在具有随后讨论的细节的系统中所述的实施例的概观。该系统使用计算机外围设备输入端直接在实体模型上选择修改特征上的选择点(步骤500)。该系统按距离将邻近于由选择点确定的选择面的多个相邻面分类(步骤505)。该系统确定是否存在其中所述多个相邻面向选择面凸起的凸起情况(步骤510)。该系统确定是否存在其中所述多个相邻面与先前被访问的面共享同一表面并且存在所述凸起情况的候选曲线(步骤515)。该系统将候选曲线标记在实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改(步骤520)。该系统根据导致已修改实体模型和已修改可见显示信息的修改意图来修改实体模型(步骤525)。该系统使用已修改可见显示信息来向用户显示已修改实体模型(步骤530)。
图6举例说明示例性实体模型修改系统。使用软件应用程序400的用户执行用于软件应用程序400的必要命令以访问优选的是硬盘驱动器600的存储设备355,硬盘驱动器600具有与存储在实体模型数据文件425中的实体模型的虚拟表示有关的数据,所述实体模型数据文件425优选地可被软件应用程序400、变化建模工具箱405、3D几何建模器410和部件库415访问。进一步参照图6,软件应用程序400的特征在于实体建模应用程序605,其访问优选地被构造为优选地以指示用于3D几何建模器410的建模器传输文件类型的stand.x_t格式、指示用于变化建模工具箱405的变化建模工具箱信息文件类型的stand.vtk_data格式被存储在硬盘驱动器600上的数据文件610的实体模型数据文件425,其中,stand*指的是类属部分文件名。实体建模应用程序605具有其自己的已识别文件类型扩展,例如APP,其用该已识别文件类型扩展来获得用于操纵实体模型的足够信息。继续,实体建模应用程序605将stand.x_t文件加载到将被3D几何建模器410访问的3D几何建模器会话主体。stand.vtk_data文件被加载并添加到3D几何建模器会话主体。实体建模应用程序605加载关于实体模型的应用程序数据并根据其自己的文件类型例如PRT来访问数据文件610。已加载实体模型的设计者意图修改看到的实体模型的某个方面。在此意图时,设计者选择可以是面、边、或顶点的拓扑结构进行修改。通过选择拓扑结构进行修改,实体建模应用程序开始与变化建模工具箱405相交互以使用本领域中已知的技术借助于变化建模工具箱API 615来处理修改计算。在实体模型修改之后,为了将已修改实体模型保存到硬盘驱动器600,块620举例说明与变化建模工具箱405有关的数据被从实体模型删除(striped)并放置到vtk_data数据结构中,所述vtk_data数据结构随后被保存到stand.vtk_data文件。被删除的实体主体也被保存到硬盘驱动器600,如应用程序数据一样。下面更详细地讨论选择例如被合并的肋的拓扑结构的动作。
4. 分离方法 
现在更详细地转到面分离系统,该系统包括采用遍历递归程序多遍的面分离方法,所述递归程序具有单个面和选择点作为输入。保持集合C以存储在选择被合并的肋之后被添加到模型的所有新边的参数数据。该方法还保持被从处理排除的一组面F(e),其中,列表最初是空的。实体模型的当前状态被保存在S中。该方法以单个面和选择点的形式接收设计者的输入。获得所述单个面的相邻面并按距离进行分类。以递归方式来检验已分类且获得的相邻面以通过分离确定肋资格和限制肋的潜在性(potential)。对于肋资格,相邻面必须相对于输入的单个面凸起。对于肋的潜在性限制,进行两个确定。首先,如果相邻面与先前被访问的面共享相同的底(underlying)表面和其次,如果任何两个面具有与先前被识别为肋的面邻接的外围环路,则所述方法尝试将面分离。此外,如果添加边,则停止递归并使用初始输入进行另一遍,其中,这些面被从任何进一步的处理排除。此第二确定有效地减小在所有后续的遍中访问的面的范围,例如,同一面可能被分离不止一次,因此可以有多遍。用于所有产生的边的参数被保存在集合C中。在取尽(exhausting)该组相邻面时,递归地访问上述的满足肋资格的面,直至不再有要访问的面为止。现在,从集合C丢弃不限制输入的单个面的边界的那些边的参数数据。实体模型被返回到保存的状态S,并且保存在集合C中的边被标记到实体模型中。
5. 分离说明 
图7a-7b举例说明实体模型修改系统中的示例性面分离。参照图7a和7b,设计者已加载用于修改的实体模型700以进行可见显示。实体模型700具有肋705和被合并的肋710。设计者意图修改被合并的肋710并确定选择面715和选择点720。系统使FS为点PT处的所选面。F1和F2共享同一底表面且两者均邻近于FS,因此可以使用此表面上的曲线来分离面FS。在初始化时,系统将F(e)和C设置为等于空集{}。当前模型状态被保存为S。在本示例中,发生3遍。在第1遍,
Figure 86163DEST_PATH_IMAGE001
Figure 3303DEST_PATH_IMAGE002
从上述内容显而易见的是相邻面F5和F6将不加入到肋,因此递归以被限定并被隔离的肋结束。现在转到模型状态S,并标记曲线C1和C2作为实体模型800的一部分。
6. 结论
本实施例可以在数字电子电路中、或在计算机硬件、固件、软件中、或在其组合中实现。本实施例的装置可以在有形地在机器可读存储设备中体现的用于由可编程处理器执行的计算机程序产品中实现;并且本实施例的方法步骤可以由通过对输入数据进行操作并生成输出来执行指令程序以执行本实施例的功能的可编程处理器来执行。
本实施例可以有利地在可在可编程系统上执行的一个或多个计算机程序中实现,所述可编程系统包括被耦合已从数据存储系统接收数据和指令、并向其发送数据和指令的至少一个可编程处理器、数据存储系统、至少一个输入设备、和至少一个输出设备。所述应用程序可以以高级程序或面向对象的编程语言、或者如果期望以汇编或机器语言来实现;并且在任何情况下,所述语言可以是编译或解释语言。
通常,处理器将从只读存储器和/或随机存取存储器接收指令和数据。适合于有形地体现计算机程序指令和数据的存储设备包括许多形式的非易失性存储器,包括例如半导体存储器设备,诸如EPROM、EEPROM、和闪速存储器设备;磁盘,诸如内部硬盘和可移动盘;磁光盘;以及CD-ROM盘。前述的任何一个可以由专门设计的ASIC(专用集成电路)来补充或结合到其中。
已描述了许多实施例。应理解的是在不脱离本实施例的精神和范围的情况下进行各种修改。可以预期所公开的主动选择系统对于诸如共面、共轴等情况也将有效,因为其利用特征。因此,其它实现在以下权利要求的范围内。

Claims (11)

1. 一种用于选择对在具有软件指令的计算机中操纵的实体模型的修改的系统,包括: 
计算机系统,其中,所述计算机系统包括存储器、处理器、用户输入设备、以及显示设备; 
计算机生成的几何模型,其被存储在所述计算机系统的存储器中;以及 
其中,所述计算机系统使用计算机外围设备输入端直接在实体模型上选择修改特征上的选择点;按距离将邻近于由所述选择点确定的选择面的多个相邻面分类;确定是否存在其中所述多个相邻面向所述选择面凸起的凸起情况;确定是否存在其中所述多个相邻面与先前访问的面共享同一表面并且存在所述凸起情况的候选曲线;将所述候选曲线标记在所述实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改;根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改所述实体模型;以及使用所述已修改可见显示信息向用户显示所述已修改实体模型。
2. 段落8的系统,其中,所述计算机系统将具有可见显示数据的实体模型数据文件加载到实体模型建模应用程序中。
3. 权利要求2的系统,其中,所述计算机系统将已修改实体模型计算到所述实体模型数据文件中。
4. 一种用于分离实体模型中的面的方法,包括: 
使用计算机外围设备输入端直接在实体模型上选择修改特征上的选择点; 
按距离将邻近于由选择点确定的选择面的多个相邻面分类; 
确定是否存在其中所述多个相邻面向所述选择面凸起的凸起情况; 
确定是否存在其中所述多个相邻面与先前被访问的面共享同一表面并且存在所述凸起情况的候选曲线; 
将候选曲线标记在实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改; 
根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改实体模型;以及 
使用已修改可见显示信息来向用户显示所述已修改实体模型。
5. 权利要求4的方法,还包括将具有可见显示数据的实体模型数据文件加载到实体模型建模应用程序中。
6. 权利要求5的方法,还包括将所述已修改实体模型计算到所述实体模型数据文件中。
7. 一种计算机程序产品,包括具有在其中体现的计算机可读程序代码的计算机可用介质,所述计算机可读程序代码适合于被执行以实现用于选择对实体模型的修改的方法,该方法包括: 
提供系统,其中,所述系统包括逻辑处理模块、显示处理模块、以及方法处理模块; 
使用计算机外围设备输入端直接在实体模型上选择修改特征上的选择点,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述选择; 
按距离将邻近于由所述选择点确定的选择面的多个相邻面分类,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述分类; 
确定是否存在其中所述多个相邻面向所述选择面凸起的凸起情况,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述确定; 
确定是否存在其中所述多个相邻面与先前被访问的面共享同一表面并且存在所述凸起情况的候选曲线,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述确定; 
将候选曲线标记在实体模型上以使实体模型准备好用于根据来自用户的修改意图进行修改,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述标记; 
根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改实体模型,并且其中,由方法处理模块响应于被所述逻辑处理模块调用来执行所述修改;以及 
由所述显示处理模块使用来自所述修改处理模块的已修改可见显示信息来向用户显示所述已修改实体模型。
8. 权利要求7的计算机程序产品,还包括为所述系统提供数据文件处理模块。
9. 权利要求8的计算机程序产品,还包括将具有可见显示数据的实体模型数据文件加载到实体模型建模应用程序中,并且其中,由数据文件处理模块响应于被逻辑处理模块调用来执行所述加载。
10. 权利要求8的计算机程序产品,还包括由数据文件处理模块响应于被逻辑处理模块调用来将已修改实体模型计算到实体模块数据文件中。
11. 一种用于选择对在具有用于设计的软件指令的计算机中操纵的实体模型表示的修改的系统,包括: 
计算机系统,其中,所述计算机系统包括存储器、处理器、用户输入设备、以及显示设备; 
计算机生成的几何模型,其被存储在所述计算机系统的存储器中;以及 
其中,所述计算机系统将具有可见显示数据的实体模型数据文件加载到实体模型建模应用程序中;显示由从所述实体模型数据文件提取的可见显示信息计算的实体模型;使用传送来自用户的修改意图的计算机外围设备输入端直接在实体模型上选择修改特征;建议所述修改特征包括多个附加选择特征;通过视觉突出显示来检验所包括的多个附加选择特征是否符合修改意图;根据导致已修改实体模型和已修改可见显示信息的所述修改意图来修改所述实体模型;将所述已修改实体模型计算到所述实体模型数据文件中;以及使用已修改可见显示信息向用户显示所述已修改实体模型。
CN200980122294.2A 2008-04-14 2009-04-14 用于分离实体模型上的面的系统和方法 Active CN102067133B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US4464408P 2008-04-14 2008-04-14
US61/044644 2008-04-14
US12/422350 2009-04-13
US12/422,350 US8872820B2 (en) 2008-04-14 2009-04-13 System and method for splitting faces on a solid model
PCT/US2009/002307 WO2009128897A1 (en) 2008-04-14 2009-04-14 System and method for splitting faces on a solid model

Publications (2)

Publication Number Publication Date
CN102067133A true CN102067133A (zh) 2011-05-18
CN102067133B CN102067133B (zh) 2014-04-30

Family

ID=41163613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980122294.2A Active CN102067133B (zh) 2008-04-14 2009-04-14 用于分离实体模型上的面的系统和方法

Country Status (5)

Country Link
US (1) US8872820B2 (zh)
EP (1) EP2281254A1 (zh)
JP (1) JP5474045B2 (zh)
CN (1) CN102067133B (zh)
WO (1) WO2009128897A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106471503A (zh) * 2014-03-28 2017-03-01 西门子产品生命周期管理软件公司 Cad模型中的智能偏移识别
CN107256004A (zh) * 2017-06-29 2017-10-17 歌尔股份有限公司 产品加工方法及装置
CN109783839A (zh) * 2017-11-13 2019-05-21 达索系统三维软件公司 针对常用部件的自动组件配合创建
CN110213205A (zh) * 2018-03-27 2019-09-06 腾讯科技(深圳)有限公司 验证方法、装置及设备
CN113283017A (zh) * 2021-06-25 2021-08-20 宝能(广州)汽车研究院有限公司 一种零件分离方法、装置、设备及存储介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9400854B2 (en) 2014-06-03 2016-07-26 Siemens Product Lifecycle Management Software Inc. Aerospace joggle on multiple adjacent web faces with intersecting runouts
US10360312B2 (en) 2015-05-04 2019-07-23 Siemens Product Lifecycle Management Software Inc. System and method for identifying clones
US20160328496A1 (en) * 2015-05-04 2016-11-10 Siemens Product Lifecycle Management Software Inc. System and method for editing a model
EP3690682A1 (en) 2019-02-01 2020-08-05 Dassault Systèmes Designing a part featuring a protrusion or a depression
EP3761211A1 (en) 2019-07-04 2021-01-06 Dassault Systèmes Designing a part featuring a bump
EP4189647A4 (en) * 2020-09-22 2024-05-01 Hewlett Packard Development Co PORE PLACEMENT DETERMINATIONS USING ANCHOR POINTS

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001307111A (ja) * 2000-04-20 2001-11-02 Internatl Business Mach Corp <Ibm> 形状解析システム、3次元形状モデルの差分検出システム、類似形状検索システム、形状解析方法、3次元形状モデルの差異検出方法、類似形状検索方法、記憶媒体及びプログラム伝送装置
US6629065B1 (en) * 1998-09-30 2003-09-30 Wisconsin Alumni Research Foundation Methods and apparata for rapid computer-aided design of objects in virtual reality and other environments
JP2004234164A (ja) * 2003-01-29 2004-08-19 Fujitsu Ltd 三次元板金モデル作成方法及びコンピュータプログラム
US7042451B2 (en) * 2002-04-19 2006-05-09 Geometric Software Solutions Co., Limited Methods using specific attributes and graph grammars in graph-based techniques for feature recognition
JP2006209763A (ja) * 2005-01-26 2006-08-10 Solidworks Corp コンピュータ支援設計システムのための認識およびアクティブフィーチャ
CN1869993A (zh) * 2005-04-08 2006-11-29 达索系统公司 具有若干面的模型化对象的计算机辅助设计方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7313504B2 (en) * 2001-10-15 2007-12-25 Solidworks Corporation Model management technology using grouping of features

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6629065B1 (en) * 1998-09-30 2003-09-30 Wisconsin Alumni Research Foundation Methods and apparata for rapid computer-aided design of objects in virtual reality and other environments
JP2001307111A (ja) * 2000-04-20 2001-11-02 Internatl Business Mach Corp <Ibm> 形状解析システム、3次元形状モデルの差分検出システム、類似形状検索システム、形状解析方法、3次元形状モデルの差異検出方法、類似形状検索方法、記憶媒体及びプログラム伝送装置
US7042451B2 (en) * 2002-04-19 2006-05-09 Geometric Software Solutions Co., Limited Methods using specific attributes and graph grammars in graph-based techniques for feature recognition
JP2004234164A (ja) * 2003-01-29 2004-08-19 Fujitsu Ltd 三次元板金モデル作成方法及びコンピュータプログラム
JP2006209763A (ja) * 2005-01-26 2006-08-10 Solidworks Corp コンピュータ支援設計システムのための認識およびアクティブフィーチャ
CN1869993A (zh) * 2005-04-08 2006-11-29 达索系统公司 具有若干面的模型化对象的计算机辅助设计方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106471503A (zh) * 2014-03-28 2017-03-01 西门子产品生命周期管理软件公司 Cad模型中的智能偏移识别
CN107256004A (zh) * 2017-06-29 2017-10-17 歌尔股份有限公司 产品加工方法及装置
CN107256004B (zh) * 2017-06-29 2020-06-09 歌尔股份有限公司 产品加工方法及装置
CN109783839A (zh) * 2017-11-13 2019-05-21 达索系统三维软件公司 针对常用部件的自动组件配合创建
CN110213205A (zh) * 2018-03-27 2019-09-06 腾讯科技(深圳)有限公司 验证方法、装置及设备
CN113283017A (zh) * 2021-06-25 2021-08-20 宝能(广州)汽车研究院有限公司 一种零件分离方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP5474045B2 (ja) 2014-04-16
CN102067133B (zh) 2014-04-30
EP2281254A1 (en) 2011-02-09
JP2011517000A (ja) 2011-05-26
WO2009128897A1 (en) 2009-10-22
US8872820B2 (en) 2014-10-28
US20090256842A1 (en) 2009-10-15

Similar Documents

Publication Publication Date Title
CN102067133B (zh) 用于分离实体模型上的面的系统和方法
CN102067130B (zh) 用于修改实体模型中的几何关系的系统和方法
CN102067131B (zh) 用于转换尺寸的系统和方法
US11256832B2 (en) Replica selection
KR101855736B1 (ko) 데이터베이스와 상호작용하는 컴퓨터 지원 설계 시스템의 세션 내에서의 모델링된 객체의 설계
US9798835B2 (en) Groups of faces that form a geometrical pattern
CN102067132A (zh) 用于修改实体模型中的特征的系统和方法
CN102053829A (zh) 用于在计算机辅助设计系统中设计对象组件的方法和系统
US20120042235A1 (en) Design support apparatus, design support method, and non-transitory computer-readable medium storing design support program
CN102067134B (zh) 用于在实体模型中进行主动式选择的系统和方法
US11960794B2 (en) Seamless three-dimensional design collaboration

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: SIEMENS INDUSTRY SOFTWARE N.V.

Address before: American Texas

Patentee before: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE Inc.