CN112085832A - 广告字3d模型生成方法 - Google Patents
广告字3d模型生成方法 Download PDFInfo
- Publication number
- CN112085832A CN112085832A CN202010804886.0A CN202010804886A CN112085832A CN 112085832 A CN112085832 A CN 112085832A CN 202010804886 A CN202010804886 A CN 202010804886A CN 112085832 A CN112085832 A CN 112085832A
- Authority
- CN
- China
- Prior art keywords
- point
- wall
- grid
- contour
- boundary
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了广告字3D模型生成方法,包括如下步骤:(1)对文字轮廓进行Delaunay轮廓三角化;(2)生成文字轮廓中心线;(3)用中心线对轮廓3D进行剖分网格,得到对称的轮廓三角网格BaseMesh,BaseMesh为外壁基础网格;(4)对基础网格进行细分,得到外壁网格OutMesh;(5)拉伸网格,生成3D网格;(6)平滑网格;(7)内壁基础网格的生成;(8)重复上述步骤(4)‑(6)生成内壁3D网格。轮廓三角网格BaseMesh以中心线为对称分布在文字轮廓内,OutMesh进一步细化BaseMesh,提高拉伸后3D模型的精度,以中心线为基准拉伸OutMesh后,对3D网格进行平滑,得到外壁3D网格。以相同的BaseMesh作为内壁的基础网格,并重复步骤(4)‑(6)生成内壁3D网格,从而完成广告字3D模型生成。
Description
技术领域
本发明属于3D文字领域,具体涉及广告字3D模型生成方法。
背景技术
广告字通常为立体的薄壁等高字,中间为空心,可用于安装发光装置。这种薄壁等高字的3D模型没有专门的软件和生成方法,一般来说有以下两种方式:
1、先使用绘图软件设计广告字,再通过3D软件对文字分片建模然后拼接。
2、将雕刻路径转换成3D模型。
第一种方法较为繁琐,设计复杂字体时需要消耗较多人力,提高广告字的制作成本,且分片建模精度不够,最后生成的3D模型不够光滑。第二种方法同样具有精度不足的问题。因此需要一种简单高效的广告字3D模型生成方法。
发明内容
本发明的目的在于提供广告字3D模型生成方法,可一键生成3D模型,简单高效,降低人工费用,且3D模型平滑。
为了解决上述技术问题,本发明采用如下技术方案:
广告字3D模型生成方法,其特征在于,包括如下步骤:
(1)对文字轮廓进行Delaunay轮廓三角化;
(2)生成文字轮廓中心线;
(3)根据中心线对文字轮廓进行网格化处理,生成外壁网格;
(4)拉伸网格,生成外壁3D网格;
(5)调整网格;
(6)生成内壁网格;
(7)重复上述步骤(4)-(5)生成内壁3D网格。
在文字轮廓内沿着中心线生成对称网格,再将网格向上拉伸后进行适当调整平滑形成外壁3D网格,接着通过相同步骤生成对应的内壁3D网格,从而生成3D模型。这种方法可一键生成3D模型,简单高效,降低人工费用,且3D模型平滑。
优选的,步骤(3)具体步骤为:用中心线对轮廓进行网格剖分,得到对称的轮廓三角网格BaseMesh,BaseMesh为外壁基础网格。轮廓三角网格BaseMesh以中心线为对称分布在文字轮廓内,使拉伸后3D文字的形状规则。
优选的,步骤(3)还包括对BaseMesh进行细分,得到外壁网格OutMesh。OutMesh进一步细化BaseMesh,提高拉伸后3D模型的精度和光滑度。
优选的,步骤(3)中,在生成BaseMesh时,顶点被分成边界点和中心点,对每个三角形的非边界边按照比例r1分成若干段,分成的段数根据网格边平均长度除以一个设定的长度得到,然后依次连接点,得到新的网格作为外壁网格OutMesh。这种方法可以较为均匀地精细切割文字轮廓,形成细化的Outmesh,从而提高3D模型的精度,便于拉伸和后续的平滑。
优选的,步骤(3)中,若不平均分割非边界边,中间间距大于两头间距。拉伸后形成的3D模型两头可以更加光滑而且顶点数可以更少。
优选的,步骤(4)中,p0为边界点,p1为中心点,计算分割点位置:
如果拉伸成直线,新的顶点P(x,y,z):
x坐标:P(x)=p0(x)+[p1(x)-p0(x)]*r1;
y坐标:P(y)=p0(y)+[p1(y)-p0(y)]*r1;
z坐标:P(z)=h*r1;
其中,r1为当前点的比例,h为设定高度。通过方程计算出新的顶点P的坐标并记载每个顶点坐标。
优选的,步骤(4)中,如果拉伸成圆弧,新的顶点按椭圆计算,新的顶点P(x,y,z):
z坐标:P(z)=b*r1;
其中,r1为当前点的比例,a为椭圆的边界点和中心点距离,b为椭圆的拉伸高度,记录每个新生成的点对应的边界点,用于后期的调整。
优选的,步骤(5)中,具体平滑网格的方法为:
1)计算边界轮廓的上每个顶点的角度,当角度大于160度时,对应的新生成的点需要平滑处理;
2)按z坐标值,搜索网格的等高线,得到一系列的等高线;
3)对每一条等高线的点,搜索其左右邻接点,邻接的点的条件是对应的边界边上的原始边界点不相同;
4)得到其左右邻接点后,计算每个点到原始轮廓线的距离,然后根据其左右邻接点到原始轮廓线距离,沿着顶点边方向调整顶点位置:
p=p+(ori-p)*λ*[len-newLen]/len;
newLen=(left*w1+right*w2)/(w1+w2);
其中p为当前点,ori为其原始点,len为当前点到轮廓的距离,left,right分别为左右点到轮廓的距离,λ为系数,w1为p和左边邻接点距离的倒数,w2为p和右边邻接点距离的倒数;当p的左右邻接点有一个不需要调整时,直接将p点调整调整到p与左右邻接点的连线上。
拉伸后有些曲面会向内凹,为了将这些内凹曲面向外平滑,根据该方程调整内凹曲面上顶点的位置,实现网格的平滑。
优选的,步骤(5)还包括:
5)将等高线上的点,根据上一个和下一个邻接点再次进行多次迭代,计算当前点和原始点与左右邻接点的交点inter,计算当前点和左右点角度:
p=p+(inter-p)*γ,γ=(当前角度-原始角度)/(180-原始角度);在迭代调整时如果当前点的角度已经大于原始点角度就不需要调整。
迭代平滑进一步平滑网格,使3D文字更加光滑。
优选的,步骤(6)中,内壁基础网格的生成具体方法为:内壁的网格采用同一个基础网格,对轮廓进行向内偏移,偏移的距离为壁厚,将偏移后的轮廓线与基础网格进行切割,得到内壁的基础网格。使用同一个基础网格使内外壁尽可能的均匀,也节省了重新生成基础网格的步骤。
由于采用上述技术方案,本发明具有以下有益效果:
轮廓三角网格BaseMesh以中心线为对称分布在文字轮廓内,OutMesh进一步细化BaseMesh,提高拉伸后3D模型的精度,以中心线为基准拉伸OutMesh后,对3D网格进行平滑,得到外壁3D网格。以相同的BaseMesh作为内壁的基础网格,并重复步骤生成内壁3D网格,从而完成薄壁等高字3D模型生成。只要倒入广告字的轮廓,就可以自动生成薄壁等高字3D模型,该方法简单高效,无需人工设计字体,减少人工成本,且3D模型平滑。
附图说明
下面根据附图对本发明作进一步说明。
图1为本发明中外壁的BaseMesh的示意图;
图2为本发明中BaseMesh中具有一个中心点和两个边界点的三角形的示意图;
图3为本发明中BaseMesh中具有一个边界点和两个中心点的三角形的示意图;
图4为本发明中OutMesh的示意图;
图5为本发明中拉伸OutMesh后形成的3D文字的示意图;
图6为本发明中3D文字平滑前的示意图;
图7为本发明中3D文字平滑后的示意图;
图8为本发明中内壁基础网格的示意图;
图9为本发明中最终生成3D文字的示意图。
具体实施方式
广告字3D模型生成方法,其特征在于,包括如下步骤:
(1)对文字轮廓进行Delaunay轮廓三角化。
(2)生成文字轮廓中心线。
(3)用中心线对轮廓进行网格剖分,得到对称的轮廓三角网格BaseMesh,BaseMesh为外壁基础网格,如图1所示。
(4)对基础网格进行细分,得到外壁网格OutMesh:
如图2和图3所示,在生成基础网格时,顶点被分成边界点1和中心点2,对每个三角形的非边界边按照比例r1分成若干段,分成的段数根据网格边平均长度除以一个设定的长度得到,然后依次连接点,得到新的网格作为外壁网格OutMesh,如图4所示。这种方法可以较为均匀地精细切割文字轮廓,形成细化的Outmesh,从而提高3D模型的精度和光滑度。若不平均分割非边界边,中间间距大于两头间距。拉伸后形成的3D模型两头可以更加光滑而且顶点数可以更少。
(5)拉伸网格,生成3D网格:
p0为边界点1,p1为中心点2,计算分割点位置:
如果拉伸成直线,新的顶点P(x,y,z):
x坐标:P(x)=p0(x)+[p1(x)-p0(x)]*r1;
y坐标:P(y)=p0(y)+[p1(y)-p0(y)]*r1;
z坐标:P(z)=h*r1;
其中,r1为当前点的比例,h为设定高度。通过方程计算出新的顶点P的坐标并记载每个顶点坐标。
如果拉伸成圆弧,新的顶点按椭圆计算,新的顶点P(x,y,z):
z坐标:P(z)=b*r1;
其中,r1为当前点的比例,a为椭圆的边界点和中心点距离,b为椭圆的拉伸高度,记录每个新生成的点对应的边界点1,用于后期的平滑。拉伸后3D文字如图5所示。
(6)平滑网格:
1)计算边界轮廓的上每个顶点的角度,当角度大于160度时,对应的新生成的点需要平滑处理;
2)按z坐标值,搜索网格的等高线,得到一系列的等高线;
3)对每一条等高线的点,搜索其左右邻接点,邻接的点的条件是对应的边界边上的原始边界点1不相同;
4)得到其左右邻接点后,计算每个点到原始轮廓线的距离,然后根据其左右邻接点到原始轮廓线距离,沿着顶点边方向调整顶点位置:
p=p+(ori-p)*λ*[len-newLen]/len;
newLen=(left*w1+right*w2)/(w1+w2);
其中p为当前点,ori为其原始点,len为当前点到轮廓的距离,left,right分别为左右点到轮廓的距离,λ为系数,w1为p和左边邻接点距离的倒数,w2为p和右边邻接点距离的倒数;当p的左右邻接点有一个不需要调整时,直接将p点调整调整到p与左右邻接点的连线上。
5)将等高线上的点,根据上一个和下一个邻接点再次进行多次迭代,计算当前点和原始点与左右邻接点的交点inter,计算当前点和左右点角度:
p=p+(inter-p)*γ,γ=(当前角度-原始角度)/(180-原始角度);在迭代调整时如果当前点的角度已经大于原始点角度就不需要调整。
迭代平滑进一步平滑网格,使3D文字更加光滑。
如图6所示,拉伸后有些曲面会向内凹,为了将这些内凹曲面向外平滑,根据该方程调整内凹曲面上顶点的位置,实现网格的平滑,迭代平滑进一步平滑网格,使3D文字没有向内凹陷的曲面,平滑后的3D文字如图7所示。
(7)内壁基础网格的生成:
如图8所示,内壁基础网格的生成具体方法为:内壁的网格采用同一个基础网格,对轮廓进行向内偏移,偏移的距离为壁厚,将偏移后的轮廓线与基础网格进行切割,得到内壁的基础网格。使用同一个基础网格使内外壁尽可能的均匀,也节省了重新生成基础网格的步骤。
(8)重复上述步骤(4)-(6)生成内壁3D网格。
轮廓三角网格BaseMesh以中心线为对称分布在文字轮廓内,OutMesh进一步细化BaseMesh,提高拉伸后3D模型的精度,以中心线为基准拉伸OutMesh后,对3D网格进行平滑,得到外壁3D网格。以相同的BaseMesh作为内壁的基础网格,并重复步骤(4)-(6)生成内壁3D网格,从而完成广告字3D模型生成,最终得到的3D字体如图9所示。
以上仅为本发明的具体实施例,但本发明的技术特征并不局限于此。任何以本发明为基础,为解决基本相同的技术问题,实现基本相同的技术效果,所作出地简单变化、等同替换或者修饰等,皆涵盖于本发明的保护范围之中。
Claims (10)
1.广告字3D模型生成方法,其特征在于,包括如下步骤:
(1)对文字轮廓进行Delaunay轮廓三角化;
(2)生成文字轮廓中心线;
(3)根据中心线对文字轮廓进行网格化处理,生成外壁网格;
(4)拉伸网格,生成外壁3D网格;
(5)调整网格;
(6)生成内壁网格;
(7)重复上述步骤(4)-(5)生成内壁3D网格。
2.根据权利要求1所述广告字3D模型生成方法,其特征在于:所述步骤(3)具体步骤为:用中心线对轮廓进行网格剖分,得到对称的轮廓三角网格BaseMesh,BaseMesh为外壁基础网格。
3.根据权利要求2所述广告字3D模型生成方法,其特征在于:所述步骤(3)还包括对BaseMesh进行细分,得到外壁网格OutMesh。
4.根据权利要求3所述广告字3D模型生成方法,其特征在于:步骤(3)中,在生成BaseMesh时,顶点被分成边界点和中心点,对每个三角形的非边界边按照比例r1分成大于2及以上的段数,分成的段数根据网格边平均长度除以一个设定的长度得到,然后依次连接点,得到新的网格作为外壁网格OutMesh。
5.根据权利要求4所述广告字3D模型生成方法,其特征在于:步骤(3)中,若不平均分割非边界边,中间间距大于两头间距。
6.根据权利要求2所述广告字3D模型生成方法,其特征在于:
步骤(4)中,p0为边界点,p1为中心点,计算分割点位置:
如果拉伸成直线,新的顶点P(x,y,z):
x坐标:P(x)=p0(x)+[p1(x)-p0(x)]*r1;
y坐标:P(y)=p0(y)+[p1(y)-p0(y)]*r1;
z坐标:P(z)=h*r1;
其中,r1为当前点的比例,h为设定高度;记录每个新生成的点对应的边界点。
8.根据权利要求1所述广告字3D模型生成方法,其特征在于:
步骤(5)中,具体调整网格的方法为:
1)计算边界轮廓的上每个顶点的角度,当角度大于160度时,对应的新生成的点需要平滑处理;
2)按z坐标值,搜索网格的等高线,得到一系列的等高线;
3)对每一条等高线的点,搜索其左右邻接点,邻接的点的条件是对应的边界边上的原始边界点不相同;
4)得到其左右邻接点后,计算每个点到原始轮廓线的距离,然后根据其左右邻接点到原始轮廓线距离,沿着顶点边方向调整顶点位置:
p=p+(ori-p)*λ*[len-newLen]/len;
newLen=(left*w1+right*w2)/(w1+w2);
其中p为当前点,ori为其原始点,len为当前点到轮廓的距离,left,right分别为左右点到轮廓的距离,λ为系数,W1为p和左边邻接点距离的倒数,W2为p和右边邻接点距离的倒数;当p的左右邻接点有一个不需要调整时,直接将p点调整调整到p与左右邻接点的连线上。
9.根据权利要求8所述广告字3D模型生成方法,其特征在于:
步骤(5)还包括:
5)将等高线上的点,根据左右邻接点再次进行多次迭代,计算当前点和原始点与左右邻接点的交点inter,计算当前点和左右点角度:
p=p+(inter-p)*γ,γ=(当前角度-原始角度)/(180-原始角度);
在迭代调整时如果当前点的角度已经大于原始点角度就不需要调整。
10.根据权利要求1所述广告字3D模型生成方法,其特征在于:
步骤(6)中,内壁基础网格的生成具体方法为:内壁的网格采用同一个基础网格,对轮廓进行向内偏移,偏移的距离为壁厚,将偏移后的轮廓线与基础网格进行切割,得到内壁的基础网格。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010804886.0A CN112085832B (zh) | 2020-08-12 | 2020-08-12 | 广告字3d模型生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010804886.0A CN112085832B (zh) | 2020-08-12 | 2020-08-12 | 广告字3d模型生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112085832A true CN112085832A (zh) | 2020-12-15 |
CN112085832B CN112085832B (zh) | 2021-11-02 |
Family
ID=73727859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010804886.0A Active CN112085832B (zh) | 2020-08-12 | 2020-08-12 | 广告字3d模型生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112085832B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090098166A (ko) * | 2008-03-13 | 2009-09-17 | (주) 예진디자인 | 회전타입 광고용 간판 |
CN101609564A (zh) * | 2009-07-09 | 2009-12-23 | 杭州力孚信息科技有限公司 | 一种草图式输入的三维网格模型制作方法 |
CN104331555A (zh) * | 2014-10-31 | 2015-02-04 | 河海大学常州校区 | 一种针对带有边界的非封闭stl模型的切片处理方法 |
CN107767439A (zh) * | 2017-08-24 | 2018-03-06 | 宁波大学 | 三维立体金属广告字模型的生成方法 |
CN108830776A (zh) * | 2018-07-31 | 2018-11-16 | 浙江财经大学 | 面向3d打印模型的三维可见实体水印版权防伪标识方法 |
CN109448042A (zh) * | 2018-10-17 | 2019-03-08 | 北京师范大学 | 一种利用积分曲线计算血管壁厚度的方法 |
CN209607165U (zh) * | 2018-09-10 | 2019-11-08 | 安徽新华学院 | 一种信息管理专业教学演示装置 |
CN111145328A (zh) * | 2019-12-04 | 2020-05-12 | 稿定(厦门)科技有限公司 | 三维文字表面纹理坐标计算方法、介质、设备及装置 |
-
2020
- 2020-08-12 CN CN202010804886.0A patent/CN112085832B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090098166A (ko) * | 2008-03-13 | 2009-09-17 | (주) 예진디자인 | 회전타입 광고용 간판 |
CN101609564A (zh) * | 2009-07-09 | 2009-12-23 | 杭州力孚信息科技有限公司 | 一种草图式输入的三维网格模型制作方法 |
CN104331555A (zh) * | 2014-10-31 | 2015-02-04 | 河海大学常州校区 | 一种针对带有边界的非封闭stl模型的切片处理方法 |
CN107767439A (zh) * | 2017-08-24 | 2018-03-06 | 宁波大学 | 三维立体金属广告字模型的生成方法 |
CN108830776A (zh) * | 2018-07-31 | 2018-11-16 | 浙江财经大学 | 面向3d打印模型的三维可见实体水印版权防伪标识方法 |
CN209607165U (zh) * | 2018-09-10 | 2019-11-08 | 安徽新华学院 | 一种信息管理专业教学演示装置 |
CN109448042A (zh) * | 2018-10-17 | 2019-03-08 | 北京师范大学 | 一种利用积分曲线计算血管壁厚度的方法 |
CN111145328A (zh) * | 2019-12-04 | 2020-05-12 | 稿定(厦门)科技有限公司 | 三维文字表面纹理坐标计算方法、介质、设备及装置 |
Non-Patent Citations (3)
Title |
---|
MWA WIJNTJES: "Probing pictorial relief: from experimental design to surface reconstruction", 《BEHAVIOR RESEARCH METHODS》 * |
杨义军: "一种基于Delaunay三角化的手写体文字细化方法", 《中国图象图形学报》 * |
赵希等: "车辆驾驶模拟器道路场景中的交通标示设计", 《 武汉理工大学学报(交通科学与工程版) 》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112085832B (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108595858B (zh) | 基于bim的轻量化深度处理工作方法 | |
CN111709092B (zh) | 一种基于有限元单元节点的子午线轮胎胎面花纹有限元自动建模方法 | |
CN101609564B (zh) | 一种草图式输入的三维网格模型制作方法 | |
CN107464223B (zh) | 一种基于切片的点云孔洞修补方法 | |
CN110489778B (zh) | 面向激光刻蚀加工的图形分割方法、激光刻蚀控制系统 | |
CN104361632A (zh) | 一种基于Hermite径向基函数的三角网格补洞方法 | |
US20240153123A1 (en) | Isogeometric Analysis Method Based on a Geometric Reconstruction Model | |
CN107578472B (zh) | 三维表面三角网络模型的角度优化方法及装置 | |
CN1885349A (zh) | 三维扫描的点云孔洞填补方法 | |
CN109410334A (zh) | 一种基于特征线的三维网格模型缺陷孔洞修复方法 | |
CN116310048B (zh) | 一种基于曲率细分计算光线跟踪与nurbs曲面交点的方法 | |
CN103871102A (zh) | 一种基于高程点和道路轮廓面的道路三维精细建模方法 | |
CN104331933A (zh) | 一种分层方向自适应快速选取方法 | |
CN104715508A (zh) | 一种网格建模方法及装置 | |
CN114434802B (zh) | 3d打印轮廓偏置填充路径规划算法 | |
CN112085832B (zh) | 广告字3d模型生成方法 | |
CN108763668A (zh) | 基于细分技术与边界替换的齿轮模型区域参数化方法 | |
CN108109205A (zh) | 一种基于孔洞填充的残缺模型检索与重建方法 | |
CN109934928B (zh) | 基于骨架化的三维模型简化方法 | |
CN108763767B (zh) | 面向vr引擎的大数据量igs工业模型polygon转换方法 | |
CN115630478A (zh) | 一种基于迭代函数系统的离散裂缝网络生成方法 | |
CN112659316B (zh) | 一种3d水泥打印的快速分层方法 | |
CN104392027B (zh) | 一种涡轮叶片扰流柱的参数化造型方法 | |
CN114842169A (zh) | 一种基于stl切片算法的壳体零件轮廓路径提取方法 | |
CN114626157A (zh) | 一种基于数字化模型的实体轮廓曲线抽取方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: 3D model generation method of advertising words Effective date of registration: 20220721 Granted publication date: 20211102 Pledgee: China Co. truction Bank Corp Jinhua branch Pledgor: ZHEJIANG FLASHFORGE 3D TECHNOLOGY Co.,Ltd. Registration number: Y2022330001484 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |