《由刚性运动转换的几何元素.pdf》由会员分享,可在线阅读,更多相关《由刚性运动转换的几何元素.pdf(32页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103971417 A (43)申请公布日 2014.08.06 C N 1 0 3 9 7 1 4 1 7 A (21)申请号 201310757403.6 (22)申请日 2013.12.30 12306721.7 2012.12.31 EP G06T 19/20(2011.01) G06F 17/50(2006.01) (71)申请人达索系统公司 地址法国韦利济-维拉库布莱 (72)发明人 J-B让维耶 (74)专利代理机构永新专利商标代理有限公司 72002 代理人张晰 王英 (54) 发明名称 由刚性运动转换的几何元素 (57) 摘要 提供了一种用于设计三维。
2、建模对象的计算机 实现方法。该方法包括提供(S10)几何元素,该几 何元素表示建模对象且包括在其中几何元素是另 一个的副本的集合。该方法还包括定义(S20)图 表,确定(S30)该图表的最大子图表,以及在确定 出的子图表中,识别(S40)具有最多数量的弧的 连通分量的集合,并且对于连通分量的集合,由弧 表示的刚性运动全部遵守一致性标准。这种方法 改进了3D建模对象的设计。 (30)优先权数据 (51)Int.Cl. 权利要求书1页 说明书20页 附图10页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书20页 附图10页 (10)申请公布号 CN 10397。
3、1417 A CN 103971417 A 1/1页 2 1.一种用于设计三维建模对象的计算机实现方法,包括: 提供(S10)几何元素,所述几何元素表示建模对象且包括在其中所述几何元素是另一 个的副本的集合, 定义(S20)具有节点和弧的图表,每个节点表示所述集合的几何元素,每条弧连接一 对节点,并且表示将由该对节点的一个节点所表示的几何元素转换为由该对节点的另一个 节点所表示的几何元素的刚性运动, 确定(S30)所述图表的最大子图表,对于所述最大子图表,由弧所表示的刚性运动全 部遵守预定的近似性标准,所述近似性标准比预定的一致性标准弱,以及 在确定出的子图表内识别(S40)具有最多数量的弧的。
4、连通分量的集合,并且对于所述 连通分量的集合,由弧所表示的刚性运动全部遵守一致性标准。 2.如权利要求1所述的计算机实现方法,其中,所述方法还包括迭代以下步骤: 通过折叠所识别出的连通分量的集合的每个连通分量的节点来修改图表;以及 在修改后的图表上重复确定(S30)和识别(S40)。 3.如权利要求2所述的计算机实现方法,其中,所述折叠包括: 删除与所识别出的连通分量的集合的任何连通分量的任何节点相连的全部弧; 对于每个各自的连通分量,由单个节点替换各自的连通分量的全部节点;以及 在表示等距的连通分量的节点对之间增加弧,每条增加的弧表示将由该对节点中的一 个节点所表示的连通分量转换为由该对节点。
5、中的另一个节点所表示的连通分量的刚性运 动。 4.如权利要求1-3中任一项所述的方法,其中,所述识别(S40)包括: 在确定出的子图表中,选择(S410)具有最多数量的弧的子图表, 测试(S420)由所选择的子图表的每个连通分量的弧所表示的刚性运动是否全部遵守 所述一致性标准。 5.如权利要求4所述的方法,作为测试(S420)的结果,所述识别(S40)还包括: 如果所述测试(S420)的结果是肯定的,则将连通分量的集合识别(S430)为所选择的 子图表的连通分量, 否则,如果所述测试(S420)的结果是否定的,则拆分(S440)所选择的子图表,并且重 新运行选择(S410)和测试(S420)。。
6、 6.如权利要求5所述的方法,其中,所述拆分(S440)包括: 从所选择的子图表中削减所选择的子图表中如下的子图表的弧:在所选择的子图表的 全部子图表中,该子图表具有最多数量的弧,并且对于该子图表,由弧所表示的刚性运动全 部遵守一致性标准;以及 用削减掉的弧创建新的子图表。 7.一种适于在数据存储介质上记录的计算机程序,其包括用于执行权利要求1-6中任 一项所述方法的指令。 8.一种在其上记录有权利要求7的计算机程序的数据存储介质。 9.一种CAD系统,其包括耦合到存储器的处理器以及图形用户界面,所述存储器在其 上记录有如权利要求7的计算机程序。 权 利 要 求 书CN 103971417 A。
7、 1/20页 3 由刚性运动转换的几何元素 技术领域 0001 本发明涉及计算机程序和系统领域,并且更具体地涉及一种用于设计三维(3D) 建模对象的方法、系统和程序。 背景技术 0002 在市场上提供了许多用于对象的设计、工程和制造的系统和程序。CAD是计算机辅 助设计的首字母缩写词,例如,其涉及用于设计对象的软件解决方案。CAE是计算机辅助工 程的首字母缩写词,例如,其涉及用于模拟未来产品的物理行为的软件解决方案。CAM是计 算机辅助制造的首字母缩写词,例如,其涉及用于定义制造过程和操作的软件解决方案。在 这样的系统中,关于该技术的有效性,图形用户界面(GUI)扮演着重要的角色。可以将这些 。
8、技术嵌入在产品生命周期管理(PLM)系统内。PLM涉及帮助多个公司跨越扩展企业的概念 而分享产品数据、应用通用处理、并且权衡用于从构思到它们使用寿命终结的产品开发的 企业知识的商业策略。 0003 由Dassault Systems(商标名为CATIA、ENOVIA和DELMIA)提供的PLM解决方案 提供了工程中心、制造中心和企业中心,工程中心组织产品工程知识,制造中心管理制造工 程知识,企业中心使企业能够集成并连接到工程中心和制造中心。该系统一起提供了开放 的对象模型,其链接产品、过程、资源,以实现动态的、基于知识的产品产生和驱动优化的产 品限定、制造准备、生产和服务的决策支持。 0004。
9、 现在,基于向用户提供的建模对象的边界表示(B-Rep),许多CAD系统允许用户设 计3D建模对象。该B-Rep是包括各个面被定义为各自支持表面的边界部分的面的集合的 数据格式。通过修改现有的面、创建新的面、删除一些面和/或定义面上和/或面间的约束、 或者由使用时的CAD系统提供的类似的任何行为,用户可作用于该面的集合。在这种情形 中,为了效率起见,该立体的历史通常对用户不可用。 0005 发展中的这种3D设计的多个方面之一被称为“图案识别”。术语“图案”涉及相 同的几何特征的副本的规则布局。识别图案允许这样的图案的处理作为设计期间的单个元 素,从而扩展了一系列的设计可能性。例如,代替一个接一。
10、个地修改图案的元素,由于该图 案的先前识别,用户可以例如用单个行为全面地执行图案的修改。图案识别与CAD的不同 领域相关,诸如机械设计、消费品、建筑物结构、航天或其他领域。 0006 图案识别可与特征识别相关。特征识别有助于识别给定的3D对象(典型地,机械 部分的立体表示)的特性形状。机械设计的感兴趣的特性形状包括例如孔、挤压垫、挤压凹 处、圆角或圆形、外卷垫和/或外卷凹处。识别特性形状相当于通过更佳的语义层识别其规 格,例如,挤压或外卷形状的轮廓,外卷形状的旋转轴,圆形和圆角的半径值,挤压方向,和/ 或挤压深度。这个信息用于例如通过编辑该挤压的轮廓而修改形状,或者用于送入下游过 程,例如加工。
11、过程。 0007 特征识别能力可通过以下过程用于商业CAD系统。用户可选择特征的类别以进行 识别。于是可选地,用户选择立体上的特征的一个或多个面,以便初始化搜索。该系统执行 说 明 书CN 103971417 A 2/20页 4 识别并得到识别出的特征的规格。 0008 当目的是局部地改变输入立体的形状时,“直接编辑”能力也是可用的。这种技术 也被称为“无历史建模”,其由CAD编辑者宣传为历史设计的另选物。目的是仅通过使用其 B-Rep容易地改变立体的形状。为了使编辑从用户观点来看简单,“直接编辑”技术必须识 别该立体的局部形状。例如,该系统必须维持孔的圆柱形(并且不将圆柱改变为自由形态 的表。
12、面)、维持凹处的壁的垂直方向、和/或维持形状的外卷或挤压特性。因此,特征识别是 不可避免的,即使是在“直接编辑”领域中。 0009 传统的特征识别每次处理一个特征。它不识别给定特征的多个副本,并且它不识 别这些副本的布局。至于图案识别,该主题仍然在发展,但是现有的解决方案看起来需要许 多的用户干预。 0010 因此,现有的解决方案缺少效率,特别是从用户利用观点和从穷尽性的观点来说。 在本上下文中,仍然存在一种用于设计3D建模对象的改进的解决方案的需求。 发明内容 0011 根据一个方面,因此提供了一种用于设计3D建模对象的计算机实现方法。该方法 包括提供几何元素,该几何元素表示建模对象且包括在。
13、其中几何元素是另一个的副本的集 合。该方法还包括定义具有节点和弧的图表,每个节点表示集合的几何元素,每条弧连接一 对节点,并且表示将由该对节点的一个节点所表示的几何元素转换为由该对节点的另一个 节点所表示的几何元素的刚性运动。该方法还包括确定该图表的最大子图表,对于子图表, 由弧表示的刚性运动全部遵守预定的近似性标准,该近似性标准比预定的一致性标准弱。 并且,该方法包括在确定的子图表内,识别具有最多数量的弧的连通分量的集合,并且对于 该连通分量的集合,由弧表示的刚性运动全部遵守一致性标准。 0012 该方法还包括以下的一个或多个: 0013 -该方法还包括迭代以下步骤:通过折叠识别出的连通分量。
14、的集合的各个连通分 量的节点来修改图表;以及迭代对修改的图表的确定和识别; 0014 -该折叠包括:删除与所识别出的连通分量的集合的任何连通分量的任何节点相 连的全部弧;对于每个各自的连通分量,由单个节点替换各自的连通分量的全部节点;以 及在表示等距的连通分量的节点对之间增加弧,每条增加的弧表示将由该对节点的一个节 点所表示的连通分量转换为由该对节点的另一个节点所表示的连通分量的刚性运动; 0015 -该识别包括:在确定出的子图表中,选择具有最多数量的弧的子图表,以及测试 由所选择的子图表的每个连通分量的弧所表示的刚性运动是否全部遵守一致性标准; 0016 -作为检验的结果,该识别还包括:如果。
15、测试的结果是肯定的,则将连通分量的集 合识别为所选择的子图表的连通分量;否则,如果测试的结果是否定的,则拆分所选择的子 图表,并且重新运行选择和检验;和/或 0017 -该拆反包括:从所选择的子图表中削减所选择的子图表中这样的子图表的弧: 在所选择的子图表的全部子图表中,该子图表具有最多数量的弧,并且对于该子图表,由弧 所表示的刚性运动全部遵守一致性标准;以及,使用削减掉的弧创建新的子图表。 0018 还提出了一种包括用于执行上述方法的指令的计算机程序。该计算机 程序适于 存储在计算机可读存储介质上。 说 明 书CN 103971417 A 3/20页 5 0019 还提出了一种具有在其上记录。
16、的上述计算机程序的计算机可读存储介质。 0020 还提出了一种CAD系统,其包括耦合到存储器的处理器以及图形用户界面,该存 储器在其上记录有上述计算机程序。 附图说明 0021 现在,作为非限制性示例且参考附图将描述本发明的实施例,其中: 0022 图1示出了该方法的示例的流程图; 0023 图2示出了图形用户界面的示例; 0024 图3示出了客户端计算机系统的示例;以及 0025 图4-31示出了该方法的示例。 具体实施方式 0026 图1示出了用于设计3D建模对象的计算机实现方法的流程图。该方法包括提供 S10几何元素。几何元素表示建模对象。S10处提供的几何元素包括在其中几何元素是另一 。
17、个的副本的集合。该方法还包括定义S20具有节点和弧的图表,各条弧连接一对节点。各 个节点表示该集合的几何元素。各条弧表示将由该对节点的一个节点表示的几何元素转换 为由该对节点的另一个节点表示的几何元素的刚性运动。该方法还包括确定S30该图表的 最大子图表。S30处确定的最大的子图表在对子图表而言由弧表示的刚性运动完全遵守预 定的近似性标准的那些子图表中。近似性标准比预定的一致性(identity)标准弱。以及, 该方法还包括在确定出的子图表内(S30确定的)识别S40连通分量的集合,连通分量具有 最多数量的弧,并且对于该连通分量而言由弧表示的刚性运动完全遵守一致性标准。 0027 这种方法构成。
18、了用于设计3D建模对象的改进的解决方案。通过识别S40连通分 量,对于该连通分量而言由弧表示的刚性运动完全遵守一致性标准,该方法确定了几何图 案,从而向用户开放基于图案的设计功能。通过识别S40图表的最大的子图表中的这些图 案,对于子图表而言由弧表示的刚性运动完全遵守比一致性标准弱的预定的近似性标准, 该方法执行足够 的识别以更好地掌握预期的图案以及使设计更加容易。特别地,通过根据 S30的具体标准确定最大的子图表,以及通过S40根据S40的具体标准来识别在这些子图 表中具有最多数量的弧的连通分量的集合,该方法根据识别图案中的弧的总数来优化图案 识别,从而识别出最期望的图案。因为该方法按照其具。
19、体方式混合使用了近似性标准和一 致性标准,所以该方法识别可能属于自身的“图案的模式”(pattern ofpatterns)结构的图 案。因此,该方法构成了递归图案识别的第一步,从而为这种递归图案识别预备了数据。由 于该方法依赖图表定义S20和几何计算,所以可容易地实现且因此是自动的,因此按照穷 尽且快速的方式识别有意义的图案。这在以下论述中是及其详细的。 0028 建模对象是由存储在计算机系统的存储器中的数据定义的任何对象。作为扩展, 措辞“建模对象”指定数据本身。“设计3D建模对象”指定作为精心制作3D建模对象的过 程的至少一部分的任何行为或系列行为。因此,该方法可包括从头开始创建3D建模。
20、对象。 可替换地,该方法可以包括提供先前创建的3D建模对象,并且然后修改该3D建模对象。 0029 3D建模对象可以是CAD建模对象或者CAD建模对象的一部分。在任何情形中,由 该方法设计的3D建模对象可表示CAD建模对象或者其至少一部分,例如,由CAD建模对象 说 明 书CN 103971417 A 4/20页 6 占据的3D空间。CAD建模对象是由存储在CAD系统的存储器中的数据定义的任何对象。根 据该系统的类型,可由不同种类的数据定义建模对象。CAD系统是至少适于基于建模对象的 图形表示设计建模对象的任何系统,例如CATIA。因此,定义CAD建模对象的数据包括允许 建模对象的表示的数据(。
21、例如,几何数据,例如包括空间中的相对位置)。 0030 该方法可包括于制造过程中,该制造过程可包括:在执行该方法后,产生与建模对 象相对应的实体产品,例如,根据由该方法识别出的几何图案(在这种情形中,可向制造过 程馈送关于所述几何图案的信息)。在任何情形中,由该方法设计的建模对象可表示制造对 象。建模对象因此是建模立体(即,表示立体的建模对象)。制造对象可以是产品,例如,零 件的一部分或其组件。因为该方法改进了建模对象的设计,所以该方法还改进了产品的制 造,从而增加了制造过程的生产率。可以使用CAM系统实现该方 法,例如DELMIA。CAM系 统是至少适于定义、模拟和控制制造过程与操作的任何系。
22、统。 0031 该方法是计算机实现的。这意味着该方法可运行在至少一个计算机或者类似的任 何系统上。例如,该方法可在CAD系统上实现。因此,可由计算机执行该方法的步骤,可能 完全自动地或半自动地(例如,由用户触发的步骤和/或涉及用户交互的步骤)。特别地, 可由用户触发提供S10和/或定义S20。可以自动地(即,无需任何用户干预)或者半自动 地(即,涉及-例如,轻微的-用户干预,例如,用于验证结果或者向/从子图表和/或连通 分量的集合增加/删除用户确定的元素)执行确定S30和/或识别S40。 0032 该方法的计算机实现的典型示例是用适于这个目的的系统执行该方法。该系统可 以包括存储器,其上记录有。
23、用于执行该方法的指令。换句话说,软件在存储器上已是现成 的,以用于即时使用。该系统因此适于执行该方法,而无需安装任何其他软件。这种系统还 可以包括至少一个处理器,其与存储器耦合以用于运行指令。换句话说,该系统包括在耦合 到处理器的存储器上编码的指令,指令用于提供执行该方法的手段。这种系统是用于设计 3D建模对象的有效工具。 0033 这种系统可以是CAD系统。该系统还可以是CAE和/或CAM系统,并且CAD建模 对象还可以是CAE建模对象和/或CAM建模对象。事实上,CAD、CAE和CAM系统并不是彼 此排斥的,因为建模对象可由与这些系统的任何组合相对应的数据来定义。 0034 该系统可以包括。
24、用于例如通过用户开始指令运行的至少一个GUI。特别地,该GUI 可允许用户触发提供S10的步骤,并且然后,如果用户决定这样做,例如,通过开始具体功 能(例如,称为“递归图案识别” ),来触发定义S20。然后,可以自动或半自动地执行确定 S30,以及然后执行识别S40。 0035 3D建模对象是3D的(即,三维的)。这意味着建模对象是由允许其3D表示的数 据来定义的。特别地,S10处提供的几何元素是3D的(即,它们以3D定义,以便所有几何 元素的联合不会包括在一个平面内)。3D表示允许从所有角度观看该表示。例如,当以3D 呈现建模对象时,可处理该建模对象,并且该建模对象围绕它的任何轴旋转,或者围。
25、绕在其 上显示该 表示的屏幕中的任何轴旋转。这特别地排除了不是3D建模的2D图标,即使当它 们按照2D立体图表示某物时。3D表示的显示有利于设计(即,增加了设计者统计上完成 他们的任务的速度)。这加速了工业中的制造过程,因为产品的设计是制造过程的一部分。 注意的是,关于该方法的3D特性的论述是适用的,即使在图上按照2D表示了一些示例。必 须理解的是,这些示例是出于理解该方法的目的。 说 明 书CN 103971417 A 5/20页 7 0036 图2示出了典型CAD系统的GUI的示例。 0037 GUI2100可以是典型的类CAD界面,其具有标准的菜单栏2110、2120以及底部和侧 部工具。
26、栏2140、2150。这样的菜单和工具栏包含用户可选图标的集合,各个图标与一个或多 个操作或功能相关联,如本领域已知的。这些图标中的一些与软件工具相关联,适于用于编 辑和/或工作于GUI2100中显示的3D建模对象2000。软件工具可以集合在工作台中。各 个工作台包括软件工具的子集合。特别地,所述工作台之一是编辑工作台,适于编辑建模产 品2000的几何特征。在操作中,设计者例如可以预先选择对象2000的一部分,并且然后通 过选择适当的图标来启动操作(例如,造型操作,或如改变尺寸、色彩等的任何其他操作) 或者编辑几何约束。例如,典型的CAD操作是对在屏幕上显示的3D建模对象进行冲压或折 叠的建模。
27、。 0038 GUI可例如显示与所显示的产品2000相关的数据2500。在图2的示例中,显示为 “特征树”的数据2500及其3D表示2000与包括制动钳和盘的制动组件有关。GUI还可显 示各种类型的图形工具2130、2070、2080,以用于例如便于对象的3D定向,触发对所编辑的 产品的操作的仿真,或者呈现所显示的产品2000的各种属性。可以通过触觉装置控制光标 2060,以允许用户与图形工具进行交互。 0039 图3示出了作为客户端计算机系统(例如用户的工作台)的系统的体系结构的示例。 0040 客户端计算机包括连接到内部通信总线1000的中央处理单元(CPU)1010,也连接 到总线的随机。
28、访问存储器(RAM)1070。客户端计算机还配备有图形处理单元(GPU)1110,其 与连接到总线的视频随机访问存储器1100相关联。在本领域中,视频RAM 1100还被称为帧 缓冲器。大容量存储装置控制器1020管理对大容量存储装置(例如硬盘驱动1030)的访 问。 适于有形地体现计算机程序指令和数据的大容量存储装置包括所有形式的非易失性 存储器,作为示例,其包括半导体存储装置,例如,EPROM,EEPROM和闪存装置;磁盘,例如, 内部硬盘和可拆卸盘,磁光盘,以及CD-ROM盘1040。前述中的任何一个都可以由专门设计 的ASIC(专用集成电路)进行补充,或者并入到专门设计的ASIC中。网。
29、络适配器1050管 理对网络1060的访问。客户端计算机还可以包括触觉装置1090,例如光标控制装置、键盘 或其他。在客户端计算机中使用光标控制装置,以允许用户选择性地将光标放在屏幕1080 的任何期望位置上,如参照图2所提及的。作为屏幕,其是指在其上可以执行显示的任何支 持物,例如计算机监视器。另外,光标控制装置允许用户选择各种命令,以及输入控制信号。 光标控制装置包括多种信号生成装置,用于将控制信号输入至系统。典型地,光标控制装置 可以是鼠标,鼠标的按钮用于生成信号。 0041 为了使系统执行方法,提供了一种计算机程序,其包括用于由计算机执行的指令, 指令包括用于这个目的的手段。例如,可以。
30、在数字电子电路中,或者在计算机硬件、固件、 软件、或者在它们的组合中实现该程序。本发明的设备可以实施在有形地体现在机器可读 存储装置中的计算机程序产品,该计算机程序产品由可编程处理器执行的;以及可以通过 可编程处理器执行本发明的方法步骤,可编程处理器执行指令的程序以通过对输入数据进 行操作及生成输出来执行本发明的功能。有利地,可以以一个或多个计算机程序实现这些 指令,这些计算机程序可运行在可编程的系统上,可编程的系统包括:至少一个可编程处理 器,其被耦合以从数据存储系统接收数据和指令以及传送数据和指令到数据存储系统;至 少一个输入装置;以及至少一个输出装置。可以以高级过程语言或面向对象编程语言。
31、实现 说 明 书CN 103971417 A 6/20页 8 应用程序,或者如果希望的话以汇编或机器语言实现应用程序;并且在任何情形中,该语言 可以是编译或解释语言。该程序可以是整个安装程序,或者是更新程序。在后者的情形中, 该程序将现有的CAD系统更新到其中系统适于执行方法的状态。 0042 现在讨论提供S10。 0043 该方法包括提供S10表示建模对象的几何元素。几何元素因此是建模对象的几何 的一部分。几何元素可以是任何类型的。例如,几何元素可包 括基本的立体、基本的曲线 和/或基本的表面。在CAD广泛使用且下文中主要讨论的示例中,几何元素可以是S10处 提供的建模对象的边界表示(B-R。
32、ep)的(例如,所有的)面。几何元素还可以是B-Rep的 面的几何图案。在这种情形中,该方法直接执行图案识别的模式。 0044 提供S10可由工作于建模对象(例如,工作于它的边界表示)上的设计者产生,或 者例如可由该方法可用于例如从现有的库中取回的诸如B-Rep的现已存在的模型这一事 实产生。在任何情形中,可在S10处提供该建模对象作为B-Rep。边界表示是广泛公知的 用于根据3D对象的封皮(即,它的外表面)建模3D对象的格式。B-Rep因此指定可包括 几何数据和拓扑数据的具体格式的数据。几何数据是提供几何实体的数据,几何实体是根 据3D位置描述的实体。拓扑数据是提供拓扑实体的数据,拓扑实体是。
33、根据几何实体的参考 和/或与其他拓扑实体的关系(例如相对位置)描述的实体。典型地,所述关系可包括使 拓扑实体与其他拓扑实体相关联的“被划界”(is bounded by)关系,通过该关系,它们被拓 扑地划界。 0045 提供S10可排除任何历史数据。换句话说,S10处提供的建模对象可以是无历史 的。这是指建模对象没有与指示其设计历史的任何数据相关联,而是仅通过说明性数据,包 括例如B-Rep。因此,该方法可在设计者没有拥有建模对象的历史的环境中工作,这特别地 暗示,在建模对象上设计的几何图案不会同样地按照S10处提供的数据进行定义。 0046 在该方法的情形中,(例如,几何的)数据可包括所谓的。
34、“支持表面”,例如参数表 面(即,根据与定义2D域的参数相关联的3D位置建模的3D表面)。典型地,支持表面可以 是Nurbs表面,但也可以是平面的、规范化的或程序上的表面。并且,(例如,拓扑的)数据 可包括面的至少一个集合,各个面被定义为(几何数据中提供的)各自支持表面的有界部 分。因此,面对应于修整表面。因此,支持表面是在其上按照任何方式通过修整操作定义面 (从而“支持”面)的表面。S10处提供的几何元素因此是在整个数据中定义的这样的面。 0047 尽管广泛公知,但现在通过S10处可提供的建模对象的示例进一步讨论B-Rep的 概念。然而,对于至少一些拓扑实体,本方法可以设想B-Rep的其他示。
35、例,例如具有不同于 “被划界”关系的关系。同样,该方法可考 虑非B-Rep表示。 0048 如前所述,建模对象的B-Rep可包括拓扑实体和几何实体。几何实体可包括3D对 象,该3D对象是表面(例如,平面)、曲线(例如,线)和/或点。表面可以被提供为两个 参数的函数。曲线可被简单地提供为一个参数的函数。并且点可以被提供为3D位置。拓 扑实体可包括面、边和/或顶点。通过它的定义,面与各自表面(名为“支持表面”)的有界 部分相对应。术语“面”因此可中立地指定该表面的这种有界部分或者2D域的相应有界部 分。类似地,边与曲线(名为例如支持曲线)的有界部分相对应。术语“边”因此可指定曲 线或其领域的这种有。
36、界部分。顶点可定义为3D空间中到点的链接。这些实体如下地彼此 相关。曲线的有界部分通过位于曲线上的两个点(顶点)来定义。表面的有界部分通过其 说 明 书CN 103971417 A 7/20页 9 边界来定义,这个边界是位于表面上的边的集合。面的边界的边通过共用顶点连接在一起。 面通过共用边连接在一起。通过定义,两个面如果它们共用一个边则是相邻的。类似地,两 个边如果它们共用一个顶点则是相邻的。表面、曲线和点经由它们的参数化可链接在一起。 例如,可提供定义曲线的参数函数的参数值,以定义有界顶点。类似地,可提供将曲线的参 数链接到表面的两个参数的函数,以定义边界边。然而,B-Rep的这种拓扑数据。
37、的非常详细 的结构超出了本说明的范围。 0049 图4和图5图示了圆柱形插槽80的B-Rep模型;其可以是S10提供的,且由图上 标记为1、2和3的三个面组成:顶平面1和两个侧圆柱面2和3。图4示出了插槽80的立 体图。图5示出了所有面的分解图。重复的数字图示边和顶点共用。面1是平面的有界部 分。面1的边界包括边4和边5,它们的每一个都由顶点10和11划界。它们都具有相同的 支持圆。面2由位于无限圆柱形表面(即,面2的支持表面)上的边6、8、5和13划界。面 1和面2是相邻的,因为它们共用边5。面2和面3是相邻的,因为它们共用边8和边13。 面1和面3是相邻的,因为它们共用边4。 0050 图。
38、6图示了插槽80的B-rep模型的“被划界”拓扑关系。较高层101的节点是面, 中间层103的节点是边,以及较低层105的节点是顶点。图7和图8图示了拓扑实体(面、 边、顶点)和支持几何结构(无限圆柱、无限平面、无限线、点)之间的关系。在CAD系统 中,B-rep模型在适当的 数据结构中聚集“被划界”关系和拓扑实体与支持几何结构之间的 关系,以及支持几何结构的数学描述。换句话说,图6和图7所示的数据结构是这个示例的 部分拓扑数据,该示例包括几何数据的几何实体的链接(这是图7)和拓扑实体之间的链接 (这是图6)。 0051 现在将讨论该方法的其他动作(包括步骤S20-S40)。 0052 在S1。
39、0处提供的几何元素包括集合(例如,至少一个集合),在该集合中几何元素 是另一个几何元素的副本,或者换句话说,是彼此几何地等同的元素,或者是其他的几何复 制品。该方法包括:基于这些几何元素定义S20图表。对此,该方法可以包括提供该集合 的预定,或者另选地,确定该集合(例如,该方法确定将该集合的元素链接在一起的具体数 据)。这允许更快地执行定义S20。例如,在几何元素是B-Rep的面的集合的情况下,该方 法可以包括,例如,根据用户的触发,确定边界表示的面的所有子集,对于该边界表示,所述 面是另一个的副本。可以根据本领域技术人员所希望的任意实现方式来确定S10的集合。 例如,该方法可以包括执行一对面。
40、之间的比较,按照任意顺序浏览所述面。可以以任意方式 执行这种比较。稍后将提供示例。并且,作为CAD领域所公知的,涉及数值计算的任意确定 经受该系统应用的必需的数值逼近。在当前的情况中,可以确定面是彼此的副本,尽管它们 在理论上是略有差别的。这样,该方法可以实际地确定实质上是另一个的副本的面的集合。 然而,实现逼近的方式不是本讨论的主题,因此,“实质上是另一个的副本”和“是另一个的 副本”在下面并未进行区分。事实上仅考虑的是该方法遵循预定的标准以辨别两个几何元 素(例如,面)是另一个的副本。同样必须理解的是,该方法可以可替代地直接定义S20图 表,而不需要预先确定是另一个的副本的几何元素的集合。。
41、 0053 该方法包括定义S20随后被该方法密集使用的特定图表。作为图表理论公知的, 图表是具有节点和每条都连接一对节点的弧的数学对象。因此,该方法用计算机数据定义 S20这种结构,从在S10处提供的数据开始,可能在识别是另一个的副本(可以由该方法所 说 明 书CN 103971417 A 8/20页 10 确定的或者这样提供的)的几何元素的集合之后。此处注意的是,如果确定了一些这样的 集合,那么在S20处可以分别地定义一些图表。或者,可以随后在首次迭代未处理的集合 上迭代该方法。这些是实现方式细节。同样注意的是,可以在副本的完整集合或者它的部 分上定义该图表。这同样是实现方式的问题。在第一种。
42、方法中,为了全面地执行图案识别, 可以在整个集合上执行定义S10。 0054 现在,在S20处定义的图表具有特定的结构,其格式化由方法在S20处创建的数据 (如本领域技术人员所公知的)。每个节点都表示副本的集合的几何元素(例如,面)。例 如,将每个节点的名称例如经由指针链接到几何元素的参考。类似地,每条弧都表示刚性运 动,其将由一对节点中的一个节点所表示的几何元素转换为由该对节点中的另一个节点表 示的几何元素。任何几何元素(包括面)都可以被视为点集(并因此被该方法同样地处 理),即三维空间R 3 的子集。刚性运动是映射D:R 3 R 3 ,在两个点集间由D(x)Rx+T所 定义,其中R是旋转向。
43、量并且T是平移向量(对于它们中的一个可能是空(null)。刚性运 动D可以被简化注解为:D(R,T)。刚性运动是可逆的,由于yD(x)等同为xD -1 (y), 其中D -1 (y)R -1 y-R -1 T。三维刚性运动的组通常被注释为SE(3)。由于S10处提供的集合 的几何元素是另一个的副本,所以对于该集合的给定的两个几何元素,通过应用刚性运动, 理论上可以从其中一个推导出另外一个。 0055 该图表聚集描述这种推导(或转换)的数据。可以将刚性运动和相关的几何结 构实际地存储在所指向和连接的图表B(X,U,),其中节点X是几何结构,并且弧U 标注为刚性运动。该标注是映射m:USE(3)。。
44、更精确地,编写弧uU从节点(u) xX开始并且在节点(u)yX结束,意味着几何结构x和y是彼此的副本,并且刚 性运动m(u)将x变成y,其被注释为:ym(u)x。现在,假设弧vU连接x和zX,其 被写为(v)x和(v)z。将x变为z的刚性运动是zm(v)x。于是,z也是y的 副本,并且将y变成z的刚性运动是zm(v)m(u) -1 y。相反地,将z变成y的刚性运动是y m(u)m(v) -1 z。 0056 在此值得注意的是,涉及弧的定向的问题可以由本领域技术人员以任意方式进行 处理,因为它们是简单的实现方式问题。例如,给定一条弧并给定由该弧连接的两个节点, 可以以任意方式处理确定刚性运动的开。
45、始节点的问题(了解的是如果另一节点被用作开 始点,则刚性运动则是相反的)。为了充分理解,随后将提供一个实现方式的示例。 0057 同样值得注意的是,由于在S10处提供的集合的几何元素是另一个的副本,所以 在S20处定义的图表在这个集合中可以是完整的,其具有所有如上定义的弧。然而,为了效 率起见,该方法可以在S20处定义不完整的图表,根据任意预定标准排除完整图表的一些 弧(例如,表示与其他任何刚性运动不具有近似性的刚性运动的弧)。 0058 接着该方法包括确定S30遵守一些约束的图表的最大子图表。换句话说,在一些 预定约束下,该方法计算该图表的最大子图表(即,子图表是该图表的所有节点和弧的集 合。
46、的子集),也就是说,具有最多数量的元素的子图表。预定约束如下:在S30处确定的子 图表必须是对其由弧所表示的刚性运动全部都遵守预定的被称作“近似性”标准的一个子 图表。此处值得注意的是,在S30处确定的子图表不是必须不相交的,正如随后将举例说明 的,由于一些节点同时可能属于一些不同的最大子图表。 0059 近似性标准是指示两个刚性运动在它们在几何对象上操作的方式上是相似的标 说 明 书CN 103971417 A 10 9/20页 11 准。该近似性标准比一致性标准更弱,一致性标准将指示两个刚性运动是相同的(以数值 计算固有的上述逼近为模)。近似性标准和一致性标准都是预先确定的,这意味着该系统。
47、存 储一种方式去观察刚性运动对是否遵守这些标准的任意一个或者两者。因此,正如计算机 科学领域所公知的,该方法可以基于预定的近似性标准以任意方式/顺序执行比较,以便 确定最大子图表。 0060 现将提供特别适合机械设计领域的近似性标准的示例和特性。 0061 近似性的目标是:识别两个刚性运动以及它们的倒转(inverse)分别地以相同的 方式操作两个几何对象,而不管所述刚性运动不是必须相同的并且不管所述刚性对象是任 意地位于3D空间中的。 0062 为了简明,下面按照两个步骤来讨论近似性。第一步骤是定义两条弧的所谓的“类 似”,并且提供代数特性。由于这个第一定义涉及弧的定向,所以第二步骤通过以弧。
48、的定向 不是相关的这种方式重新使用“类似”来定义“近似性”。 0063 让u i ,i1,2是图表B的两条弧,并且D i m(u i ),该刚性运动分别与弧ui相关 联。让x i (u i )是弧u i 的起点的几何对象,让y i (u i )是弧u i 的终点的几何对象。 因此,定义y i D i (x i ),i1,2。 0064 作为定义,弧u 1 类同于弧u2,其被标记为u 1 u 2 ,如果存在刚性运动M,以便验证 以下两个条件: 0065 1.D 1 M -1 D 2 M 0066 2.x 2 M(x 1 ) 0067 使用更紧凑的符号,这可以写为:m(u 1 )M -1 m(u 。
49、2 )M和(u 2 )M(u 1 )。 0068 实际上,该定义并不依赖于选择弧u i 的起点x i ,而是终点y i 。更精确地,如果存在 像之前定义的刚性运动M,则存在另一刚性运动S,使得D 1 S -1 D 2 S和y 2 S(y 1 )。证 明如下。 0069 首先, 0070 y 2 D 2 (x 2 )D 2 M(x 1 )D 2 MD 1 -1 D 1 (x 1 )D 2 MD i -1 (y 1 ) 0071 于是,用SD 2 MD 1 -1 足以检查D 1 S -1 D 2 S 0072 D 1 M -1 D 2 MD 1 M -1 D 2 MD 1 -1 D 1 M -1 D 2 -1 D 2 MD 1 -1 (D 2 MD 1 -1 ) -1 D 2 (D 2 MD 1 -1 )S -1 D。