CN113228115A - 网格几何体到水密边界表示的转换 - Google Patents
网格几何体到水密边界表示的转换 Download PDFInfo
- Publication number
- CN113228115A CN113228115A CN201980072338.9A CN201980072338A CN113228115A CN 113228115 A CN113228115 A CN 113228115A CN 201980072338 A CN201980072338 A CN 201980072338A CN 113228115 A CN113228115 A CN 113228115A
- Authority
- CN
- China
- Prior art keywords
- computer
- boundary
- mesh
- quadrilateral
- smooth
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4097—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM
- G05B19/4099—Surface or curve machining, making 3D objects, e.g. desktop manufacturing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- B23Q3/00—Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine
- B23Q3/16—Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine controlled in conjunction with the operation of the tool
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
- B29C64/393—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
- B33Y50/02—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/30—Polynomial surface description
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35134—3-D cad-cam
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/49—Nc machine tool, till multiple
- G05B2219/49007—Making, forming 3-D object, model, surface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/10—Additive manufacturing, e.g. 3D printing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Manufacturing & Machinery (AREA)
- Materials Engineering (AREA)
- Chemical & Material Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Mechanical Engineering (AREA)
- Computational Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Optics & Photonics (AREA)
- Algebra (AREA)
- Mathematical Physics (AREA)
- Processing Or Creating Images (AREA)
Abstract
公开了用于物理结构的计算机辅助设计的方法、系统和设备,包括介质编码的计算机程序产品,所述方法包括:获得包括与一个或多个模型化实体相关联的多边形网格的第一3D模型,所述一个或多个模型化实体呈边界表示格式;从所述多边形网格产生四边形面片网络,所述四边形面片网络使用超限插值法将所述多边形网格与对应于所述一个或多个模型化实体的一条或多条平滑边界曲线组合;使用所述四边形面片网络作为输入并且至少部分地基于通过计算机辅助设计程序的几何建模内核可表示的最小尺寸来定义一个或多个局部可细化的平滑曲面表示;以及将所述一个或多个局部可细化的平滑曲面表示与所述一个或多个模型化实体组合以形成在所述一条或多条平滑边界曲线处水密的第二3D模型。
Description
相关申请的交叉引用
本申请要求于2018年11月9日提交的题为“计算机辅助设计中的生成设计几何到可编辑且水密的边界表示的转换”的美国专利申请No.62/758,053和于2019年4月18日提交的题为“网格几何到水密边界表示的转换”的美国专利申请No.16/388,771,两者以全文引用的方式并入本文中。
背景技术
本说明书涉及物理结构的计算机辅助设计,所述物理结构可使用增材制造、减材制造和/或其他制造系统和技术来制造。
已经开发出计算机辅助设计(CAD)软件并且将所述软件用于产生对象的三维(3D)表示,并且已经开发出计算机辅助制造(CAM)软件并且将所述软件用于例如使用计算机数控(CNC)制造技术来制造那些对象的物理结构。通常,CAD软件使用边界表示(B-Rep)格式存储要建模的对象的几何体的3D表示。B-Rep模型是一组连接的曲面元素,这些曲面元素指定模型化3D对象的实体部分和非实体部分之间的边界。在B-Rep模型(通常称为B-Rep)中,使用平滑且精确的数学曲面将几何体存储在计算机中,这与网格模型几何体的离散且逼近的曲面不同,后者很难在CAD程序中使用。
此外,CAD程序已经与减材制造系统和技术结合使用。减材制造是指通过切除库存材料的多个部分而从库存材料(通常是大于3D对象的“毛坯”或“工件”)创建3D对象的任何制造过程。这样的制造过程通常包括在一系列操作中使用多个CNC机器刀具,这些操作从粗加工、可选的半精加工和精加工开始。除CNC加工外,其他减材制造技术还包括电极放电加工、化学加工、喷水加工等。相反地,增材制造(也称为无实体形式制造或3D打印)是指从原材料(通常是粉末、液体、悬浮液或熔融固体)用一系列层或横截面建造3D对象的任何制造过程。增材制造的实例包括熔丝制造(FFF)和选择性激光烧结(SLS)。用于从原材料建造3D对象的其他制造技术包括铸造和锻造(热和冷)。
另外,已经设计出CAD软件,以便对要制造的较大零件系统中的零件或一个或多个零件执行3D几何体的自动产生(生成设计)。3D几何体的这种自动产生通常限于CAD软件用户指定的设计空间,并且3D几何体产生通常受设计目标和约束的支配,这些目标和约束可由CAD软件用户或其他人定义并且导入到CAD软件中。设计目标(例如最大程度地减少材料浪费或所设计零件的重量)可用于推动几何产生过程朝着更好的设计发展。设计约束既可包括单个零件的结构完整性约束(即,零件在零件使用期间在预期的结构载荷下不得失效的要求),也可包括由较大系统强加的物理约束(即,零件在使用期间不会干扰系统中的另一零件的要求)以及美学和可制造性约束。此外,生成设计过程的输入可包括一组输入实体(B-Rep输入),这些输入实体指定生成设计过程的边界条件,但是许多现代的生成设计求解器并不直接对其输入实体的确切曲面边界表示进行操作。作为替代,对B-Rep进行采样并且用体积表示法(例如,水平集或四面体或六面体网格)替换,体积表示法对于通过求解器计算的物理模拟和材料合成而言明显更加方便并且高效。
发明内容
本说明书涉及物理结构的计算机辅助设计,所述物理结构可使用增材制造、减材制造和/或其他制造系统和技术来制造。
一般地,本说明书中所描述的主题的一个或多个方面可用一种或多种方法体现(并且还可以用一个或多个非暂时性计算机可读介质体现,所述非暂时性计算机可读介质有形地编码可操作以致使数据处理设备执行操作的计算机程序),所述方法包括:在计算机辅助设计程序中获得要制造的对象的第一三维模型,其中所述第一三维模型包括与一个或多个模型化实体相关联的多边形网格,所述一个或多个模型化实体呈边界表示格式;通过所述计算机辅助设计程序从所述多边形网格产生四边形面片网络,所述四边形面片网络使用超限插值法将所述多边形网格与对应于所述一个或多个模型化实体的一条或多条平滑边界曲线组合;通过所述计算机辅助设计程序使用所述四边形面片网络作为输入并且至少部分地基于通过所述计算机辅助设计程序的几何建模内核可表示的最小尺寸来定义一个或多个局部可细化的平滑曲面表示;以及通过所述计算机辅助设计程序将所述一个或多个局部可细化的平滑曲面表示与所述一个或多个模型化实体组合以形成所述对象的第二三维模型,所述第二三维模型在所述一条或多条平滑边界曲线处水密。
所述多边形网格可由生成设计过程产生,所述生成设计过程采用所述一个或多个模型化实体作为所述生成设计过程的优化域的一个或多个子空间。所述生成设计过程可采用体积网格方法或水平集方法以创建所述对象的生成设计,并且所述多边形网格可包括原始的或转换而成的三角形网格。
所述产生可包括:从所述多边形网格提取所述四边形面片网络的四边形面片布局,其中所述四边形面片布局表示所述多边形网格的全局连续图的域的四边形划分;将所述四边形面片布局的至少一个边界映射到对应于所述一个或多个模型化实体的所述一条或多条平滑边界曲线;以及使用所述多边形网格的所述全局连续图、所述四边形面片布局的所述至少一个边界到所述一条或多条平滑边界曲线的所述映射和所述一条或多条平滑边界曲线的超限插值来构建曲面面片。所述方法可包括接收指定用于所述四边形面片网络的四边形大小、四边形形状或两者的用户输入。
所述定义可包括:基于所述四边形面片网络来构建一个或多个初始的局部可细化的平滑曲面表示;在所述一个或多个初始的局部可细化的平滑曲面表示的一个或多个边界对所述一个或多个初始的局部可细化的平滑曲面表示进行细化以在第一公差值内逼近所述一条或多条平滑边界曲线,所述第一公差值等于或大于通过所述计算机辅助设计程序的所述几何建模内核可表示的所述最小尺寸并且在所述计算机辅助设计程序的所述几何建模内核的支持的公差范围内;将所述一个或多个局部可细化的平滑曲面表示的控制点冻结在所述一个或多个边界;以及修改所述一个或多个局部可细化的平滑曲面表示的剩余内部部分以在第二公差值内逼近所述多边形网格,所述第二公差值等于或大于用于获得所述多边形网格的方法的准确度并且至少比所述第一公差值大一个数量级。
所述方法可包括接收指定所述第二公差值的用户输入。所述方法可包括:识别所述多边形网格的至少一个负边界跨场奇点;以及将所述至少一个负边界跨场奇点重定位到所述多边形网格的内顶点。所述组合可包括使用缝合操作以将所述一个或多个局部可细化的平滑曲面表示连接到呈所述边界表示格式的所述一个或多个模型化实体。
所述计算机辅助设计程序可包括在两个或更多个独立的计算机处理器上协同操作的两个或更多个程序。所述方法可包括通过所述计算机辅助设计程序提供所述第二三维模型以用于使用一个或多个计算机控制的制造系统来制造对应于所述对象的物理结构。所述提供可包括将所述第二三维模型保存到永久性存储装置以在使用所述一个或多个计算机控制的制造系统来制造对应于所述对象的所述物理结构时使用。所述一个或多个计算机控制的制造系统可包括增材制造机或减材制造机,并且所述提供可包括:使用所述第二三维模型针对所述增材制造机或所述减材制造机产生工具路径规范;以及使用针对所述增材制造机或所述减材制造机产生的所述工具路径规范,用所述增材制造机或所述减材制造机来制造对应于所述对象的所述物理结构的至少一部分。
另外,本说明书中所描述的主题的一个或多个方面可用一个或多个系统体现,所述系统采用一种或多种方法和一种或多种非暂时性计算机可读介质(例如,非暂时性存储介质)的,所述非暂时性存储介质上存储有计算机辅助设计程序的指令;以及一个或多个数据处理设备,所述一个或多个数据处理设备能够运行所述计算机辅助设计程序的所述指令以执行由所述计算机辅助设计程序的所述指令指定的操作(如本文中所描述)。所述网格可由生成设计过程产生,所述生成设计过程采用所述一个或多个模型化实体作为所述生成设计过程的优化域的一个或多个子空间,并且所述第二公差值可基于所述生成设计过程的表示准确度来设置。所述系统可包括一个或多个计算机控制的制造系统,所述制造系统包括增材制造机或减材制造机,其中所述一个或多个数据处理设备能够运行所述计算机辅助设计程序的所述指令以:从所述三维模型针对所述增材制造机或所述减材制造机产生工具路径规范,并且使用针对所述增材制造机或所述减材制造机产生的所述工具路径规范,用所述增材制造机或所述减材制造机来制造对应于所述对象的所述物理结构的至少一部分。
可实现本说明书中所描述的主题的特定实施方案以实现以下优点中的一个或多个。通用拓扑网格(例如,由生成设计过程的物理求解器产生的有机形状网格)可用一个或多个局部可细化的平滑曲面表示(例如,带有T形接头的非均匀有理卡姆尔-克拉克(Catmull-Clark)曲面(T-NURCC))来逼近,同时也将所述平滑曲面表示拟合到用于细化所述网格边界的一组平滑边界曲线,达到产生水密边界表示(例如,B-Rep)模型的精度水平。所述平滑边界曲线可由应用程序指定,以确保产生的曲面精确地符合现有的几何体,例如面片边界、相交和修剪曲线。产生的平滑曲面可使用与将平滑曲面的内部部分与所述网格拟合所使用的公差值不同的公差值拟合到数学上精确的平滑边界曲线。
可保证产生的平滑曲面的逼近公差在一极限内,所述极限确保所述曲面将附着到3D模型的其余部分,同时还无缝地逼近远离平滑边界曲线的具有较宽松公差的网格。举例来说,产生的曲面(例如,T-NURCC)可将平滑边界曲线逼近到比3D模型本身的尺寸小3到6个数量级内,因此所述平滑边界曲线在本质上与精确的交会一样好,并且所述平滑边界曲线在将产生的曲面缝合到3D模型中的实体上时替代精确的交会。因此,实现局部可细化的平滑曲面表示(例如,T-NURCC)到模型化实体(例如,B-Rep)的水密集成,其中自由形式的类似有机物形状在两侧伴有经典的CAD曲面,例如平面、圆柱体和非均匀有理基础样条(NURBS)面片。所描述的系统和技术的应用包括逆向工程(对象扫描)以及拓扑优化和生成设计,其中网格经常混合并且匹配有机和非有机形式。
所描述的系统和技术促进生成设计和拓扑优化的使用,这提供了一种获得满足物理设计要求的优化几何体的快速且经济高效的方式。大多数物理求解器对例如水平集和四面体网格的体积表示进行操作,并且优化的设计通常导出为网格。为了将这些设计集成到CAD程序集中,而不是CAD工程师必须花费大量时间使用传统的建模技术从头开始对合成形状进行重塑,本文中所描述的系统和技术可用于轻松地将网格转换为平滑曲面,所述平滑曲面可在CAD程序中有效处理(例如,无需大量处理时间即可轻松编辑)并且与CAD模型的其余部分无缝地集成。此外,精确几何体的可用性允许执行对本体的机械/美学性质的最终精确模拟和验证。这种验证对于网格通常并不精确,因为网格以逼近方式来定义形状。举例来说,在网格上,无法检查曲率是否连续。
在附图和以下的具体实施方案中阐述了本说明书中所描述的主题的一个或多个实施方案的细节。本发明的其他特征、方面和优点将从具体实施方式、附图和权利要求变得显而易见。
附图说明
图1示出了可用于设计和制造物理结构的系统的实例。
图2A示出了将网格几何体转换为要制造的对象的水密边界表示的过程的实例。
图2B示出了图2A的转换过程的实例,所述转换过程被应用于通过CAD实体模型的拓扑优化合成的有机网格。
图3A是示出了产生四边形面片网络并且使用所述四边形面片网络来定义一个或多个局部可细化的平滑曲面表示的过程的实例的概述的图形图。
图3B是将受不同方法影响的区域与超限插值法进行比较的图形图。
图3C是示出了图大小场对超限插值构造的影响的实例的图形图。
图4A是示出了产生四边形面片网络的过程的实例的流程图。
图4B是示出了超限面片构造的实例的图形图。
图5A是示出了使用四边形面片网络来定义一个或多个局部可细化的平滑曲面表示的过程的实例的流程图。
图5B是示出了四个边界条件的图形图。
图5C是示出了边界奇点重定位的实例的图形图。
图5D是示出了边界细化期间的局部结插入和用于平衡曲面域的局部细化传播的实例的图形图。
图5E是示出了四边形域样本网格、嵌套和细化的实例的图形图。
图6A到图6C示出了应用于通过拓扑优化和生成设计应用产生的有机网格的过程的结果的实例。
图7是包括数据处理设备的数据处理系统的示意图,所述数据处理设备可被编程为客户端或服务器。
各种附图中的相似参考数字和标志指示相似元件。
具体实施方式
图1示出了可用于设计和制造物理结构的系统100的实例。计算机110包括处理器112和存储器114,并且计算机110可连接到网络140,所述网络可以是专用网络、公共网络、虚拟专用网络等。处理器112可以是一个或多个硬件处理器,所述硬件处理器可各自包括多个处理器核心。存储器114可包括易失性和非易失性存储器两者,例如随机存取存储器(RAM)和闪速RAM。计算机110可包括各种类型的计算机存储介质和装置(计算机可包括存储器114),以存储在处理器112上运行的程序的指令,所述程序包括实现以下功能的计算机辅助设计(CAD)程序116:三维(3D)建模功能和网格几何体到要制造的零件的水密边界表示的转换。网格几何体可从不同来源获得,但是通常,网格几何体将与呈边界表示格式的一个或多个模型化实体相关联。
举例来说,系统100可包括3D扫描仪(未示出),其扫描物理对象180以产生所述物理对象的网格表示,并且CAD程序116可使用这个输入网格以通过将正则的几何体拟合到网格来产生一个或多个模型化实体(例如,B-Rep),并且CAD程序116可使用本文中所描述的系统和技术以将网格的剩余部分(那些过于复杂以至于无法使用正则几何体进行建模的部分)转换到边界表示格式(例如,B-Rep)并且将所述剩余部分与一个或多个模型化实体连接。在这个实例中,CAD程序116包括扫描和建模功能。
作为另一实例,CAD程序116可实现一个或多个生成设计过程,所述生成设计过程将材料或微结构技术和/或几何或宏观结构技术用于生成设计(例如,用于拓扑优化的带有惩罚的固体各向同性材料(SIMP)和/或水平集方法)。一个或多个模型化实体可使用传统的3D建模技术在(多个)CAD程序中产生(或加载到CAD程序中),并且可将这些模型化实体用作生成设计过程的优化域的一个或多个子空间。因此,生成设计过程可输出表示自动产生的几何体的网格,所述网格将与用作输入的模型化实体连接。此外,在各种实施方案中,CAD程序116可实现物理模拟(有限元分析(FEA)或其他)以及制造控制功能。
如本文中所使用,CAD是指用于设计满足指定设计要求的物理结构的任何合适程序,无论程序是否能够与特定的制造设备通过接口连接和/或控制特定的制造设备。因此,CAD程序116可包括计算机辅助工程(CAE)程序、计算机辅助制造(CAM)程序等。程序116可在计算机110上本地运行,在一个或多个远程计算机系统150(例如,一个或多个第三方供应商的经由网络140由计算机110可接入的一个或多个服务器系统)的计算机上远程运行,或在本地和远程地运行。因此,CAD程序116可以是在两个或更多个单独的计算机处理器上协同操作的两个或更多个程序,因为在计算机110上本地操作的程序116可通过使一台或多台计算机150上的一个或多个程序116执行卸载的处理操作而将处理操作(例如,网格转换、生成设计和/或物理模拟操作)卸载“到云端”。
CAD程序116在计算机110的显示装置120上呈现用户界面(UI)122,所述用户界面可使用计算机110的一个或多个输入装置118(例如,键盘和鼠标)来操作。请注意,尽管在图1中示出为单独的装置,但是显示装置120和/或输入装置118也可彼此集成在一起和/或与计算机110集成在一起,例如在平板计算机中(例如,触摸屏可以是输入/输出装置118、120)。此外,计算机110可包括虚拟现实(VR)或增强现实(AR)系统,或作为所述系统的一部分。举例来说,输入/输出装置118、120可包括VR/AR输入手套118a和/或VR/AR耳机120a。
如上所述,CAD程序116实现3D建模功能,这意味着可使用CAD程序116来建造3D模型132。CAD程序116可实现物理模拟(在本地和/或通过远程过程调用)以帮助建造3D模型132。例如FEA、计算流体动力学(CFD)、声学/噪音控制、热传导和/或计算注射成形模拟的物理模拟经常是基于CAD的产品开发中不可或缺的组成部分。CAD程序116可用于建造设计模型的精确几何描述,而物理模拟能够在不耗费时间进行物理测试的情况下提高性能。
CAD程序116可提供使得用户能够指定物理模拟的输入的用户界面元素,例如用于3D模型132的材料和载荷状态,其中载荷状态定义了所设计的零件在所述零件的使用期间要承受的不同方向上的载荷。因此,用户190可与CAD程序116的UI 122交互,包括为要制造的零件产生完整的机械问题定义,以便建造和修改可存储在3D模型文档130中的3D模型132。在图1的实例中,3D模型132具有特定的托架,但这只是可使用本文中所描述的系统和技术来设计的许多可能的3D模型中的一种。
此外,CAD程序116可实现至少一种生成设计方法(在本地和/或通过远程过程调用),所述生成设计方法使得CAD程序116能够基于设计标准来自动地产生3D模型132的一个或多个部分(或3D模型的整体),其中基于模拟反馈对几何设计进行迭代优化。请注意,如本文中所使用,“优化”(或“最优”)并不意味着在所有情况下都实现了所有可能设计中的最佳,而是在给定可用处理资源的情况下,从在分配的时间内可产生的可能设计的有限集合中选择最佳(或接近最佳)的设计。设计标准可由用户190或另一方定义,并且导入到CAD程序116中。举例来说,可通过例如经由显示装置120上的UI 122接收用户输入来为通过CAD程序116模型化的对象获得设计空间、载荷状态和设计标准。
在所示的实例中,3D模型132包括模型化实体部分134和网格部分136。模型化实体134被用作生成设计过程的输入(例如,作为保留体输入的B-Rep),生成设计过程考虑由输入几何体设置的边界条件而产生网格136。各种生成设计过程可用于优化3D模型132的网格部分136的形状和拓扑。输入实体134可被转换为网格几何体,以用作生成设计过程的输入,并且从生成设计过程输出的网格可包括对应于输入实体134的网格部分,并且这些部分可被去除以产生网格部分136。这个网格部分136接着被转换为边界表示格式(例如,B-Rep、T样条、细分曲面和/或其他计算机3D建模格式),并且连接到模型化实体部分134以在两个部分134、136之间的边界处形成水密模型132。
另外,在一些实施方案中,CAD程序116实现制造控制功能。一旦用户190对3D模型132满意,3D模型132就可存储为3D模型文档130和/或用于产生模型的另一种表示(例如,用于增材制造的.STL文件)。这可根据用户190的请求来进行,或根据用户对另一个动作的请求来进行,例如将3D模型132发送到增材制造(AM)机器170或其他制造机器,如所示,所述机器可直接连接到计算机110,或经由网络140连接。这可涉及在本地计算机110上实行的后处理,或将3D模型132导出到制造所依据的电子文档的云服务。请注意,电子文档(为简便起见将其简称为文档)可以是文件,但不一定与文件对应。文档可存储在保存其他文档的文件的一部分中,存储在专用于相关的文档的单个文件中,或存储在多个协调文件中。
在任何情况下,CAD程序116都可向AM机器170提供文档160(具有适当格式的工具路径说明)以产生物理结构180。AM机器170可采用一种或多种增材制造技术,例如颗粒技术(例如,粉末床熔合(PBF)、选择性激光烧结(SLS)和直接金属激光烧结(DMLS))、挤压技术(例如,熔融沉积建模(FDM),其可包括金属沉积AM)。在某些情况下,AM机器170直接建造物理结构180,而在某些情况下,AM机器170建造模具以供在铸造或锻造物理结构180时使用。另外,用户190可保存或发送3D模型132以供以后使用。举例来说,CAD程序116可存储包括3D模型132的文档130。
在一些实施方案中,CAD程序116针对将在制造过程中使用的减材制造(SM)机器174(例如,计算机数控(CNC)铣床,例如多轴多工具铣床)实现制造控制功能。举例来说,CAD程序116可为机器工具系统174产生CNC指令,所述机器工具系统包括可用于各种加工操作的多个工具174A(例如,具有不同大小和形状的实体碳化物圆角工具,和接收金属插件以创造不同切削曲面的不同大小的插入工具)。因此,在一些实现方式中,CAD程序116可向SM机器174提供对应的文档160(具有适当格式的工具路径规范,例如,CNC数控(NC)程序)以供在使用各种切削工具等制造物理设备180时使用。
在一些实现方式中,CAD程序116提供在第一制造阶段中例如使用直接AM和/或使用锻造和/或铸造方法来建造工件180的指令,并且CAD程序116还提供在第二制造阶段中例如在3轴CNC铣削系统中加工工件180(例如,粗加工和/或精加工操作)以便形成完整结构的指令。通常,可单独地或组合地采用各种不同的制造系统和技术以产生最终结构,并且CAD程序116可包括合适的算法以针对这些各种系统中的一个或多个产生工具路径规范160,以制造已经使用本申请中描述的系统和技术设计的零件。
图2A示出了将网格几何体转换为要制造的对象的水密边界表示的过程的实例。例如通过CAD程序116获得205对象的第一3D模型。第一3D模型包括与一个或多个模型化实体相关联的多边形网格。多边形网格可以是原始的或转换而成的三角形网格。各种类型的网格格式可用作输入,包括四面体网格或六面体网格。此外,如上所述,一个或多个模型化实体呈边界表示格式(例如,B-Rep),并且可以是已经适合扫描网格的正则几何体,或者可以是用作生成设计过程的输入的(多个)模型化实体,所述生成设计过程采用体积网格方法或水平集方法以为对象创建生成设计。因此,多边形网格可以是来自一个或多个生成设计过程的输出,所述生成设计过程采用所述一个或多个模型化实体作为生成设计过程的优化域的一个或多个子空间。
在一些实现方式中,过程的输入包括开放的通用拓扑网格M,其中被约束为一组平滑(分析、过程、样条)曲线{Ci}。这些曲线表示残留的B-Rep曲面上的边界边缘,并且可包括交会、修剪曲线、面片边界等。在一些实现方式中,例如通过CAD程序116可接收210用户输入,以定义用于网格到边界表示转换过程的一个或多个输入参数。
举例来说,可接收210用户输入以定义对应于一个或多个模型化实体的一条或多条平滑边界曲线(例如,曲线{Ci}),例如,CAD程序116可在UI 122中提供工具以定义平滑边界曲线。这些平滑边界曲线可基于此用户输入来获得215,并且表示残留的B-Rep曲面上的边界边缘。边界曲线是平滑的,因为数学上将边界曲线指定为在曲线的每个点具有连续的切线方向,网格边界却相反,网格边界在每个顶点(通常)处切线是不连续的。
在一些实现方式中,在没有用户输入的情况下,例如通过CAD程序116自动地获得215对应于一个或多个模型化实体的一条或多条平滑边界曲线(例如,过程从直接获得2053D模型进行到获得215边界曲线,然后潜在地直接产生230四边形面片网格)。举例来说,可使用已知算法以从网格和模型化实体产生模型化实体上的平滑边界曲线。在一些实现方式中,例如通过CAD程序116,通过以下操作来产生平滑边界曲线:将网格的边界投影在每个相应的B-Rep上,并且对B-Rep的同一面上的曲线用在那个面上的投影点的序列进行插值。因此,基于接收到的网格,为模型化实体产生一组一条或多条平滑曲线。
在一些实现方式中,可例如通过CAD程序116来接收210用户输入,以指定四边形大小、四边形形状或两者以供在从网格产生230四边形面片网络时使用。在这些情况下,可例如通过CAD程序116基于CAD输入来设置220四边形大小、四边形形状(例如,四边形的角度变化)或两者。另外,在一些实现方式中,可例如通过CAD程序116来接收210用户输入,以指定网格内部公差值以供在使用四边形面片网络定义235一个或多个局部可细化的平滑曲面表示时使用。在这些情况下,可例如通过CAD程序116基于用户输入来设置225网格内部公差值。
例如通过CAD程序116从多边形网格产生230四边形面片网络。这可包括将接收到的网格转换为三角形网格,以及附加操作,例如计算网格的全局连续四边形参数化图,和将全局连续四边形参数化图与对一个或多个平滑边界进行插值的程序四边形面片混合,如下文将更详细地描述。四边形面片网络(例如,使用超限插值法)将网格与对应于一个或多个模型化实体的一条或多条平滑边界曲线组合。超限插值构造可定义在边界处对曲线进行插值的C0面片网络,并且在内部与网格重合。因此,可以产生网格的全局连续四边形参数化模型,其中网格被网格上的四参数域划分。
例如通过CAD程序116使用四边形面片网络作为输入并且至少部分地基于通过计算机辅助设计程序(例如,CAD程序116)的几何建模内核可表示的最小尺寸来定义235一个或多个局部可细化的平滑曲面表示。通过应用逼近算法可将C0面片网络转换为T-NURCC曲面,所述逼近算法被设计成产生非常精确的边界拟合并且准确地再现所有边界角。这些性质允许B-Rep建模内核将输出的T-NURCC与邻近的B-Rep面拼接成水密的低公差B-Rep CAD模型,这意味着可通过下游CAD建模操作来处理所得的几何体而不会面临有机曲面与非有机曲面分离的风险。转换输出可包括T-NURCC曲面S,其中逼近{Ci}到非常严格的公差ξ>0,并且使用G1边界不连续性准确地再现所有角点。因此,将转换曲面缝合到残留的B-Rep的最大公差为<。此外,算法还可将M与S之间的逼近误差限制为用户指定的公差δ:δ≥ξ>0。在一些实现方式中,公差δ与合成M的物理求解器的粗略几何表示有关。无论如何,公差ξ取决于B-Rep模型分辨率,并且通常地,δ>>ξ。
在下文提供定义235的更多细节,但是请注意,一个或多个局部可细化的平滑曲面表示可以是T-NURCC、T样条、LR B样条或分层B样条。几何格式的许多合适变型可在各个实现方式中使用。无论如何,边界符合网格转换方法可使公差变得非常小:如果∈>0是基础的B-Rep分辨率,即模型中的最小可表示距离,则可使得来自转换到对应的B-Rep边界的间隙<10∈。在下游建模操作中,这种微小的公差实际上等效于精确模型,因为所述公差允许计算机辅助设计程序将B-Rep视为有效的水密模型,即,任何合适的下游操作都对模型有效。
请注意,公差建模提供修改邻近面曲面之间的间隙大于几何内核分辨率∈>0的CAD模型(也称为公差模型)的操作。这一要求意味着这些操作与对精确CAD模型进行的最大间隙小于或等于∈的操作相比不那么可靠和难以实现。此外,公差建模操作的可靠性很大程度上取决于间隙大小:间隙越大,操作产生有效结果的可能性越小。因此,在产生公差模型时将间隙大小减到最小对于确保模型可用于下游建模非常重要。在实践中,保持间隙大小<10∈使公差建模操作与精确模型操作一样可靠。从用户的角度看,这意味着具有最大间隙大小<10∈的公差模型和精确模型一样好。
例如通过CAD程序116将一个或多个局部可细化的平滑曲面表示与一个或多个模型化实体组合240以形成对象的第二3D模型,所述第二3D模型在一条或多条平滑边界曲线处水密。请注意,第二3D模型不必是单独的模型,而可以是第一3D模型的更新版本。所述组合可包括使用缝合操作以将所述一个或多个局部可细化的平滑曲面表示连接到呈所述边界表示格式的所述一个或多个模型化实体。可使用其他运算,例如布尔运算或细胞建模运算,但是缝合操作可以更快,更简单。无论如何,组合240之后的结果是水密的3D模型,这利于进一步处理,因为精确的数学曲面更容易使用CAD建模操作(例如,几何建模操作,例如孔、内圆角或壳,和创建装配关系,例如机械接头)、物理模拟操作和CAM操作进行加工。
图2B示出了图2A的转换过程的实例,所述转换过程被应用于通过CAD实体模型的拓扑优化合成的有机网格。在这个实例中,示出了来自图1的3D模型132的三个版本。3D模型132的初始版本包括模型化实体134和网格136。如视图260中放大所示,网格边界顶点262被约束到修剪曲线264,所述修剪曲线限制残余的修剪后实体B-Rep曲面134。要注意边界网格边缘262与修剪曲线264之间的间隙。构建T-NURRC曲面274,所述T-NURRC曲面将实心B-Rep曲面134的修剪曲线无缝地逼近到非常严格的公差,并且将网格内部逼近到较大的公差(例如,是严格的公差的十倍、一百倍或一千倍)。如视图270中放大所示,T-NURRC曲面274使用更多的靠近修剪曲线264的面片272以实现严格的公差。在一些实现方式中,最大边界偏差仅为网格边界球直径的4.9x10-6倍。此外,如图2B所示,控制T网格复杂性(例如,5287个面片)远离边界逐渐减小。
因此,如图2B所示,转换方法能够无缝地逼近{Ci}和M两者,并且产生定义满足这些不同边界和内部逼近要求的曲面的自适应结构化控制T网格。此外,可从转换输出和修剪后实体曲面将水密的实体B-rep模型缝合在一起;如视图280中放大所示,产生的曲面282以水密连接方式与修剪曲线264相交。在一些实现方式中,将T样条面片284与模型化实体134合并以产生更简单的最终B-Rep面布局。在一些实现方式中,缝合后B-Rep中的最大边缘公差为3∈,其中∈=10-6是模型分辨率(最小可表示距离)。
返回图2A,可例如通过CAD程序116提供250水密3D模型以供在使用一个或多个计算机控制的制造系统(例如,AM机器170、SM机器174和/或其他制造机器)制造对应于对象的物理结构时使用。提供250可涉及将水密3D模型保存到永久性存储装置中以供在使用一个或多个计算机控制的制造系统(例如,AM机器170和/或SM机器174)制造对应于对象的物理结构时使用。在一些实现方式中,提供250涉及例如通过CAD程序116使用水密3D模型针对计算机控制的制造系统(例如,AM机器170和/或SM机器174)产生252工具路径规范,和例如通过CAD程序116利用计算机控制的制造系统(例如,AM机器170和/或SM机器174)使用针对增材制造机器(例如,AM机器170和/或SM机器174)产生的工具路径规范来制造254对应于对象的物理结构的至少一部分。
因此,可设计边界符合网格转换方法以满足包括生成设计和拓扑优化CAD工作流程的CAD工作流程的要求。如下文更详细地描述,使用将输入网格与B-Rep边界曲线无缝组合的超限插值构造可实现这个目标。请注意,一个简单但有缺陷的解决方案是用三角形面片替换每个具有边界边缘的三角形,所述三角形面片插入对应的边界曲线段和内部网格边缘。图3B是示出了用于插值的输入的实例的图形图。
如所示,使用替换邻近于边界的输入三角形的三角形面片340对平滑曲线342进行插值影响具有凹凸不平的取决于镶嵌的形状的曲面(灰色)。这导致凹凸不平的镶嵌偏移的区域,其中{Ci}以有限的方式影响输出曲面;实际上,只有邻近于边界的三角形的区域会受边界曲线影响。相反地,计算M的全局四边形图和将图的图像与在域的边界处插值{Ci}的过程四边形面片混合使受经过插值的平滑曲线影响的曲面积与边界形状对齐。如图3B所示,使用过程四边形面片344对平滑曲线342进行超限插值导致边界形状的曲面区域(浅灰色),所述区域受经过插值的曲线342影响,并且影响区域与虚线所示的网格镶嵌无关。请注意,所有过程四边形面片344邻近于平滑曲线342。
而且,网格的四边形参数化不能替代网格,并且可具有四边形的不同形状(例如,更像矩形或更像正方形,或者更大的角度(各向异性))和大小,从而改变所产生的平滑曲面上的平滑曲线的影响区域。网格的四边形参数化用于对平滑曲线进行超限插值,但四边形是过程性的,而不是实际的3D几何四边形。确切地说,四边形面片344是网格上的参数域。四边形面片344将网格与要产生的平滑曲面关联,并且将网格保持为生成的几何体的源。
图3A是示出了产生四边形面片网络并且使用所述四边形面片网络来定义一个或多个局部可细化的平滑曲面表示的过程的实例的概述的图形图。所述过程包括两个主要阶段。在第一阶段中,构建C0四边形面片网络所述网络将网格M与B-Rep边界曲线{Ci}无缝地组合。图3A中的行300示出了输入数据和超限插值法。可通过计算整数网格图(IGM)来提取的四边形面片布局。使用φ-1,可将映射到输入曲线{Ci},并且可定义对位移场进行插值的面片。将这些面片添加到M=φ-1(Ω)获得C0曲面所述曲面在内插{Ci}并且在内部与M一致。
在第二阶段中,可定义T-NURCC曲面S(Ω),并且可解决逼近问题和其中δ≥ξ>0。图3A中的行310示出了逼近阶段的流程。可首先使用最小二乘优化和误差驱动的自适应细化的迭代来解决细化还可包括平衡部件,所述平衡部件在必要时将新的结传播到曲面内部,以确保总体过程稳定性。一旦满足边界条件,就冻结边界控制点,并且在内部实行类似过程。
请注意,使用整体公差来限制逼近误差在典型的CAD环境中是不可行的,因为即使对于CAD模型的适度复杂性实例,例如图2B所示的CAD模型的2.8×105个面片,在不引入大量面片的情况下,这不能满足典型CAD应用的准确度要求。因此,引入离散边界误差界限ξ:δ≥ξ>0的概念。由于在实践中δ>>ξ,所提出的技术可在解决非线性问题和的同时平衡曲面细化以保持稳定性。这个策略在可接受的时间和面片密度成本下实现所需的边界准确度(例如,图2B中所示的CAD模型的转换曲面由仅5287个面片组成)。此外,提出了对边界处的网格参数化的若干修改以更高效地表示输入曲线之间的角点(G1不连续性)。
最后,如上所述,可使用用户输入来影响四边形参数化。图3C是示出了图大小场对超限插值构造的影响的实例的图形图。在这个实例中,过程的输入是圆顶形网格360,所述网格具有四个被约束到平滑曲线362的边界边缘。在图3C中还示出了三个不同的转换输出,其中,对于每个后续实例,目标四边形大小减半。第一实例372示出了使用第一(大)四边形大小产生的结果,第二实例374示出了使用第二(中)四边形大小产生的结果,第三实例376示出了使用第三(小)四边形大小产生的结果。如所示,四边形参数化产生四边形形状,所述四边形形状具有弯曲边缘并且对边界处的平滑曲线362和内部的网格360进行插值。同样如所示,受曲线362影响的曲面区域逐渐减小,但保持与曲线形状的对齐(请注意,对于这些转换实例,禁用了曲面域的误差驱动细化,以说明与剩下的过程隔离的超限插值构造)。因此,曲线影响的程度可由与网格镶嵌无关的用户指定的大小场来控制,并且最终结果仍然是组合曲线362和网格360几何体的无缝连续曲面。
图4A是示出了产生四边形面片网络的过程的实例(例如,图2A中的产生230的实例)的流程图。通常,定义一种连续模型,其中所述连续模型组合曲线和网格;面片网络的超限插值构造能够定义将网格与平滑曲线组合的无缝连续曲面,其促进以轻松支持下游3D建模操作的水密方式将网格与CAD模型进行无缝集成。将网格自动转换为可在水密的低公差B-Rep模型中集成的平滑曲面是生成设计和拓扑优化CAD工作流程的关键促成因素。
从多边形网格(例如,三角形网格)提取405四边形面片布局。四边形面片布局表示网格M的全局连续图φ:M→Ω的参数域Ω的四边形划分。在一些实现方式中,输入包括开放的通用拓扑、可定向的2流形网格M=({Vi},{Ei},{Ti})和分配给边界边缘的C1曲线段{Ci(t):t∈[ti,0,ti,1]}。{Vi},{Ei},{Ti}是网格顶点、边和三角形。在不失一般性的情况下,可假设{Ti}是逆时针定向的。被约束到曲线段,即,对于每个我们都有Ci(ti,0)=Vi,0和Ci(ti,1)=Vi,1。
在一些实现方式中,通过应用整数网格图(IGM)方法来计算图φ,如在D.Bommes、M.Campen、H.-C.Ebke、P.Alliez、L.Kobbelt的用于可靠四边形网格化的整数网格图(Integer-grid maps for reliable quad meshing)(ACM Transactions on Graphics 32(2013))中所描述,如在M.Campen、D.Bommes、L.Kobbelt的量化的全局参数化(Quantizedglobal parametrization)(ACM Transactions on Graphics 34(2015))中提出的进行有效量化。可将图图像Ω划分为单位四边形布局Qi:Ψi+[0,1]2,Ψi∈Z2,{Qi|∪Qi=Ω}Ψi,并且Υ1分别表示四边形布局的顶点和边。IGM逆映射φ-1:Ω→M在构造中起到重要作用:给定Qi和(u,v)∈[0,1]2,φ-1(Qi,u,v)检索M上的对应点。通过为每个Qi存储一组重叠的三角形Θi={Tj|dim(φ(Tj)∩Qi)=2},通过定位 可非常有效地评估φ-1。
在一些实现方式中,过程包括附加步骤以解决边界奇点。可识别410网格的任何负边界跨场奇点。这可能在提取405期间发生,因为需要至少某种四边形参数化以识别负边界跨场奇点。举例来说,IGM参数化包括几个阶段,并且在方向场和跨场建立阶段之后,已经识别出参数化奇点的位置。因此,在调整奇点之前无需计算完整的参数化。如果存在,则可将一个或多个识别出的负边界跨场奇点重定位415到网格的内部顶点。关于这个过程的更多细节将结合图5B和图5C在下文进行描述。
无论如何,将四边形面片布局的至少一个边界映射420到对应于一个或多个模型化实体的一条或多条平滑边界曲线。举例来说,由于可通过针对合成曲线Γ来实现映射令 其中并且E0(tA)=φ-1(ΨA),EN(tB)=φ-1(ΨB),tA∈[t0,0,t0,1),tB∈(tN,0,tN,1]。将边缘曲线段C0[tA,t0,1],C1[t1,0,t1,1],…,CN[tN,0,tB]接合在一起得到几何体Γ。为了完成映射Υ→Γ并且避免依赖于{Ci}的参数化,Γ可通过将其弧长归一化为[0,1]来参数化。在需要数值积分以评估例如样条曲线的弧长函数的情况下,可使用在以下各项中描述的技术来重新计算si的准确B样条逼近:R.J.Sharpe、R.W.Thorne的用于从参数曲线提取弧长参数化的数值方法(Numerical method forextracting an arc length parameterization from parametric curves)(Computer-Aided Design 14(2)(1982)79–81),和J.W.Peterson的样条曲线的弧长参数化(ArcLength Parameterization of Spline Curves)(Journal of Computer-Aided Design 14(2)(2006))。
使用多边形网格的全局连续面片、四边形面片布局的至少一个边界到一条或多条平滑边界曲线的映射和一条或多条平滑边界曲线的超限插值来构建425曲面面片。图4B是示出了超限面片构造的实例450的图形图。令 对于每个构建面片所述面片将输入网格几何体φ-1(Qi)与分配给Qi的边界边缘的复合曲线{Γj}混合。令 为沿着等值线v=0,u=1,v=1,u=0逆时针排序的IGM边缘。也令如果则定义矢量场曲线其表示从φ-1(Υj)到Γj的位移,如下所示:
否则,定义然后,构建位移孔斯面片(参见S.A.Coons的用于空间形式的计算机辅助设计的曲面(Surfaces for Computer-Aided Design of Space Forms),Tech.rep.(1967))
Ξi(u,v)=(1-v)·μ0(u)+u·μ1(v)+v·μ2(u)+(1-u)·μ3(v)
最后,构建超限插值面片:
图5A是示出了使用四边形面片网络来定义一个或多个局部可细化的平滑曲面表示的过程的实例(例如,图2A中的定义235的实例)的流程图。举例来说,过程的这个第二阶段可逼近具有T-NURCC曲面S(Ω)的面片网络基于四边形面片网络来构建505一个或多个初始的局部可细化的平滑曲面表示(例如,T-NURCC、T样条、LR B样条或分层B样条)。
举例来说,可从上述的IGM四边形划分{Qi}提取用于输出曲面S的初始四边形控制网格。由于所有IGM奇点位于输入网格顶点上,因此无需进行局部优化以容纳“三角形内”奇点。S的初始四边形布局是完全均匀的,因此可针对每个四边形边缘Υi设置结间隔值di=1。由于利用局部边缘和四边形分割将S细化(参见SIGGRAPH’04,2004,p.276上的ACM SIG-GRAPH 2004论文中的T.W.Sederberg、D.L.Cardon、G.T.Finnigan、N.S.North,J.Zheng、T.Lyche的T样条简化和局部细化(T-spline simplification and local refinement)),将对结间隔值进行相应地更新。拆分Υi→{Υj,Υk}创建新的结间隔dj+dk=di。相应地,四等分Qi→{Qi,j,k}j,k=0,1拆分四侧结间隔di,u和di,v,其等于沿着u和v侧的边缘参数间隔的总和。
在随后的描述中,用{Qi}来标志细化后T-NURCC曲面的四边形域分区,并且用来标志初始的四边形分区。最初,每个面片琐细地对应于面片当对进行细化时,可使用参数平移和比例图来保持来自每个的对应关系,因此在本文中的后续描述中,省略了这个细节,并且改为使用
为了控制处的逼近,可通过应用沿着添加四边形面的0通道的标准方法来设置贝塞尔(Bézier)边界条件。图5B是示出了四个边界条件的图形图。在图5B中,实线表示四边形域{Qi},虚线表示0通道边缘。点550表示控制的边界控制点,较大的点550表示边界C1不连续性。点552表示控制沿着的切平面的控制点。
必要时,沿着边界添加附加顶点以对边界一阶导数进行插值,并且所述附加顶点准确地表示输入边界角。在正则边界顶点和指标1奇点处(参见正则顶点实例560和对应于指标1奇点的凸角顶点实例570),这个过程等效于在张量积NURBS曲面中插入边界结。
另外,使用局部结细化,可在正则顶点上创建G1不连续性(参见表示具有C1不连续性的边界角的正则顶点实例565)以表示远离图奇点的边界角。局部结插入可用于创建限定沿着的两个邻近的一阶导数的边界控制点。可在内部0通道边缘上复制T接头以允许切平面控制。
然而,负指标奇点上的凹边界顶点处理起来明显更复杂,如在J.Shen、J.Kosinka、M.Sabin、N.Dodgson的将CAD模型转换为非均匀细分曲面(Converting a CAD model intoa non-uniform subdivision surface)(Computer Aided Geometric Design 48(C)(2016)17–35)的附录A中所讨论的。如果使用C1不连续性内部传播方法来表示凹边界顶点(参见对应指标-1奇点的凹角顶点实例575),则在解决内部最小C1问题时应添加L2约束(如在下文结合修改520操作所详细描述的)。与实例565一样,可应用局部结插入以提供对实例575中的一阶导数的控制。然而,在这种情况下,所添加的边界结传播577到曲面内,以防止内部基函数影响此配置也可应用于更高价的边界顶点。
然而,在一些实现方式中,对于凹角顶点可采用替代方法。通过在计算网格跨场时将所有非角边界顶点的跨场指标限制为0,可防止除曲线段的G0接头处之外的任何地方的边界奇点。因此,是远离任何角点的C2,这降低了曲面复杂性,因为C1接头上没有切线控制点。
为了避免发源于凹边界角的C1内部不连续性,可对类似于在SIGGRAPH’08(ACMPress(New York,New York,USA,2008,p.1)卷27)上的ACM SIGGRAPH 2008论文中的T.W.Sederberg、G.T.Finnigan、X.Li、H.Lin、H.Ipson的水密性修剪后NURBS(Watertighttrimmed NURBS)中所描述的策略的策略进行改写,以用邻近的内部奇点来表示这样的角。实际上,这用图5B中的实例565中的类型替换了图5B中的实例575中的类型的边界条件。为此,在(上文结合图3A和图4A讨论的)IGM的计算期间(或之后),负边界跨场奇点可如下所述地重定位到附近的内部顶点。
图5C是示出了边界奇点重定位的实例的图形图。在虚线592上示出了负边界奇点594(奇点指标为-1),所述虚线表示重叠在网格590上的局部四边形分区。如所示,负边界奇点594被放置在大内角α>π(凹)边界顶点Vi上。将奇点重定位594A到邻近的内部顶点Vj,使得连接Vi、Vj的边缘尽可能地接近α的等分线。这导致正则顶点596替换边界处的负奇点顶点594。
令为分派给负指标奇点的输入网格边界顶点的子集。如图5C所示,选择对应的内部顶点然后,针对所有对交换跨场指标,并且更新跨场。在随后的IGM重新计算期间,可通过参数量化来强制将局部结插入应用于正则边界控制网格顶点{φ(Vi)}以设置图5B的实例565中的边界条件允许在处的对应角表示。
此技术有一些值得注意的局限性。顶点附近的输入网格可能太粗糙,因此合适的重定位顶点可能不存在或距内角α的等分线太远。可通过局部优化输入网格以引入更多的内部顶点来解决这个问题。另外,如果累积的内角太大,例如α>2π,并且奇点指标<-1,则重定位可引入大的参数失真,这会导致差的曲面质量。在这种情况下,最好接受内部C1不连续性。
返回图5A,在一个或多个初始的局部可细化的平滑曲面表示的一个或多个边界处对一个或多个初始的局部可细化的平滑曲面表示进行细化510(例如,迭代地逼近和细化可细化的平滑曲面的边界,直到B-rep上的曲线在CAD程序可认为这些曲线和边界重合的公差内被边界逼近为止)。这种细化致使平滑曲面表示在第一公差值(边界公差值)内逼近一条或多条平滑边界曲线。边界逼近公差值控制在转换为边界表示格式期间的与边界的偏差。因此,边界逼近公差应设置为足够小的值,以确保计算机辅助设计程序(例如,CAD程序116)会将平滑曲面表示视为在其平滑边界曲线上满足模型化实体。
边界逼近公差值可设置为等于或大于通过计算机辅助设计程序的几何建模内核可表示的最小尺寸,并且也可在计算机辅助设计程序的几何建模内核的支持的公差范围内,例如,小到足以允许CAD程序116的几何建模内核认为在所述公差范围内的曲线重合。举例来说,可将边界公差设置为一个值,所述值始终在几何内核的分辨率的100倍(通常小于)内,从而保持可接受的性能,并且这个公差值足够小,以允许几何内核认为曲面边界完全在B-rep上。请注意,将边界逼近公差设置为小于几何建模内核分辨率的值会增加复杂性,而不会获得附加的有用准确度。此外,可将边界逼近公差值设置为基本上高于几何建模内核的最小分辨率(尺寸),同时仍达到确保曲面连接的目的。设置较大的值提供不太准确的模型,但是导致表示更紧凑且运行时间更短。在一些实现方式中,将ξ设置为模型分辨率的10倍或甚至100倍,因为所得的B-Rep模型仍然足够准确,并且比利用现有方法能够达到的准确得多。在一些实现方式中,公差范围的上限高达内核分辨率的1000倍,因为在这个范围内的公差值仍可以足够小,以至于几何内核将曲线视为重合的。
在一些实现方式中,一旦构建了S(Ω),对求解则包括以下的迭代边界逼近操作:求解最小L2,估计和在适当情况下进行细化。最终,当时,过程收敛。对于边界L2拟合,请注意,由C2NURBS曲线组成,角点处除外。将离散化可如下所述地进行:
{(wk,tk)}是逼近对每个在区间[0,dγ]上积分的L2的牛顿-科特斯(Newton-Cotes)正交公式的权重和对应的一致参数。公式的顺序基于对应的复合曲线Γ的连续性。可应用标准最小二乘系统技术以解决沿着的控制点的最小问题。
对于边界角,令Ψ为表示如图5B的实例556、570、575中所示的C1不连续性的边界四边形顶点。令为对应的输入网格角顶点。通过针对V的位置和一阶导数Γ′i(di和Γ′i(0)将插值约束添加到最小二乘系统可将约束在Ψ,其中(Υi,Υj)是其邻近的四边形边缘。这些约束迫使准确地表示V处的边界形状。
关于边界误差,对于每个四边形边缘可应用非线性数值优化以计算如果区间细分仅限于二等分并且二元参数样本与牛顿-科特斯正交公式(如上所述)共享,则可得到有效评估。然而,由于取决于φ,因此在不需要参数误差界限时可能导致不必要的细化。一个有用但更昂贵的替代选择是计算对应的边界环路曲线之间的豪斯多夫距离由于因此这种几何度量可能导致细化减少。
图5D是示出了边界细化期间的局部结插入的实例的图形图。为了边界细化,所有可通过在中间参数处插入局部结来等分。如图5D中的530所示,内部单位四边形邻近于具有等分的边界边缘的边界0通道四边形。这种选择无需进行L2和离散化即可集成,因为可重复使用在这些计算中评估的样本。为了防止可能导致曲面质量问题的高度不均匀的结序列,可通过根据下式将所有边缘等分来平衡边界
边界边缘分割将在对应的0通道内部边缘上复制,从而将入射的0通道四边形等分。如图5D中的532所示,内部0通道边缘上的分割被复制,从而将0通道四边形等分。附加顶点控制跨边界的一阶导数,并且可由G1边界条件使用。随着边界的细化,可创建小支撑边界基函数与较大的内部基函数重叠的配置。为了避免这种非均匀参数化对曲面质量的潜在不利影响,可通过将邻近于0信道的任何四边形{Qi}四等分(如果di>2dj)而将边界细化自适应地传播到曲面内部,其中di是0通道四边形侧结长度,dj是此四边形侧上的最短0通道边缘的结长度。如图5D中的534所示,因为在后续细化期间将一个(或两个)较小的0通道四边形等分可导致配置变得不平衡,所以可将内部四边形四等分以重新平衡布局。如在下文结合图5E更详细地讨论的,可能需要对内部的进一步细化以重新平衡参数化。
返回图5A,将一个或多个局部可细化的平滑曲面表示的控制点冻结515在一个或多个边界处。沿着固定(冻结)控制点并且将所有修改限制在S的内部确保产生的曲面不会脱离利用模型化实体和其上的平滑曲线建立的接触。即使在逼近网格内部时从这一点开始可使用高得多的公差值,也是如此,例如,迭代求解最小L2,估计并且进行细化,直到为止。
修改520一个或多个局部可细化的平滑曲面表示的剩余内部部分以逼近网格。这种修改使平滑曲面表示在第二公差值(内部公差值)内逼近网格。内部逼近公差值控制在转换为边界表示格式期间的与网格的偏差。因此,内部逼近公差可被设置为远大于边界逼近公差,并且甚至可以是输入参数,例如,CAD程序116的输入,从而提供对新曲面应当与网格匹配的紧密程度的用户控制。
内部逼近公差值可被设置为等于或大于用于获得网格的方法的准确度。举例来说,当使用一个或多个生成设计过程获得网格时,可基于生成设计表示准确度来设置内部逼近公差值,例如,大于或等于生成设计表示准确度并且还足够小以保持网格的相关特征。作为另一实例,当通过扫描(例如,激光扫描)获得网格时,可基于扫描装置的准确度来设置内部逼近公差值,例如,大于或等于扫描装置的表示准确度。
请注意,将内部逼近公差设置为小于用于获得网格几何体的方法的准确度的值会增加复杂性,而不会获得明显的好处。此外,可使用比用于边界的值大得多的值。在一些实现方式中,第二(内部)逼近公差被设置为是第一(边界)公差值的至少一个数量级(10倍)的值。在一些实现方式中,第二(内部)逼近公差被设置为是第一(边界)公差值的至少两个数量级(100倍)的值。在一些实现方式中,第二(内部)逼近公差被设置为是第一(边界)公差值的至少三个数量级(1000倍)的值。
图5E是示出了四边形域样本网格、嵌套和细化的实例的图形图。如540处所示,在5×5网格上定义用于L2度量离散化的样本。每个样本由上的位置和S基函数组合组成。将边缘和顶点样本重新用于每个入射四边形。除了沿着的控制点位置是固定的并且不需要向能量添加光顺项(fairing term)之外,最小二乘系统和Li、Wan-Chiu、Ray,Nicolas和Lévy,Bruno的“自动和交互式网格到T样条的转换(Automatic and Interactive Mesh toT-spline Conversion)”中一样地组成,所述文章在第四届欧洲图形学几何处理研讨会论文集(2006)中,第191--200页。
如果存在从边界条件设置传播的任何内部C1不连续性(如上文结合段落[0076]到[0079]所讨论的),则应跨这些不连续性添加导数插值约束以实现C1内部连续性这些约束可应用于图5B所示的内部控制点559。
尽管可使用多变量优化以准确地计算参数误差 但是计算成本在许多应用中是不可接受的。作为替代,如图5E中的542所示,可细化距离样本的当前均匀二元网格,并且可在更精细的9×9网格上计算通过在两个参数方向上将样本网格分辨率加倍,如542所示,当评估误差时,这将细化样本嵌套在现有网格内。
如果随后对四边形进行细化,则立即可获得更精细的四边形网格样本,并且仅需要更新基函数组合以考虑添加的控制点。请注意,在细化 时需要格外小心。所使用的局部边缘分割可能已经存在于边界上,或者可能需要分割边界边缘。在后一种情况下,可使用任何添加的边界控制点,以通过沿着所有受影响的边界再次求解最小(在上文在段落[0087]中讨论)来进一步改善沿着的逼近。在内部迭代完成后即可进行此操作。
实际上,如果视需要将更多四边形细化以维持“标准”的T样条基本性质,则观察到改善的输出曲面质量,如ACM Transactions on Graphics(2003年卷22,第477页)中的T.W.Sederberg、J.Zheng、A.Bakenov、A.Nasri的T样条和T-NURCC(T-splines and T-NURCCs)中所描述。应用Computer Methods in Applied Mechanics and Engineering213-216(2012)206–222中的M.A.Scott、X.Li、T.W.Sederberg、T.J.Hughes的适用于分析的T样条的局部细化(Local refinement of analysis-suitable T-splines)中所描述的方法可使这样的四边形的数目保持很低,并且防止过度的输出复杂性。在一些实现方式中,可使用贪婪方法,这可能偶尔导致过度的内部细化。
图6A到图6C示出了应用于通过拓扑优化和生成设计应用产生的有机网格的过程的结果的实例。如图6A所示,生成设计产生三个有机网格600、602、604。所有网格边界被限制为过程修剪曲线(例如,在3D模型的放大区域中示出的曲线606、608),所述过程修剪曲线被构建成正好位于优化的B-Rep模型中的现有非有机曲面610、612、614、616、618、620、622上。在这个实例中,将ξ设置为100×B-Rep分辨率。为了使公差值在转换实例的上下文中有意义,相对于输入网格的边界球直径给出ξ的值(例如,ξ=3x10-6)。在这个实例中,δ=100ξ。
图6B示出了为有机网格600、602、604产生的所得T-NURCC曲面630、632、634。如3D模型的放大区域所示,随着曲面接近过程修剪曲线606、608,四边形面片变得更加详细636、638。另外,图6C是示出了在水平轴上指示的迭代时的逼近度量的图表。曲线图650、652、654分别跟踪误差度量和误差值在左垂直轴上示出。由于仅针对边界迭代测量边界度量,且仅针对内部迭代测量因此这些图形可能不覆盖整个水平范围。另外,曲线图656跟踪每次迭代后的输出面片的数量|{Qi}|,并且值在右垂直轴上示出。在这个实例中,输出面片的最终数量|{Qi}|为34,532,运行时间为42分钟(此处的运行时间包括IGM计算)。
图7是包括数据处理设备700的数据处理系统的示意图,所述数据处理设备可被编程为客户端或服务器。数据处理设备700通过网络780与一台或多台计算机790连接。尽管在图7中仅示出一台计算机作为数据处理设备700,可使用多台计算机。数据处理设备700包括可分布在应用层与操作系统之间的各种软件模块。这些软件模块可包括可执行和/或可解释的软件程序或库,包括实现本文中所描述的系统和技术的一个或多个3D建模程序704的工具和服务。因此,(多个)3D建模程序704可以是(多个)CAD程序704,所述CAD程序实现3D建模功能和网格几何体到要制造的零件的水密边界表示的转换。
此外,(多个)程序704可实现物理模拟操作(有限元分析(FEA)或其他)、生成设计操作(例如,将基于水平集的方法用于生成设计)和/或制造控制操作(例如,产生和/或应用工具路径规范以影响设计对象的制造)。在一些实现方式中,(多个)程序704是具有生成设计功能的(多个)CAD程序704,生成设计功能使用网格输出到可编辑的水密B-Rep的转换。从一种实现方式到另一种实现方式,所使用的软件模块的数量可以改变。此外,软件模块可分布在通过一个或多个计算机网络或其他合适的通信网络连接的一个或多个数据处理设备上。
(多个)3D建模程序704的网格几何转换功能(和(多个)CAD程序116的类似功能)可被设计成对边界受约束的网格进行操作并且非常紧密地逼近平滑边界曲线约束。这可通过使用超限插值来实现,以减少准确地将平滑曲线边界与模型化实体匹配所需的四边形面片的总数。所使用的网格参数化方法可以是IGM,可同时为所有违反误差界限的面片添加新的控制点,并且不需要向L2能量添加光顺项。这些选择很好地补充了符合边界的组件,并且不会影响内部的输出曲面质量。此外,即使对于通过拓扑优化和生成设计过程合成的非常详细且复杂的有机网格,所描述的过程也收敛并且稳定地执行。由于转换曲面边界符合修剪后的残留B-Rep的边界边缘,因此可产生公差非常小的水密CAD模型以满足下游建模操作的要求。
数据处理设备700还包括硬件或固件装置,所述硬件或固件装置包括一个或多个处理器712、一个或多个附加装置714、计算机可读介质716、通信接口718以及一个或多个用户界面装置720。每个处理器712能够处理用于在数据处理设备700内执行的指令。在一些实现方式中,处理器712是单线程或多线程处理器。每个处理器712能够处理存储在计算机可读介质716上或存储在例如附加装置714之一的存储装置上的指令。数据处理设备700使用通信接口718以例如通过网络780与一台或多台计算机790通信。用户界面装置720的实例包括显示器、照相机、扬声器、传声器、触觉反馈装置、键盘、鼠标以及VR和/或AR设备。数据处理设备700可将例如实现与上述程序相关联的操作的指令存储在计算机可读介质716或一个或多个附加装置714(例如,硬盘装置、光盘装置、磁带装置和固态存储装置中的一个或多个)上。
本说明书中描述的主题和功能操作的实施方案可用数字电子电路或用计算机软件、固件或硬件(包括本说明书中公开的结构及其等效结构)或用前述各项中的一个或多个的任何组合来实现。本说明书中描述的主题的实施方案可使用计算机程序指令的一个或多个模块来实现,所述计算机程序指令编码在非暂时性计算机可读介质上以供数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是制成品,例如计算机系统中的硬盘驱动器,或通过零售渠道出售的光盘,或嵌入式系统。可分别获取计算机可读介质,并且随后用计算机程序指令的一个或多个模块进行编码,例如,在通过有线或无线网络传送计算机程序指令的一个或多个模块之后。计算机可读介质可以是机器可读存储装置、机器可读存储衬底、存储器装置或它们中的一个或多个的组合。
术语“数据处理设备”涵盖用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,所述设备还可包括产生相关的计算机程序的执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、运行时环境或它们中的一个或多个的组合的代码。另外,所述设备可采用各种不同的计算模型基础设施,例如万维网服务、分布式计算和网格计算基础设施。
计算机程序(还被称为程序、软件、软件应用、脚本或代码)可任何合适形式的编程语言(包括编译性或解释性语言、宣言式或过程式语言)编写,并且计算机程序可以任何形式部署,包括作为独立程序或作为模块、部件、子例程或适用于计算环境的其他单元。计算机程序不一定对应于文件系统中的文件。程序可存储在保存其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、存储在专用于相关的程序的单一文件中,或存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。计算机程序可被部署成在一台计算机上或在位于一个地点或分布在多个地点并且通过通信网络互连的多台计算机上执行。
本说明书中描述的过程和逻辑流程可由一个或多个可编程处理器来执行,所述一个或多个可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作和产生输出来执行功能。所述过程和逻辑流程也可由专用逻辑电路执行,并且设备也可实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
适合于执行计算机程序的处理器例如包括通用微处理器和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。通常,计算机还将包括用于存储数据的一个或多个大容量存储装置,例如,磁盘、磁光盘或光盘,或可操作地耦合以从所述大容量存储装置接收数据或将数据传送到所述大容量存储装置,或进行这两种操作。然而,计算机不必具有此类装置。此外,计算机可嵌入到例如以下各项的另一装置中:移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储装置(例如,通用串行总线(USB)闪存驱动器),仅举几例。适合存储计算机程序指令和数据的装置包括所有形式的非易失性存储器、介质和存储器装置,包括例如半导体存储器装置,例如EPROM(可擦可编程只读存储器)、EEPROM(电可擦可编程只读存储器)和闪速存储器装置;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM磁盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的互动,本说明书中描述的主题的实施方案可在具有以下各项的计算机上实现:用于向用户显示信息的显示装置,例如,LCD(液晶显示器)显示装置、OLED(有机发光二极管)显示装置或另一监视器,和键盘和指向装置(例如,鼠标或轨迹球),用户可通过其提供输入到计算机。其他类型的装置也可用以提供与用户的互动;例如,提供给用户的反馈可以是任何合适形式的感官反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且来自用户的输入可以任何合适形式被接收,包括声音、语音或触觉输入。
计算系统可包括客户端和服务器。客户端和计算机通常彼此远离并且通常通过通信网络进行交互。客户端和服务器之间的关系借助于在相应的计算机上运行并且彼此之间具有客户端-服务器关系的计算机程序而产生。本说明书中描述的主题的实施方案可计算系统中实现,所述计算系统包括例如作为数据服务器的后端部件,或包括例如应用服务器的中间件部件,或包括前端部件(例如,具有图形用户界面或浏览器用户界面的客户端计算机,用户可通过图形用户界面或浏览器用户界面与本说明书中描述的主题的实现方式进行交互),或包括一个或多个此类后端部件、中间件部件或前端部件的任何组合。系统的部件可通过任何合适形式或介质的数字数据通信(例如,通信网络)互连。通信网络的实例包括局域网(“LAN”)和广域网(“WAN”)、互联网络(例如,互联网)和对等网络(例如,专用对等网络)。
尽管本说明书含有许多实现方式细节,但是这些细节不应被解释为对所要求保护的或可以要求保护的范围的限制,而应理解为对所公开主题的特定实施方案特有的特征的描述。本说明书中以单独实施方案为背景描述的某些特征还可以组合方式在单一实施方案中实现。相反地,在单一实施方案的背景下描述的各个特征还可单独地或以任何合适子组合的方式在多个实施方案中实现。此外,虽然上文将特征描述成以某些组合作用并且甚至最初这样要求,但来自所要求的组合的一个或多个特征在一些情况下可脱离所述组合,且所要求的组合可针对子组合或子组合的变化。
类似地,当附图中以特定次序描绘操作时,这不应被理解为需要以所示的特定次序或按顺序次序来执行所述操作,或执行所有图示的操作以达到期望结果。在某些情形中,多任务和并行处理可能是有利的。此外,上文描述的实施方案中的各种系统部件的分离不应被理解为在所有实施方案中都需要这种分离,并且应理解,所描述的程序部件和系统通常可一起集成在单一软件产品中或封装到多个软件产品中。
因此,已经描述了本发明的特定实施方案。其他实施方案在下述权利要求的范围内。另外,权利要求中列举的行为可以不同次序执行并且仍达到期望结果。
Claims (20)
1.一种方法,所述方法包括:
在计算机辅助设计程序中获得要制造的对象的第一三维模型,其中所述第一三维模型包括与一个或多个模型化实体相关联的多边形网格,所述一个或多个模型化实体呈边界表示格式;
通过所述计算机辅助设计程序从所述多边形网格产生四边形面片网络,所述四边形面片网络使用超限插值法将所述多边形网格与对应于所述一个或多个模型化实体的一条或多条平滑边界曲线组合;
通过所述计算机辅助设计程序使用所述四边形面片网络作为输入并且至少部分地基于通过所述计算机辅助设计程序的几何建模内核可表示的最小尺寸来定义一个或多个局部可细化的平滑曲面表示;以及
通过所述计算机辅助设计程序将所述一个或多个局部可细化的平滑曲面表示与所述一个或多个模型化实体组合以形成所述对象的第二三维模型,所述第二三维模型在所述一条或多条平滑边界曲线处水密。
2.如权利要求1所述的方法,其中所述多边形网格由生成设计过程产生,所述生成设计过程采用所述一个或多个模型化实体作为所述生成设计过程的优化域的一个或多个子空间。
3.如权利要求2所述的方法,其中所述生成设计过程采用体积网格方法或水平集方法以创建所述对象的生成设计,并且所述多边形网格包括原始的或转换而成的三角形网格。
4.如权利要求1所述的方法,其中所述产生包括:
从所述多边形网格提取所述四边形面片网络的四边形面片布局,其中所述四边形面片布局表示所述多边形网格的全局连续图的域的四边形划分;
将所述四边形面片布局的至少一个边界映射到对应于所述一个或多个模型化实体的所述一条或多条平滑边界曲线;以及
使用所述多边形网格的所述全局连续图、所述四边形面片布局的所述至少一个边界到所述一条或多条平滑边界曲线的所述映射和所述一条或多条平滑边界曲线的超限插值来构建曲面面片。
5.如权利要求4所述的方法,所述方法包括接收指定用于所述四边形面片网络的四边形大小、四边形形状或两者的用户输入。
6.如权利要求4所述的方法,其中所述定义包括:
基于所述四边形面片网络来构建一个或多个初始的局部可细化的平滑曲面表示;
在所述一个或多个初始的局部可细化的平滑曲面表示的一个或多个边界对所述一个或多个初始的局部可细化的平滑曲面表示进行细化以在第一公差值内逼近所述一条或多条平滑边界曲线,所述第一公差值等于或大于通过所述计算机辅助设计程序的所述几何建模内核可表示的所述最小尺寸并且在所述计算机辅助设计程序的所述几何建模内核的支持的公差范围内;
将所述一个或多个局部可细化的平滑曲面表示的控制点冻结在所述一个或多个边界;以及
修改所述一个或多个局部可细化的平滑曲面表示的剩余内部部分以在第二公差值内逼近所述多边形网格,所述第二公差值等于或大于用于获得所述多边形网格的方法的准确度并且至少比所述第一公差值大一个数量级。
7.如权利要求6所述的方法,所述方法包括接收指定所述第二公差值的用户输入。
8.如权利要求6所述的方法,所述方法包括:
识别所述多边形网格的至少一个负边界跨场奇点;以及
将所述至少一个负边界跨场奇点重定位到所述多边形网格的内顶点。
9.如权利要求1所述的方法,其中所述组合包括使用缝合操作以将所述一个或多个局部可细化的平滑曲面表示连接到呈所述边界表示格式的所述一个或多个模型化实体。
10.如权利要求1所述的方法,其中所述计算机辅助设计程序包括在两个或更多个单独的计算机处理器上协同操作的两个或更多个程序。
11.如权利要求1所述的方法,所述方法还包括通过所述计算机辅助设计程序提供所述第二三维模型以在使用一个或多个计算机控制的制造系统来制造对应于所述对象的物理结构时使用。
12.如权利要求11所述的方法,其中所述提供包括将所述第二三维模型保存到永久性存储装置以在使用所述一个或多个计算机控制的制造系统来制造对应于所述对象的所述物理结构时使用。
13.如权利要求11所述的方法,其中所述一个或多个计算机控制的制造系统包括增材制造机或减材制造机,并且所述提供包括:
使用所述第二三维模型针对所述增材制造机或所述减材制造机产生工具路径规范;以及
使用针对所述增材制造机或所述减材制造机产生的所述工具路径规范,用所述增材制造机或所述减材制造机来制造对应于所述对象的所述物理结构的至少一部分。
14.一种系统,所述系统包括:
非暂时性存储介质,所述非暂时性存储介质上存储有计算机辅助设计程序的指令;以及
一个或多个数据处理设备,所述一个或多个数据处理设备能够运行所述计算机辅助设计程序的所述指令以执行由所述计算机辅助设计程序的所述指令指定的操作;
其中所述计算机辅助设计程序的所述指令包括
用于从网格构建四边形面片网络的装置,所述四边形面片网络将所述网格与要制造的对象的三维模型中的一个或多个模型化实体上的一条或多条平滑边界曲线无缝地组合,
用于在所述网格的边界使用第一公差值和在所述网格的内部使用第二公差值来从所述四边形面片网络产生一个或多个平滑曲面的装置,所述第一公差值基于所述计算机辅助设计程序支持的最小三维模型分辨率来设置,并且所述第二公差值比所述第一公差值大至少三个数量级,以及
将所述一个或多个平滑曲面与所述三维模型中的所述一个或多个模型化实体组合的指令。
15.如权利要求14所述的系统,其中所述网格由生成设计过程产生,所述生成设计过程采用所述一个或多个模型化实体作为所述生成设计过程的优化域的一个或多个子空间,并且所述第二公差值基于所述生成设计过程的表示准确度来设置。
16.如权利要求15所述的系统,所述系统包括用于在产生所述一个或多个平滑曲面之前除去所述网格的任何负边界跨场奇点的装置。
17.如权利要求16所述的系统,所述系统包括一个或多个计算机控制的制造系统包括增材制造机或减材制造机,其中所述一个或多个数据处理设备能够运行所述计算机辅助设计程序的所述指令以:从所述三维模型针对所述增材制造机或所述减材制造机产生工具路径规范,并且使用针对所述增材制造机或所述减材制造机产生的所述工具路径规范,用所述增材制造机或所述减材制造机来制造对应于所述对象的所述物理结构的至少一部分。
18.一种对指令进行编码的非暂时性计算机可读介质,所述指令可操作以致使数据处理设备执行包括以下各项的操作:
在计算机辅助设计程序中获得要制造的对象的第一三维模型,其中所述第一三维模型包括与一个或多个模型化实体相关联的多边形网格,所述一个或多个模型化实体呈边界表示格式;
通过所述计算机辅助设计程序从所述多边形网格产生四边形面片网络,所述四边形面片网络使用超限插值法将所述多边形网格与对应于所述一个或多个模型化实体的一条或多条平滑边界曲线组合;
通过所述计算机辅助设计程序使用所述四边形面片网络作为输入并且至少部分地基于通过所述计算机辅助设计程序的几何建模内核可表示的最小尺寸来定义一个或多个局部可细化的平滑曲面表示;以及
通过所述计算机辅助设计程序将所述一个或多个局部可细化的平滑曲面表示与所述一个或多个模型化实体组合以形成所述对象的第二三维模型,所述第二三维模型在所述一条或多条平滑边界曲线处水密。
19.如权利要求18所述的非暂时性计算机可读介质,其中所述产生包括:
从所述多边形网格提取所述四边形面片网络的四边形面片布局,其中所述四边形面片布局表示所述多边形网格的全局连续图的域的四边形划分;
将所述四边形面片布局的至少一个边界映射到对应于所述一个或多个模型化实体的所述一条或多条平滑边界曲线;以及
使用所述多边形网格的所述全局连续图、所述四边形面片布局的所述至少一个边界到所述一条或多条平滑边界曲线的所述映射和所述一条或多条平滑边界曲线的超限插值来构建曲面面片。
20.如权利要求19所述的非暂时性计算机可读介质,其中所述定义包括:
基于所述四边形面片网络来构建一个或多个初始的局部可细化的平滑曲面表示;
在所述一个或多个初始的局部可细化的平滑曲面表示的一个或多个边界对所述一个或多个初始的局部可细化的平滑曲面表示进行细化以在第一公差值内逼近所述一条或多条平滑边界曲线,所述第一公差值等于或大于通过所述计算机辅助设计程序的所述几何建模内核可表示的所述最小尺寸并且在所述计算机辅助设计程序的所述几何建模内核的支持的公差范围内;
将所述一个或多个局部可细化的平滑曲面表示的控制点冻结在所述一个或多个边界;以及
修改所述一个或多个局部可细化的平滑曲面表示的剩余内部部分以在第二公差值内逼近所述多边形网格,所述第二公差值等于或大于用于获得所述多边形网格的方法的准确度并且至少比所述第一公差值大一个数量级。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862758053P | 2018-11-09 | 2018-11-09 | |
US62/758,053 | 2018-11-09 | ||
US16/388,771 US11016470B2 (en) | 2018-11-09 | 2019-04-18 | Conversion of mesh geometry to watertight boundary representation |
US16/388,771 | 2019-04-18 | ||
PCT/US2019/060589 WO2020097544A1 (en) | 2018-11-09 | 2019-11-08 | Conversion of mesh geometry to watertight boundary representation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113228115A true CN113228115A (zh) | 2021-08-06 |
Family
ID=66998482
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980073804.5A Active CN113348459B (zh) | 2018-11-09 | 2019-05-28 | 将网格几何结构转换为水密边界表示的方法、系统及介质 |
CN201980072338.9A Pending CN113228115A (zh) | 2018-11-09 | 2019-11-08 | 网格几何体到水密边界表示的转换 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980073804.5A Active CN113348459B (zh) | 2018-11-09 | 2019-05-28 | 将网格几何结构转换为水密边界表示的方法、系统及介质 |
Country Status (4)
Country | Link |
---|---|
US (4) | US11016470B2 (zh) |
EP (2) | EP3877887A1 (zh) |
CN (2) | CN113348459B (zh) |
WO (2) | WO2020096647A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114474741A (zh) * | 2022-01-11 | 2022-05-13 | 西北工业大学 | 一种多轴无支撑3d打印曲面切片方法、装置和服务器 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111436211B (zh) * | 2017-09-27 | 2023-12-22 | 香港科技大学 | 对用于增材制造的多维度胞元结构进行建模和设计的方法及设备 |
US11734477B2 (en) * | 2018-03-08 | 2023-08-22 | Concurrent Technologies Corporation | Location-based VR topological extrusion apparatus |
US11016470B2 (en) | 2018-11-09 | 2021-05-25 | Autodesk, Inc. | Conversion of mesh geometry to watertight boundary representation |
US20220180013A1 (en) * | 2019-03-15 | 2022-06-09 | Siemens Industry Software Inc. | Volume separation in cad models |
US11288417B2 (en) * | 2019-04-23 | 2022-03-29 | Autodesk, Inc. | Topology optimization of structure with multiple targets |
US11640485B1 (en) * | 2020-01-08 | 2023-05-02 | Ansys, Inc. | Generating CAD models from topology optimization data |
CN111814383B (zh) * | 2020-07-25 | 2022-05-31 | 西北工业大学 | 一种基于b样条密度法的自支撑结构拓扑优化设计方法 |
DE102021200999A1 (de) | 2021-02-03 | 2022-08-04 | Volkswagen Aktiengesellschaft | Modellierung und Fertigung eines Objekts basierend auf einem topologieoptimierten Rohteil |
US11593979B2 (en) * | 2021-04-28 | 2023-02-28 | Adobe Inc. | Editing raster images utilizing part-level semantic aware transformations |
US20220374556A1 (en) * | 2021-05-18 | 2022-11-24 | Hamilton Sundstrand Corporation | Parameterization of digital organic geometries |
CN113391819B (zh) * | 2021-06-23 | 2022-04-22 | 广东工业大学 | 一种基于边界表示的非流形cad软件之间的转换方法 |
US20220410002A1 (en) * | 2021-06-29 | 2022-12-29 | Bidstack Group PLC | Mesh processing for viewability testing |
US20230083607A1 (en) * | 2021-09-12 | 2023-03-16 | NexTech AR Solutions Corp. | Three-dimensional (3d) model generation from two-dimensional (2d) images |
CN113888566B (zh) * | 2021-09-29 | 2022-05-10 | 推想医疗科技股份有限公司 | 目标轮廓曲线确定方法、装置、电子设备以及存储介质 |
US20230298216A1 (en) * | 2022-03-15 | 2023-09-21 | Tencent America LLC | Predictive coding of boundary geometry information for mesh compression |
US20230394768A1 (en) * | 2022-06-03 | 2023-12-07 | Ansys, Inc. | System and method of generating smooth spline surface model preserving feature of physical object |
US20240020935A1 (en) * | 2022-07-15 | 2024-01-18 | The Boeing Company | Modeling system for 3d virtual model |
US11948248B2 (en) * | 2022-07-27 | 2024-04-02 | NexTech AR Solutions Corp. | Three-dimensional (3D) model generation from two-dimensional (2D) images |
CN116484702B (zh) * | 2023-06-26 | 2023-09-12 | 北京凌云智擎软件有限公司 | 一种适用于任意单元类型的非结构嵌套网格计算方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0208088D0 (en) * | 2002-04-09 | 2002-05-22 | Delcam Plc | Method and system for the generation of a computer model |
US8175734B2 (en) * | 2009-10-08 | 2012-05-08 | 3D M. T. P. Ltd. | Methods and system for enabling printing three-dimensional object models |
US20120029882A1 (en) | 2010-07-30 | 2012-02-02 | David Bommes | System and method for generating quadrangulations |
US9697326B1 (en) * | 2012-02-27 | 2017-07-04 | Kelly Eric Bowman | Topology graph optimization |
US10186079B2 (en) | 2012-05-14 | 2019-01-22 | Autodesk, Inc. | Adaptively joining meshes |
US8970590B1 (en) * | 2012-11-27 | 2015-03-03 | Msc.Software Corporation | Surface mesh generation systems and methods |
CN103617603B (zh) * | 2013-12-06 | 2016-02-24 | 南京大学 | 一种三维数字几何网格模型结构的自动修复方法 |
US9789651B2 (en) * | 2014-01-09 | 2017-10-17 | Siemens Product Lifecycle Management Software, Inc. | Method for structure preserving topology optimization of lattice structures for additive manufacturing |
US10354442B2 (en) * | 2014-11-12 | 2019-07-16 | Autodesk Inc. | Generative modeling framework for deferred geometry generation |
EP3051446A1 (en) * | 2015-02-02 | 2016-08-03 | Dassault Systèmes | Engraving a 2D image on a subdivision surface |
US10386801B2 (en) * | 2015-08-03 | 2019-08-20 | Baker Hughes, A Ge Company, Llc | Methods of forming and methods of repairing earth-boring tools |
WO2017142953A1 (en) * | 2016-02-16 | 2017-08-24 | Board Of Regents, University Of Texas System | Mechanisms for constructing spline surfaces to provide inter-surface continuity |
US10339226B2 (en) * | 2016-06-08 | 2019-07-02 | Ecole Polytechnique Federale De Lausanne (Epfl) | System and method for defining watertight and locally refinable surfaces with interpolatory control points |
CN106204748B (zh) * | 2016-07-05 | 2019-05-17 | 华南理工大学 | 一种基于特征的cad体网格模型编辑、优化方法 |
US10901118B2 (en) * | 2016-10-28 | 2021-01-26 | Exxonmobil Upstream Research Company | Method and system for enhancing meshes for a subsurface model |
EP3340085B1 (en) * | 2016-12-23 | 2021-11-03 | Dassault Systèmes | B-rep of the result of a two-axis 3d printing process |
US11016470B2 (en) | 2018-11-09 | 2021-05-25 | Autodesk, Inc. | Conversion of mesh geometry to watertight boundary representation |
US10467807B1 (en) * | 2018-11-09 | 2019-11-05 | Autodesk, Inc. | Facilitated editing of generative design geometry in computer aided design user interface |
-
2019
- 2019-04-18 US US16/388,771 patent/US11016470B2/en active Active
- 2019-05-28 EP EP19732163.1A patent/EP3877887A1/en active Pending
- 2019-05-28 CN CN201980073804.5A patent/CN113348459B/zh active Active
- 2019-05-28 WO PCT/US2019/034221 patent/WO2020096647A1/en unknown
- 2019-11-08 CN CN201980072338.9A patent/CN113228115A/zh active Pending
- 2019-11-08 WO PCT/US2019/060589 patent/WO2020097544A1/en unknown
- 2019-11-08 EP EP19836125.5A patent/EP3877953A1/en active Pending
-
2021
- 2021-04-13 US US17/229,320 patent/US11886165B2/en active Active
- 2021-05-12 US US17/318,531 patent/US11921491B2/en active Active
-
2023
- 2023-12-12 US US18/537,713 patent/US20240168460A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114474741A (zh) * | 2022-01-11 | 2022-05-13 | 西北工业大学 | 一种多轴无支撑3d打印曲面切片方法、装置和服务器 |
Also Published As
Publication number | Publication date |
---|---|
WO2020096647A1 (en) | 2020-05-14 |
US20210263499A1 (en) | 2021-08-26 |
US20200150624A1 (en) | 2020-05-14 |
CN113348459B (zh) | 2024-05-28 |
US20240168460A1 (en) | 2024-05-23 |
CN113348459A (zh) | 2021-09-03 |
WO2020097544A1 (en) | 2020-05-14 |
US11921491B2 (en) | 2024-03-05 |
US11016470B2 (en) | 2021-05-25 |
EP3877953A1 (en) | 2021-09-15 |
EP3877887A1 (en) | 2021-09-15 |
US11886165B2 (en) | 2024-01-30 |
US20210232120A1 (en) | 2021-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113228115A (zh) | 网格几何体到水密边界表示的转换 | |
US11455435B2 (en) | Conversion of geometry to boundary representation with facilitated editing for computer aided design and 2.5-axis subtractive manufacturing | |
US10599809B2 (en) | Mechanisms for constructing isocurves and corresponding surfaces to provide inter-surface continuity | |
US10896541B2 (en) | Facilitated editing of generative design geometry in computer aided design user interface | |
US7952575B2 (en) | Computer-implemented process and system for creating a parametric surface | |
US7893937B2 (en) | Method for creating a parametric surface symmetric with respect to a given symmetry operation | |
EP3340085B1 (en) | B-rep of the result of a two-axis 3d printing process | |
US20120221297A1 (en) | Global Deformation for a Modeled Object | |
Borrmann et al. | Principles of geometric modeling | |
CN115130253A (zh) | 产生用于生成对象的平滑曲面的细化控制网格 | |
US11120625B2 (en) | Producing overall curvature continuous surfaces from subdivision surface meshes | |
EP3347828A1 (en) | Data processing system and method | |
CN107526859B (zh) | 设计复合零件的外表面以用于生产模具的方法、装置及系统 | |
Mayer et al. | Computational Geometry Reconstruction from 3D Topology Optimization Results: A New Parametric Approach by the Medial Axis | |
US20220374556A1 (en) | Parameterization of digital organic geometries | |
US20230418986A1 (en) | Cad feature tree optimization | |
US20230290064A1 (en) | Processing a tesselation | |
Barazzetti | Turning Meshes into B-reps with T-splines | |
Zhongwei et al. | STL file generation from digitised data points based on triangulation of 3D parametric surfaces | |
JP2023143870A (ja) | スケッチ加工 | |
CN117313257A (zh) | Cad特征树生成 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |