CN112307532A - B样条函数的无网格细分方法 - Google Patents
B样条函数的无网格细分方法 Download PDFInfo
- Publication number
- CN112307532A CN112307532A CN202011018933.5A CN202011018933A CN112307532A CN 112307532 A CN112307532 A CN 112307532A CN 202011018933 A CN202011018933 A CN 202011018933A CN 112307532 A CN112307532 A CN 112307532A
- Authority
- CN
- China
- Prior art keywords
- spline
- subdivision
- control
- local
- splines
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 239000013598 vector Substances 0.000 claims abstract description 14
- 238000012986 modification Methods 0.000 claims abstract description 6
- 230000004048 modification Effects 0.000 claims abstract description 6
- 238000003780 insertion Methods 0.000 claims description 11
- 230000037431 insertion Effects 0.000 claims description 11
- 238000010845 search algorithm Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000002715 modification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Graphics (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种B样条函数的无网格细分方法,(1)设定插入控制顶点的坐标及其对应的参数坐标值,从当前网格中找出插入点所对应的局部节点向量;(2)调整其上几何形状,完成局部细分及几何形状修改调整;重复第(2)步,完成任意区域的局部形状的修改和调整。本发明细分无需对原有控制顶点和局部节点向量做任何修改,同时新插入控制顶点不会额外引入其它控制顶点,可以节省大量细分时的存储空间和减少几何数据访问时的复杂程度,且编程实现简单;易于嵌入现有商业CAD软件,如CATIA、UG等,不需要对软件中原有数据结构和算法做任何调整,每次细分,不需要对原有节点向量和控制顶点做任何修改。
Description
技术领域
本发明属于计算机辅助几何设计领域,在计算机图形学、数值逼近、图形图像识别,工业造型等方面应用极广,具体涉及到B样条函数的无网格细分方法。
背景技术
样条技术在数字化建模、设计和分析领域应用极为广泛,在近十几年,样条技术成为了实现CAD/CAE无缝连接中的关键技术,大量新的样条技术在这期间不断涌现,如其中T样条、THB样条、PHT样条等的提出,一定程度上提升样条细分时的效率,节省了储存空间。但是它们又都面临一定的局限性,如T样条细分必须满足一定要求才能有比较明确的细分规则,HB/THB样条细分时必须要满足细分区域的嵌套性,其实质也是在细分区域引入了一些辅助的多余的控制点;比如国内提出的PHT样条,具有较好的细分特性,但是细分仍需要依赖网格,理论相对复杂,不易编程实现,且只适用于奇次样条,与现有成熟商业CAD软件中样条技术集成难度较大。
发明内容
发明目的是针对现有技术不足,提出了一种局部无网格细分B样条方法,该方法仍然以B样条基函数为基底,细分时不受网格约束,可以在参数域任意位置插入点,对应到控制多边形或网格中,可以任意插入控制顶点,不会多引入任何一个多余控制顶点,推导出了可直接用于编程的递推式,易于编程现实,可直接嵌入现有CAD商业软件中,样条的局部细分更加灵活,可大大提高计算效率和减少存储空间。
具体技术方案为:
B样条函数的无网格细分方法,包括以下步骤:
步骤1:根据B样条基函数的递推式及根据实际需要设定的节点向量,建立所需要的B样条函数;此时B样条函数定义在最粗糙的全局张量积多边形或矩形网格中,直接采用经典的B样条基函数递推式和样条函数表达式即可;
步骤2:考察B样条所表示的几何形状或逼近函数哪些区域需要细分,在需细分区域所对应的控制网上插入一个、或分次、同时插入多个控制顶点进行局部形状控制;
步骤3:在参数域中给定或按一定参数化规则给出对应插入控制顶点的参数点坐标,并结合原参数域的划分形式,获取对应每个插入点的局部节点向量划分形式;
划分形式包含所有可能的查询和定义方法,一般针对插入点在参数域的角点、边或网格内部分别考虑,奇次样条要用到区别于偶次样条不同的查询和定义方法,这里包含多种定义局部节点向量的方法;
步骤4:按传统B样条的节点插入规则获取插入点所对应局部向量上的样条局部几何形状,可以通过查询搜索算法进行识别;
步骤5:通过插入的控制点修改其上定义的局部几何,如需多步迭代细分修改,重复步骤2~步骤4的操作,细分后的样条定义空间具有嵌套性。
其中,步骤1中建立所需要的B样条函数,为样条曲线、曲面及高维样条形体或逼近函数。
步骤1中所述最粗糙是指每个维度方向上的全局节点向量的节点个数只需满足n+2,n为样条次数,这也是T-spline、HB-spline、THB-spline等样条细分都需满足的最基本条件。
优选的,所述的B样条函数为奇次B样条函数或者偶次B样条函数。
本发明可以归结为一个完整的理论递推式进行实现,并且该递推式满足仿射组合定义,因而递推式是有意义的,且编程实现简单,易于推广。此外,该方法可以直接嵌入现有的CAD软件中,利用CAD中提供的样条API函数接口完成对样条形体的建模和无网格细分形状、优化等。
B样条无网格的细分可以从最粗糙的全局张量积网格开始,细分过程除需插入用于修形的控制点外,不会引入任何其他多余无关的控制点,每次细分时,上一次的控制顶点和网格可不做调整。
该方法的突出优点是:细分无需对原有控制顶点和局部节点向量做任何修改,同时新插入控制顶点不会额外引入其它控制顶点,可以节省大量细分时的存储空间和减少几何数据访问时的复杂程度,且编程实现简单;易于嵌入现有商业CAD软件,如CATIA、UG等,不需要对软件中原有数据结构和算法做任何调整,每次细分,不需要对原有节点向量和控制顶点做任何修改;提供了全新的不受网格约束的局部形状修改方法,该方法保留了几何保形,基函数单位分解,凸包等传统B样条原有的良好数学性质。
附图说明
图1为实施例插入表1中四个控制顶点后的3d模型;
图2为实施例修改了插入控制顶点y向坐标后的平面投影形状效果;
图3为实施例修改了插入控制顶点y向坐标后的平面投影形状效果;
图4为实施例修改了插入控制顶点y向坐标后的平面投影形状效果;
图5为实施例修改了插入控制顶点y向坐标后的平面投影形状效果;
图6为实施例插入表2中四个控制顶点后的3d模型;
图7为实施例对应图6中3d模型的平面投影图;
图8为实施例修改了插入控制顶点y向坐标后的平面投影形状效果。
具体实施方式
结合实施例说明本发明的具体技术方案。
为了显示无网细分的效果,这里选用了二次和三次B样条面进行说明。
1、首先选定一组以空间坐标(X,Y,Z)表示的控制顶点,这里给定的是4行4列共16个控制顶点,如下:
由于控制顶点都选定在一个平面内,因而构造的样条面为一个平面。
2、其次在B样条面对应参数平面的任意n个参数位置处插入n个控制点,用于对样条面局部形状修改,这里给定了2组参数坐标点和控制顶点,每组包含4个参数坐标位置点和对应的4个控制点,如下:
表1插入点的控制顶点及对应的参数坐标(二次)
表2插入点的控制顶点及对应的参数坐标(三次)
这组图片为对应表1中控制顶点插入后的二次样条曲面,图1为插入四个控制顶点进行形状修改后的3d模型,图2为图1的平面投影图,图3至图5都为3d模型的平面投影图,与图2不同的是,修改了表1中4个控制点的y坐标。具体的,图2对应表1中y向坐标分别修改为(4.0,-4.0,-4.0,4.0)。图3对应表1中y向坐标分别修改为(-4.0,4.0,4.0,-4.0);图4对应表1中y向坐标分别修改为(-4.0,4.0,-4.0,4.0);图5对应表1中y向坐标分别修改为(4.0,4.0,4.0,4.0)。
图6为对应表2中控制顶点插入后的三次样条曲面,图7对应图6中3d模型的平面投影图;图8修改了插入控制顶点y向坐标后的平面投影形状效果,对应表2中y向坐标分别修改为(10.0,10.0,10.0,10.0)。
由上述算例可以看出,可以实现单个插入控制点实现对单个二维B样条基函数的控制,无需引入过多的控制点。
Claims (4)
1.B样条函数的无网格细分方法,其特征在于,包括以下步骤:
步骤1:根据B样条基函数的递推式及根据实际需要设定的节点向量,建立所需要的B样条函数;此时B样条函数定义在最粗糙的全局张量积多边形或矩形网格中,直接采用经典的B样条基函数递推式和样条函数表达式即可;
步骤2:考察B样条所表示的几何形状或逼近函数哪些区域需要细分,在需细分区域所对应的控制网上插入一个、或分次、同时插入多个控制顶点进行局部形状控制;
步骤3:在参数域中给定或按一定参数化规则给出对应插入控制顶点的参数点坐标,并结合原参数域的划分形式,获取对应每个插入点的局部节点向量划分形式;
步骤4:按传统B样条的节点插入规则获取插入点所对应局部向量上的样条局部几何形状,可以通过查询搜索算法进行识别;
步骤5:通过插入的控制点修改其上定义的局部几何,如需多步迭代细分修改,重复步骤2~步骤4的操作,细分后的样条定义空间具有嵌套性。
2.根据权利要求1所述的B样条函数的无网格细分方法,其特征在于,步骤1中建立所需要的B样条函数,为样条曲线、曲面及高维样条形体或逼近函数。
3.根据权利要求1所述的B样条函数的无网格细分方法,其特征在于,步骤1中所述最粗糙,是指每个维度方向上的全局节点向量的节点个数只需满足n+2,n为样条次数。
4.根据权利要求1所述的B样条函数的无网格细分方法,其特征在于,所述的B样条函数为奇次B样条函数或者偶次B样条函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011018933.5A CN112307532A (zh) | 2020-09-25 | 2020-09-25 | B样条函数的无网格细分方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011018933.5A CN112307532A (zh) | 2020-09-25 | 2020-09-25 | B样条函数的无网格细分方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112307532A true CN112307532A (zh) | 2021-02-02 |
Family
ID=74488135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011018933.5A Pending CN112307532A (zh) | 2020-09-25 | 2020-09-25 | B样条函数的无网格细分方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112307532A (zh) |
-
2020
- 2020-09-25 CN CN202011018933.5A patent/CN112307532A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gupta et al. | Variational solid modeling for tolerance analysis | |
US7310097B2 (en) | Method, apparatus and computer program product enabling a dynamic global parameterization of triangle meshes over polygonal domain meshes | |
KR20140139984A (ko) | 3d 모델링된 오브젝트의 압축 및 압축해제 | |
CN105678683A (zh) | 一种三维模型的二维存储方法 | |
CN103559374A (zh) | 一种多子网格模型上进行面分裂型曲面细分的方法 | |
CN111581776A (zh) | 一种基于几何重建模型的等几何分析方法 | |
US6741246B2 (en) | Hierarchical control point editing of adaptively sampled distance fields | |
JP2002334346A (ja) | オブジェクトのレンジデータをオブジェクトのモデルに変換する方法 | |
JP2002334347A (ja) | グラフィクスモデルの適応的サンプル距離フィールドを三角形モデルに変換する方法 | |
WO2000004507A1 (en) | Parametric surface evaluation in eigenspace of subdivision matrix of irregular patch | |
Rockwood | Introducing sculptured surfaces into a geometric modeler | |
Amiri et al. | Connectivity maps for subdivision surfaces | |
CN112307532A (zh) | B样条函数的无网格细分方法 | |
JPH1196400A (ja) | 形状変換方法 | |
Shang et al. | Effective re-parameterization and GA based knot structure optimization for high quality T-spline surface fitting | |
JP2002352270A (ja) | モデルの適応的サンプル距離フィールドを訂正する方法 | |
CN112231800B (zh) | Bim图形的优化方法、装置以及计算机存储介质 | |
Wang et al. | Adaptive T-spline surface approximation of triangular meshes | |
Rossignac | Corner-operated tran-similar (cots) maps, patterns, and lattices | |
Yue et al. | 3D triangular mesh optimization in geometry processing for CAD | |
CN113610711A (zh) | 一种单图像引导的三维表面重建方法及装置 | |
Yamakawa et al. | Triangular/quadrilateral remeshing of an arbitrary polygonal surface via packing bubbles | |
Hitschfeld-Kahler | Generation of 3D mixed element meshes using a flexible refinement approach | |
Yuan et al. | Direct 3d printing system: from point cloud to additive manufacturing | |
JPH04222061A (ja) | メッシュ生成方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210202 |