CN101477707A - 一种插值给定若干闭合曲线的曲面造型方法 - Google Patents
一种插值给定若干闭合曲线的曲面造型方法 Download PDFInfo
- Publication number
- CN101477707A CN101477707A CNA2008101633858A CN200810163385A CN101477707A CN 101477707 A CN101477707 A CN 101477707A CN A2008101633858 A CNA2008101633858 A CN A2008101633858A CN 200810163385 A CN200810163385 A CN 200810163385A CN 101477707 A CN101477707 A CN 101477707A
- Authority
- CN
- China
- Prior art keywords
- interpolation
- ball
- annexation
- closed
- given
- 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
Landscapes
- Image Generation (AREA)
Abstract
本发明公开了一种插值给定若干闭合曲线的曲面造型方法,能够快速生成插值给定多个闭合曲线的高质量光顺网格曲面,包括以下步骤:1)给定若干待插值的闭合曲线后,用户根据具体应用需要构造球棍空间结构;2)以球棍空间结构中的每个球为单位构造网格连接关系图并通过一个优化过程将网格连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接;3)根据网格连接关系图,采用孪生光顺方法构造一个给定待插值闭合曲线的高质量光顺网格曲面。本发明方法避免了用隐式曲面进行构造时引起的三角化问题,生成曲面速度快,界面友好,结果鲁棒,可以用于游戏、影视的角色设计中。
Description
技术领域
本发明涉及计算机模型处理技术,特别是涉及一种插值给定若干闭合曲线的新型曲面造型方法。
背景技术
几何和连接关系是描述一张多边形网格曲面的两个基本组成部分,前者描述了每个网格顶点在三维空间的位置,后者描述了如何将这些顶点连接在一起以构成描述改曲面的多边形。从给定的几何信息生成网格连接关系的研究工作已经有很多,如三维扫描点云的网格生成等;然而,反过来从给定的连接关系来导入自然的几何信息得到所需网格曲面却甚少见诸于研究领域。
如何从给定的截面边界重构出曲面是近年来颇为流行的一个话题。在早期,研究人员大都在假设这些截面处于平行状态的情况下展开研究。自从Keppel关于平行多边形轮廓之间的tiling的工作之后(参见E.Keppel.Approximating complex surfaces by triangulation of contour lines.IBMJournal of research and development 19∶2-111975),相继有不少的改进算法被提出,但是这些方法在处理包含多个嵌套曲线环时无法生成封闭的曲面,一些研究人员提出了基于Delaunay三角化的方法以解决该问题。Herman等人(参见G.T.Herman.,J.Zheng and C.A.Bucholtz.Shape-basedinterpolation.IEEE Computer Graphics Application 12(3):69-791992)采用隐函数来表示每个平面上的二维曲线然后通过插值这些函数以得到一个三维曲面。
目前,对于非平行平面的情况的研究仍比较少。一些研究人员尝试将隐式插值的方法推广到非平行平面上(参见P.Werahera.,G.Miller.,G.Taylor.,T.Brubaker.,F.Daneshgari.,and E.Crawford.A3-D reconstructionalgorithm for interpolation and extrapolation of planar cross sectional data.IEEE),然而这些方法仅局限于序列平面,在两两相邻平面之间分别生成曲面片。最近,有些学者提出了一些更为通用的方法,比如Payne和Toga等人的工作(参见B.A.Payne and A.W.Toga.Surface reconstruction bymultiaxial triangulation.IEEE Computer Graphics Application 14(6):28-351994)。
发明内容
本发明提供一种插值给定若干闭合曲线的曲面造型方法,该曲面适合于生成插值给定若干个闭合曲线的曲面,这里的闭合曲线指的是由一有序点集所构成的封闭多边形。
一种插值给定若干闭合曲线的曲面造型方法,包括以下步骤:
1)给定若干待插值的闭合曲线后,用户构造球棍空间结构;
将待插值的闭合曲线分为独立待插值的闭合曲线和半连接待插值的闭合曲线两类,半连接待插值的闭合曲线是指该曲线为某个三角网格物体的边界,独立待插值的闭合曲线为不是三角网格物体的边界的曲线。
每条闭合曲线被抽象为位于其重心的一个点,对于半连接曲线,我们通过主元分析给半连接曲线定义一个法向。
根据给定的待插值的闭合曲线构造球棍空间结构,执行如下步骤:
(1)通过草图接口(Sketch Interface)直观地对待插值的封闭曲线进行分组,每个组包含4~5个曲线,保证每组曲线所抽象成的点最接近于同一个球上,一个球代表一组曲线;
(2)通过草图接口(Sketch Interface)直观地将代表各组的球之间以特定方式连接到一起,指定球的连接关系;
对于存在连接关系得两个球,即它们之间存在棍(stick),我们用一个开口管状网格将它们连接在一起,该管状网格必须在与球的连接端处开口,这样才可以与该球所对应的连接网格连接起来,开口管状网格的开口边界也作为待插值闭合曲线来处理。
对待插值的封闭曲线进行分组时用户可以在屏幕上用鼠标绘制一条封闭线条将拟归为一组的曲线分在一起,拟归为一组的曲线用一个球代表;在代表各组的球之间用线条连接在一起以表明它们之间存在连接关系。
用户也可以从构造球棍空间结构开始,在三维空间自由构造所期望的球棍空间结构,然后在围绕各个球放置边界,执行如下步骤:
(1)用户在三维空间自由放置球;
(2)在球之间绘制线条表示球之间的连接关系;
对于存在连接关系得两个球,即它们之间存在棍(stick),我们用一个开口管状网格将它们连接在一起,该管状网格必须在与球的连接端处开口,这样才可以与该球所对应的连接网格连接起来,开口管状网格的开口边界也作为待插值闭合曲线来处理;
(3)根据球以及球之间的连接关系建立出一个球棍空间结构;
(4)在确定了球棍结构之后,在各个球上根据用户喜好或者造型需要放置待插值闭合曲线,保持独立闭合曲线所抽象成的点位于球面上,半连接闭合曲线定义的法向与曲线抽象得到的点所在的球面位置的法向保持一致。
2)以球棍空间结构中的每个球为单位构造网格连接关系图并通过优化过程将网格连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接;
由球棍空间结构生成曲面的网格连接关系图;依据每个球包含的闭合边界曲线数和球的连接关系构造一个粗三角网格,我们生成一个粗糙多边形网格(若边界数目为4,则为四面体,以此类推),接着对多边形网格的每个三角面片进行Loop细分得到连接关系图;
把细分得到连接关系图的每个顶点及顶点周围的k维邻域去掉,k为粗网格的细分次数的三分之一,在细分后的连接关系图上形成一个半连接闭合边界曲线;
通过优化过程将连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接。
3)根据网格连接关系图,采用孪生光顺方法(twinned mesh fairing)构造一个给定待插值闭合曲线的高质量三角网格曲面;首先将闭合曲线转化为位置约束,通过求解一个稀疏线形系统得到一个包含初始几何信息的曲面,然后应用曲率流方法对该曲面进行优化,改善其质量。
许多应用领域都涉及到如何从给定多个封闭多边形边界构造出曲面的问题。本发明提出了一种新颖的解决方法,采用首先构造网格连接关系图,然后由连接关系图生成高质量曲面的思路,在避免了用隐式曲面进行构造时涉及到的三角化问题达到了比较快的速度的同时,又提供了一种强大的造型方法。本发明算法明确,界面友好,结果鲁棒,该方法可以用于游戏、影视中的角色设计。
附图说明
图1为本发明的技术方案流程图;
图2为球棍空间结构的构造流程图;
图3为连接关系图构造的流程图;
图4为通过孪生光顺算法的流程图。
具体实施方式
一种插值给定若干个闭合边界曲线的新型曲面构造方法,用户首先根据应用需要构造合适的球棍空间结构;然后以每个球为单位,根据其具体配置,构造合适的连接关系图并通过优化过程将连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接;最后,通过孪生光顺方法构造一个插值所有给定闭合多边形边界的高质量曲面。具体流程参见图1。
下面具体介绍关键的实现细节:
1.球棍空间结构的构造,流程如图2所示;
将待插值闭合曲线分为独立曲线和半连接曲线两类,半连接曲线是指该曲线为某个三角网格物体的边界,独立曲线为不是三角网格物体的边界的曲线。待插值闭合曲线实质上是由一些离散点组成的封闭多边形,这些离散点构成了边界位置约束。
每条封闭曲线被抽象为位于其重心的一个点,对于半连接曲线,我们通过主元分析给半连接曲线定义一个法向。
待插值闭合曲线已经给定的情况下,根据给定的待插值闭合曲线构造球棍空间结构,执行如下步骤:
(1)通过草图接口(Sketch Interface)直观地对待插值闭合曲线进行分组,每个组包含4~5个曲线,保证每组曲线所抽象成的点最接近于同一个球上,一个球代表一组曲线;
(2)通过草图接口(Sketch Interface)直观地将代表各组的球之间以特定方式连接到一起,指定球的连接关系;
对于存在连接关系得两个球,即它们之间存在棍(stick),我们用一个开口管状网格将它们连接在一起,该管状网格必须在与球的连接端处开口,这样才可以与该球所对应的连接网格连接起来,开口管状网格的开口边界也作为待插值闭合曲线来处理;
对待插值闭合曲线进行分组时用户可以在屏幕上用鼠标绘制一条封闭线条将拟归为一组的曲线分在一起,拟归为一组的曲线用一个球代表;在代表各组的球之间用线条连接在一起以表明它们之间存在连接关系。
自由构造球棍空间结构,执行如下步骤:
(1)用户在三维空间自由放置球;
(2)在球之间绘制线条表示球之间的连接关系;
对于存在连接关系得两个球,即它们之间存在棍(stick),我们用一个开口管状网格将它们连接在一起,该管状网格必须在与球的连接端处开口,这样才可以与该球所对应的连接网格连接起来,开口管状网格的开口边界也作为待插值闭合曲线来处理;
(3)根据球以及球之间的连接关系建立出球棍空间结构;
(4)在确定了球棍结构之后,在各个球上根据用户喜好或者造型需要放置待插值闭合曲线,保持独立闭合曲线所抽象成的点位于球面上,半连接闭合曲线定义的法向与曲线抽象得到的点所在的球面位置的法向保持一致。
2.连接关系图的构造,流程如图3所示;
(1)对于每个球,我们根据其包含的待插值闭合曲线数n1以及与其它球的连接关系n2采用三维Delaunay方法构造一个包含n1+n2个顶点的粗三角网格;
(2)对得到的该球的粗三角网格的每个面进行数次Loop细分得到连接关系图;
Loop细分没有固定的次数,直到细分后的网格分辨率与给定待插值闭合曲线的分辨率相当;
(3)把细分得到连接关系图的每个顶点及其周围的k维邻域去掉,k取为粗网格的细分次数的三分之一,在细分后的连接关系图上形成一个半连接闭合边界曲线;
(4)我们通过优化过程将连接关系图上的闭合边界曲线BQ(q1,q2,...,qn)与待插值闭合曲线BP(p1,p2,...,pm)所形成的条带进行三角化从而将连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接;
I.在球上对应的待插值闭合曲线和连接关系图上的闭合边界曲线上寻找距离最近的点作为对应起始顶点(ps1和qt1),并依次将两条曲线进行重排序为B′P(ps1,ps2,...,psm)和B′Q(qt1,qt2,...,qtn)。
II.将B′P以及B′Q映射到参数域上的两个同心圆CP(cps1,cps2,...,cpsm)和CQ(cqt1,cqt2,...,cqtn)上,cpsi和cqti分别为CP和CQ上对应于psi和qti的点,其半径分别为RP和RQ,ang(a,b,c)为向量a-b和c-b的夹角。
III.确定球上对应的待插值闭合曲线上每个点在同心圆上的位置:
对于待插值闭合曲线,有
式中 cps(m+1)=cps0,ps(m+1)=ps0,pc为BP的重心,o为CP的重心。
根据式(1)计算出B′P上所有相邻点与其重心所形成的夹角ang(psk,pc,ps(k+1))之和,并对所有夹角进行等量缩放,使缩放后的夹角和为2π,由缩放后的夹角确定B′P上每个顶点在CP上的位置。
IV.确定有向图的边权重
将连接关系图上对应的闭合边界曲线根据式(2)影射到平面上
有向图的边权重就定义为angθ=(cpsi,o,cqtj),用曲线B′P点和B′Q上点之间的角度表示两点之间的扭曲程度,这样得到球上的待插值闭合曲线上的点和对应的连接关系图上闭合边界曲线的点之间角度扭曲最小的结果,实现了连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接。
构造的连接关系图即由顶点和顶点之间的连接关系构成,用G=(V,E)表示,其中V表示顶点集,E表示边集。
3.通过孪生光顺算法得到高质量的光顺曲面,流程如图4所示;
(1)构造的连接关系图通过简单最小二乘方法生成初始网格曲面;
根据一个球的连接关系图G=(V,E),其中V=1,2,...,n为球对应的连接关系图的有序顶点集,E为球对应的连接关系图的边集合;
设其中一个未知顶点vi的空间坐标为vi,下述方程(3)定义了vi的光顺条件:
式中di表示顶点i的维度,j:(i,j)∈E表示遍历顶点i的一维邻域,对一维邻域所有顶点坐标进行求和。
我们定义顶点vi的光顺能量方程如下式:
该光顺能量方程定义了曲面的光顺程度,能量越小,曲面就越光顺。
要得到一个非平凡的唯一解,必须增加一些用于位置约束的顶点S=s1,s2,...,sm,为一堆顶点集,作为目标位置约束,待插值闭合曲线实质上是由一些离散点组成的封闭多边形,这些离散点构成了目标位置约束。
我们将目标位置约束转化为如下的位置能量EP:
该位置能量方程衡量所求未知曲面顶点与目标位置的逼近程度,即保持位于约束集合内的所有顶点的坐标不变。xs为待求的更新后坐标,vs为该点求解之前给定的位置;
利用光顺能量方程和位置能量方程得到总能量方程如下式:
argminEL+ω×EP (6)
通过最小化EL+ω×EP,我们可以生成一个满足给定约束又较为光顺的曲面,通过权值ω来调整光顺程度和逼近程度,ω越大,得到的曲面越逼近给定位置约束,反之则越光顺。
求解总能量方程即等价于求解一个系数的线性系统,如下:
Ax=b (7)
其中n为连接关系图上顶点总数,m表示其中作为位置约束的顶点数。
LU是网格的均拉普拉斯算子:
优化的总能量方程(6),求解线性系统(7)得到一个较好逼近理想曲面的初始网格曲面。
(2)通过基于曲率流的优化过程以改善初始网格曲面的质量,得到一个高质量的光顺网格曲面;
上述得到的初始网格曲面的质量通常并不太令人满意,为此,我们在该初始网格曲面上应用一个曲率流的优化过程以改善初始网格曲面的形状,通过对下述线性系统进行循环迭代:
Ax=b (8)
其中si表示前面给出的位置约束集众顶点的序号,xk表示第k个顶点的初始坐标,I为单位矩阵,LB代表曲率向量矩阵。
定义曲率向量为kn,表达式如下:
其离散形式为:
式中A为顶点vi的一维邻域三角面片的总面积,αj和βj为边(i,j)∈E在两个相邻三角片上的对角。根据方程(9)可以对每个顶点列得一个方程,所有顶点的方程即可表示为一个矩阵,该矩阵就是曲率向量矩阵LB。
这里每执行一次曲率流方法,即求解系统(8)一次,这样就对初始曲面进行了一次改善,经过多次迭代之后即得到高质量的光顺网格曲面,迭代次数由用户指定,一般为3~5次。
在计算机中进行迭代过程的伪代码如下:
Function Im proveSurface WithCurvatureFiow(s)
Input:a triangle mesh s
Output:improved s
1)For each vertex of s,calculate its one-ring area(A),the angle for edge (i,j)e S(αj,βj)
2)Build the linear system
3)Solve the system to get improved s
4)Return to Step 1)until the re sult is pleasing.。
Claims (5)
1.一种插值给定若干闭合曲线的曲面造型方法,包括以下步骤:
1)给定若干待插值闭合曲线后,用户构造球棍空间结构;
2)以球棍空间结构中的每个球为单位构造网格连接关系图,通过优化过程将网格连接关系图上的闭合边界曲线与待插值闭合曲线进行无缝连接;
3)构造的网格连接关系图采用孪生光顺方法构造一个给定待插值闭合曲线的高质量光顺网格曲面。
2.根据权利要求1所述的插值给定若干闭合曲线的曲面造型方法,其特征在于:所述的步骤1)中构造球棍空间结构包括两种方式:
I根据给定的待插值闭合曲线构造球棍空间结构
通过草图接口将待插值闭合曲线分组并为每一组构造一个球,指定球的连接关系,对于球棍结构的每个棍构造一个管状开口网格将球连接在一起,棍的管状开口作为相应球上的待插值闭合曲线,得到球棍空间结构;
II自由构造球棍空间结构
在三维空间自由放置球并确定连接关系建立出球棍空间结构,对于球棍结构的每个棍构造一个管状开口网格将球连接在一起,棍的管状开口作为相应球上的待插值闭合曲线,然后在各个球上根据用户喜好或者造型需要放置待插值闭合曲线,得到球棍空间结构。
3.根据权利要求2所述的插值给定若干闭合曲线的曲面造型方法,其特征在于:所述的待插值闭合曲线分为独立待插值闭合曲线和半连接待插值闭合曲线两类。
4.根据权利要求1所述的插值给定若干闭合曲线的曲面造型方法,其特征在于:所述的步骤2)中构造网格连接关系图是指:
根据位于球上的的待插值闭合曲线数构造一个粗三角网格;
对粗三角网格的每个面进行Loop细分得到连接关系图;
把细分得到连接关系图的每个顶点及顶点周围的k维邻域去掉,k为粗网格的细分次数的三分之一,在细分后的连接关系图上形成一个半连接闭合边界曲线。
5.根据权利要求1所述的插值给定若干闭合曲线的曲面造型方法,其特征在于:所述的步骤3)中所述通过孪生光顺方法包括以下步骤:
连接关系图通过简单最小二乘方法生成初始网格曲面;
通过基于曲率流的优化过程以改善初始网格曲面的质量,得到一个高质量的光顺网格曲面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101633858A CN101477707A (zh) | 2008-12-18 | 2008-12-18 | 一种插值给定若干闭合曲线的曲面造型方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101633858A CN101477707A (zh) | 2008-12-18 | 2008-12-18 | 一种插值给定若干闭合曲线的曲面造型方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101477707A true CN101477707A (zh) | 2009-07-08 |
Family
ID=40838415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101633858A Pending CN101477707A (zh) | 2008-12-18 | 2008-12-18 | 一种插值给定若干闭合曲线的曲面造型方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101477707A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254351A (zh) * | 2011-07-08 | 2011-11-23 | 浙江大学 | 一种基于三维光顺交叉标架场的六面体网格生成方法 |
CN102122394B (zh) * | 2010-01-11 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 从iges文件中汇入曲面的系统及方法 |
CN107689049A (zh) * | 2016-08-03 | 2018-02-13 | 佛山市诺威科技有限公司 | 一种牙齿预备体修复模型特征线提取方法 |
CN111462492A (zh) * | 2020-04-10 | 2020-07-28 | 中南大学 | 一种基于里奇流的关键路段检出方法 |
-
2008
- 2008-12-18 CN CNA2008101633858A patent/CN101477707A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122394B (zh) * | 2010-01-11 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 从iges文件中汇入曲面的系统及方法 |
CN102254351A (zh) * | 2011-07-08 | 2011-11-23 | 浙江大学 | 一种基于三维光顺交叉标架场的六面体网格生成方法 |
CN107689049A (zh) * | 2016-08-03 | 2018-02-13 | 佛山市诺威科技有限公司 | 一种牙齿预备体修复模型特征线提取方法 |
CN107689049B (zh) * | 2016-08-03 | 2020-06-16 | 佛山市诺威科技有限公司 | 一种牙齿预备体修复模型特征线提取方法 |
CN111462492A (zh) * | 2020-04-10 | 2020-07-28 | 中南大学 | 一种基于里奇流的关键路段检出方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chougrani et al. | Lattice structure lightweight triangulation for additive manufacturing | |
Glimm et al. | Robust computational algorithms for dynamic interface tracking in three dimensions | |
Chen | 3D texture mapping for rapid manufacturing | |
CN104268934B (zh) | 一种由点云直接重建三维曲面的方法 | |
Fryazinov et al. | Multi-scale space-variant FRep cellular structures | |
US20200210629A1 (en) | Designing objects using lattice structure optimization | |
CN109571961B (zh) | 一种复杂非均质体参数化模型的切片及支撑点获取方法 | |
CN104361632A (zh) | 一种基于Hermite径向基函数的三角网格补洞方法 | |
Parikh et al. | A package for 3-D unstructured grid generation, finite-element flow solution and flow field visualization | |
Zhang et al. | Adaptive hexahedral mesh generation based on local domain curvature and thickness using a modified grid-based method | |
EP3545443A1 (en) | Adaptive topology optimization for additive layer manufacturing | |
CN101477707A (zh) | 一种插值给定若干闭合曲线的曲面造型方法 | |
CN103473811A (zh) | 基于二维手绘线画图的三维实体模型便捷生成方法 | |
CN108986218A (zh) | 一种基于pmvs的建筑物密集点云快速重建方法 | |
CN106875487B (zh) | 一种基于邻域作用力的地质六面体网格平滑方法 | |
Attar et al. | Physics-based generative design | |
CN1828672A (zh) | 一种基于六面体插值体细分的几何数据细分方法 | |
Messner | A fast, efficient direct slicing method for slender member structures | |
Yang et al. | An open source, geometry kernel based high-order element mesh generation tool | |
JPH08315183A (ja) | 自動メッシュ生成方法及びシステム | |
CN105888068A (zh) | 一种柔性建筑的建造方法 | |
Yang et al. | A class of quasi-quartic trigonometric Bézier curves and surfaces | |
CN104268936B (zh) | 一种重心坐标的构建方法 | |
Merrell et al. | Constraint-based model synthesis | |
Winslow | Multi-criteria gridshell optimization: Structural lattices on freeform surfaces |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090708 |