[发明专利]一种三维建模中的自由曲线高效生成方法在审
申请号: | 201810454782.4 | 申请日: | 2018-05-14 |
公开(公告)号: | CN108898656A | 公开(公告)日: | 2018-11-27 |
发明(设计)人: | 赵慧卿;王慧;黄佳敏 | 申请(专利权)人: | 赵慧卿 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T11/20 |
代理公司: | 北京东方盛凡知识产权代理事务所(普通合伙) 11562 | 代理人: | 牟炳彦 |
地址: | 264000 山东省烟台市芝*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 自由曲线 资源占用率 高效生成 三维建模 关键结构 核心业务 小计算机 整体建模 建模 | ||
1.一种三维建模中的自由曲线高效生成方法,其特征在于:该方法包括G1连续自由曲线、G2连续自由曲线、开放式G2连续自由曲线、封闭式G2连续自由曲线四种曲线的生成方法:
(一)依据两确定端点的G1连续自由曲线的生成方法:
假设P1,P2是目标自由曲线上的两个特征点,那么依据这两个特征点生成G1连续的自由曲线的方法如下:
(1)过特征点P1和P2点做辅助直线Lo:lo(x,y)=aox+boy+co=0;
(2)过特征点P1做辅助直线Lm:lm(x,y)=amx+bmy+cm=0;
(3)过特征点P2做辅助直线Ln:ln(x,y)=anx+bny+cn=0;
(4)在上述辅助线的基础上,插入可控函数曲线C:F(x,y),
其中,即
μ为自由曲线C的控制参数,w>1且为整数,表示函数曲线的元数;
在目标自由曲线的构形中,通过调整控制参数μ的大小可调整函数曲线C的扁平度,|μ|越大,曲线越平缓;μ>0时,曲线上凸,反之曲线是下凹的;通过调整Lm和ln的斜率就可控制曲线的偏置度;
参数可控的G1连续自由曲线生成后,可通过下列参数对自由曲线进行连续控制,直至最接近目标曲线:
其中km,kn为辅助直线Lm和Ln的斜率至此,便完成了依据两确定端点的G1连续自由曲线的生成;
(二)依据两自由曲线的G2连续自由曲线的生成方法:
假设P1,P2是目标自由曲线上的两个特征点,并且经过该两点的自由曲线C1:F1(x,y)=0和C2:F2(x,y)=0,那么依据这两个特征点生成G2连续的自由曲线的方法如下:
(1)过P1,P2做辅助直线Lo:lo(x,y)=aox+boy+co=0;
(2)过P1,P2插入函数曲线C:F(x,y)=0:
其中,即
F(x,y)=F1(x,y)·F2(x,y)+μ·(aox+boy+co)3=0;μ为自由曲线C的控制参数;
①对上式求偏导,可得:
因为自由曲线F1(x,y)和辅助直线Lo都经过特征点P1,因此在P1点处上式可化简为:
由上式可得,(Fx(x,y),
即,在特征点P1处,自由曲线C1:F1(x,y)=0与插值函数曲线C:F(x,y)=0法向平行,因此,在P1处自由曲线C1与插值函数曲线C有共同的切线;
②根据曲率的计算公式,求插值函数曲线C:F(x,y)=0在特征点P1处的曲率ρ:
对F(x,y)=0求偏导数和二次偏导数可得如下算式:
将上式代入曲率计算公式,可得插值函数曲线C在特征点P1处的曲率ρc计算如下:
即,插值函数曲线C与自由曲线C1在特征点P1处曲率相同,同样的C与C2在特征点P2处曲率也相同;
(3)对于给定特征点P1和P2,记其两点处的可控切线分别为Lm和Ln,曲率为ρm和ρn,过特征点分别做圆Cr1和Cr2,使得他们的切线为Lm和Ln,半径由以上约束得到的两个圆函数表达式可表示为圆Cr1:Fr1(x,y)=0;圆Cr2:Fr2(x,y)=0,根据步骤(1)(2)所述,可用插值函数曲线作为经过确定的两特征点,并且偏置和曲率可控的G2自由曲线,调整控制参数μ的正负可控制目标自由曲线的凹凸性,调整切线斜率可控制目标曲线的偏置,调整曲率参数,可调整自由曲线与前后段连接的顺滑性;
(三)开放式G2连续自由曲线的生成方法:
假设在建模中取样的一系列特征点为P1,P2,P3…Pn,那么经过这一系列特征点的开放式自由曲线生成方法,包括如下步骤:
(1)确定首个边缘特征点P1的切线Tl1:
①当P1处的切线在建模中为预先确定,那么该预置切线就是边缘特征点P1的切线Tl1;
②当P1处的切线在建模中没有预置值,则通过以下方法来确定:
过P1和P2做直线相交与点N1,使得△P1N1P2为等腰三角形,则切线Tl1=直线P1N1,由约束条件可知,想确定唯一的等腰三角形,还需要一维约束条件,利用这一特性,该方法实现了用P1处的切线Tl1这一约束条件来连续调整目标自由曲线;
(2)依次确定P2,P3…Pn点处的切线,方法如下:
在步骤(1)中,若切线Tl1符合情况①,则P2处的切线Tl2生成方法为:
过P2做直线P2N1,使得P2N1||P1N1(Tl1),则所求切线;Tl2=P2N1;
后续依次过Pi(i∈(2,n))做直线PiNi-1,使得PiNi-1||Pi-iPi+1,交前序切线Tli-1于Ni-1,则所求切线Tli=PiNi-1;
在终止特征点Pn处,切线Tln生成方法为:
过Pn做直线PnNn-1,使得△PnNn-1Pn-1为等腰三角形,则Tln=PnNn-1。
综上,便确定好了全部特征点处的切线;
(3)计算各特征点处的曲率半径,方法如下:
①边缘特征点P1处,曲率半径ρ1的计算方法为:
做辅助圆⊙P1N1P2,该辅助圆是唯一的,假设其半径为r1,那么在特征点P1的曲率半径ρ1=r1;
②中间特征点P2,P3,…,Pn-1处的曲率半径ρ2,ρ3,…,ρn-1采用相邻均值法计算:
在特征点Pi(i∈[2,n-1])处,做辅助圆⊙PiNiPi+1,设其半径为ri,那么Pi处的曲率半径
③终止特征点Pn处,曲率半径ρn的计算方法:
做辅助圆⊙Pn-1Nn-1Pn,设其半径为rn,则ρn=rn;
综上,便计算完成各特征点处的曲率半径;
(4)采用(二)中所述方法,经过各特征点,采用插值函数曲线C:F(x,y)=F1(x,y)·F2(x,y)+μ·(aox+boy+co)3=0,便可完成开放式G2连续自由曲线的生成;
(四)封闭式G2连续自由曲线的生成方法:
假设一系列特征点P1,P2,P3…Pn(Pn=P1),其整体过程同生成方法(三),但在端值点Pn(或P1)处的切线Tli(i=1orn)及曲率半径ρi需要做如下处理:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于赵慧卿,未经赵慧卿许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810454782.4/1.html,转载请声明来源钻瓜专利网。