CN106780745A - 一种对复杂三维体碎面进行识别和合并的方法 - Google Patents
一种对复杂三维体碎面进行识别和合并的方法 Download PDFInfo
- Publication number
- CN106780745A CN106780745A CN201611050682.2A CN201611050682A CN106780745A CN 106780745 A CN106780745 A CN 106780745A CN 201611050682 A CN201611050682 A CN 201611050682A CN 106780745 A CN106780745 A CN 106780745A
- Authority
- CN
- China
- Prior art keywords
- triangle
- complex
- triangles
- dimensional body
- identified
- 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
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
- G06T17/30—Polynomial surface description
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种对复杂三维体碎面进行识别和合并的方法,该方法首先输入构成复杂几何部件表面的三角形集合,再先后判断曲面上的三角形是否共边和共面,如果既共边又共面则合并这两个三角形碎面,如果只满足共边则不对碎面进行合并,最后利用Delaunay三角剖分法重构三角形。该方法合并了密集的小三角形,便于对进行布尔运算后的复杂三维体进行网格划分,不会出现网格出错的情况,且减少了网格节点,减少了计算量,使得程序运行速度提高,效率大大增加。
Description
技术领域
本发明属于面向CFD的三维复杂形体建模技术领域,具体涉及一种对复杂三维体碎面进行识别和合并的方法。
背景技术
在对复杂三维体进行建模时,由于模型结构复杂,需要对模型进行大量的布尔运算,在进行运算的过程中,构建的模型常常会出现一个曲面中有着密集的不规则碎面的情况,这些碎面将严重影响到对模型进行网格划分的正确率和均匀性;并且碎面细小数量多,计算耗时长,效率低下。
针对以上问题,本发明提出一种对复杂三维形体碎面进行识别和合并的方法,该方法采用一定的容错判据对构成曲面的三角形集合进行合并并重新产生三角形。经试验,本发明合并碎面后便于进行后续的网格划分,同时大大地提高了计算的效率,节省了计算时间。
发明内容
发明目的:为了克服现有技术中存在的不足,本发明提供一种对复杂三维体碎面进行识别和合并的方法,针对复杂三维体在进行布尔运算时产生的碎面较小且密集,因而三维体划分的网格质量不高也容易出错,则可能导致CFD计算的无法完成或者得到没有意义的结果,且碎面节点多,计算量大,严重影响了计算效率等一系列问题,发明了一种对复杂三维形体碎面进行识别和合并的方法。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种对复杂三维体碎面进行识别和合并的方法,针对构成复杂几何部件表面的三角形集合进行处理,包括识别可合并的三角形,并将其合并,再组成简单的多边形,最后再利用Delaunay三角剖分法对多边形划分三角形。
进一步的,具体包括以下步骤:
步骤1、输入构成复杂几何部件表面的三角形集合;
步骤2、规整所述三角形集合中的点,将相邻点进行归并;
步骤3、依次判断集合中的三角形是否共边,对共边的三角形进行步骤4;
步骤4、判断三角形是否共面,对共面的三角形进行步骤5;
步骤5、判断三角形是否共两边,如果共两边则删除这个三角形两条共边的交点;
步骤6、合并碎面,组成简单的多边形;
步骤7、利用Delaunay三角剖分法重构三角形。
进一步的,步骤2中,所述的规整三角形集合中的点集是指确定一个误差值ε0=10-4,计算两个点之间的距离d,当其小于ε0时,则将两个点归并为一个点。
进一步的,步骤3中,所述的依次判断集合中的三角形是否共边是指计算三角形三条边的中点,若一个三角形任意一条边的中点与另一个三角形任意一条边的中点重合,则这两个三角形共边。
进一步的,步骤4中,所述的判断三角形是否共面是指确定一个误差值ε1=10-5,计算三角形顶点与其共边三角形所形成的大平面的距离D,如果此距离小于ε1,则这两个共边的三角形共面。
进一步的,步骤5中,所述的判断三角形是否共两边是指若一个三角形中有两条边的中点都分别与其他三角形的边的中点重合,那么这个三角形就是共两边。
进一步的,步骤6中,所述的合并碎面指的是将既共边又共面的三角形之间共边的边删除,三角形两条共边的交点删除,从而合并为一个多边形。
进一步的,步骤7中,所述的对多边形再次划分三角形是指利用Delaunay三角剖分法对多边形划分三角形,先以最近的三个顶点形成三角形,且各线段皆不相交;再找出这些三角形中最小角所在的三角形,对其作外接圆,外接圆的圆心即为插入点;检测插入点是否在其他三角形的外接圆内,如果在,则将这些三角形任意两个顶点与插入点重新构成一个三角形,如果不在,则不需重新构造三角形。
有益效果:本发明提供的一种对复杂三维体碎面进行识别和合并的方法,与现有技术相比,具有的优势是:
1.本发明是一种识别和合并碎面的方法,合并了密集的小三角形,便于对进行布尔运算后的复杂三维体进行网格划分,不会出现网格出错的情况,且网格质量也随之提高。
2.本发明合并大量的碎面,减少了网格节点,从而网格的数量减少,减少了计算量,使得程序运行速度提高,效率大大增加。
附图说明
图1为本发明的碎面示意图。
图2为本发明的对复杂三维形体碎面进行识别和合并的方法的流程图。
图3为本发明的归并相邻较近点的示意图。
图4为本发明的判断三角形共边的示意图。
图5为本发明的判断三角形共面的示意图。
图6为本发明的共两边的示意图。
图7为本发明的合并碎面的示意图。
图8为本发明的重构三角形示意图。
图9为本发明实施例对一个复杂模型识别并合并碎面后进行网格划分所得的非结构化网格示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
该方法首先输入构成复杂几何部件表面的三角形集合,再先后判断曲面上的三角形是否共边和共面,如果既共边又共面则合并这两个三角形碎面,如果只满足共边则不对碎面进行合并。该方法合并了密集的小三角形,便于对进行布尔运算后的复杂三维体进行网格划分,不会出现网格出错的情况,且减少了网格节点,减少了计算量,使得程序运行速度提高,效率大大增加。
一种对复杂三维形体碎面进行识别和合并的方法,针对构成复杂几何部件表面的三角形集合进行处理,识别可合并的三角形,并将其合并,组成简单的多边形,最后再利用Delaunay三角剖分法划分三角形。具体步骤如下:
步骤1、输入构成复杂几何部件表面的三角形集合;
步骤2、规整三角形集合中的点,将相邻比较近的点进行归并;规整三角形集合中的点集是指确定一个误差值ε0=10-4,计算两个点之间的距离d,当其小于ε0时,此时在程序中肉眼已看不到两点之间有距离误差,则将两个点归并为一个点;
步骤3、依次判断集合中的三角形是否共边,对共边的三角形进行步骤4,没有共边的三角形不进行处理;是否共边是指计算三角形三条边的中点,若一个三角形的中点与另一个三角形的中点重合,则这两个三角形共边;没有共边的三角形不进行处理。
步骤4、判断三角形是否共面,对共面的三角形进行步骤5,若不共面则跳出;是否共面是指确定一个误差值ε1=10-5,计算三角形顶点与其共边三角形所形成的大平面的距离D,如果此距离小于ε1,则这两个共边的三角形共面;若不共面则跳出;
步骤5、判断三角形是否共两边,如果共两边需要删除一个顶点;是否共两边是指若一个三角形中有两条边的中点都与其他三角形的中点重合,那么这个三角形就是共两边,此时还需要处理这个三角形两条共边的交点;
步骤6、合并碎面,组成简单的多边形;合并碎面指的是将既共边又共面的三角形之间共边的边删除,共两边的点删除,从而合并为一个多边形;
步骤7、利用Delaunay三角剖分法重构三角形是指利用Delaunay三角剖分法对多边形划分三角形。
下面结合本发明实例中的附图对本发明作进一步的说明。
实施例
如图1所示为进行布尔运算后构成复杂三维体表面的三角形碎面。一种对复杂三维形体碎面进行识别和合并的方法,如图2所示,包括以下步骤:
步骤1、输入构成复杂几何部件表面的三角形集合;
步骤2、规整构成复杂几何部件表面的三角形集合中的点,确定误差值ε0,通过计算两个点之间的距离对点进行归并,如果两个点之间的距离小于ε0=10-4,此时在程序中肉眼已看不到两点之间有距离误差,则归并这两个点合为一个点,如图3所示;
步骤3、以三角形f1、f2为例判断三角形是否共边。计算三角形f1三条边的中点,再计算三角形f2三条边的中点,通过计算得三角形f1中B1C1边的中点M与三角形f2中A2C2边的中点M1重合,那么这两个三角形就是共边的,如图4所示。下面需要判断三角形是否共面;
步骤4、确定一个误差值ε1=10-5,以f1的三个点创建一个大平面Plane,B2点为三角形f2中A2C2边的对顶点,计算B2点与平面Plane的距离D,若此距离小于ε1,那么两个三角形共面,如图5所示。
步骤5、在这两个三角形共面的情况下,还需要判断f1与f2是否其他三角形也共边。经计算可得三角形f2中边A2B2中的中点与三角形f3中边A3C3的中点重合,则三角形f2和三角形f3也共边,那么还需要处理两条共边的交点B1(A2)(A3),如图6所示。
步骤6、对一系列既共边又共面的三角形碎面进行合并,首先将两个共边三角形的共边删除,若其中一个三角形与另一个三角形也共边,需将这个三角形两条共边的交点删除,则得到了一个简单的多边形,如图7所示。
步骤7、利用Delaunay三角剖分法对多边形划分三角形,如图8所示。
本发明实施例取得的效果为:对一个复杂模型合并碎面后进行网格划分,产生的非结构化网格数为243891,网格计算时间为时间为25.2s,相比于未处理碎面产生的非结构化网格数更少,时间更短,网格质量也有所提高。产生的非结构化网格图如图9所示。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种对复杂三维体碎面进行识别和合并的方法,其特征在于:针对构成复杂几何部件表面的三角形集合进行处理,包括识别可合并的三角形,并将其合并,再组成简单的多边形,最后再利用Delaunay三角剖分法划分三角形。
2.根据权利要求1所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:具体包括以下步骤:
步骤1、输入构成复杂几何部件表面的三角形集合;
步骤2、规整所述三角形集合中的点,将相邻点进行归并;
步骤3、依次判断集合中的三角形是否共边,对共边的三角形进行步骤4;
步骤4、判断三角形是否共面,对共面的三角形进行步骤5;
步骤5、判断三角形是否共两边,如果共两边则删除这个三角形两条共边的交点;
步骤6、合并碎面,组成简单的多边形;
步骤7、利用Delaunay三角剖分法重构三角形。
3.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤2中,所述的规整三角形集合中的点集是指确定一个误差值ε0=10-4,计算两个点之间的距离d,当其小于ε0时,则将两个点归并为一个点。
4.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤3中,所述的依次判断集合中的三角形是否共边是指计算三角形三条边的中点,若一个三角形任意一条边的中点与另一个三角形任意一条边的中点重合,则这两个三角形共边。
5.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤4中,所述的判断三角形是否共面是指确定一个误差值ε1=10-5,计算三角形顶点与其共边三角形所形成的大平面的距离D,如果此距离小于ε1,则这两个共边的三角形共面。
6.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤5中,所述的判断三角形是否共两边是指若一个三角形中有两条边的中点都分别与其他三角形的边的中点重合,那么这个三角形就是共两边。
7.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤6中,所述的合并碎面指的是将既共边又共面的三角形之间共边的边删除,三角形两条共边的交点删除,从而合并为一个多边形。
8.根据权利要求2所述的对复杂三维形体碎面进行识别和合并的方法,其特征在于:步骤7中,所述的对多边形再次划分三角形是指利用Delaunay三角剖分法对多边形划分三角形,先以最近的三个顶点形成三角形,且各线段皆不相交;再找出这些三角形中最小角所在的三角形,对其作外接圆,外接圆的圆心即为插入点;检测插入点是否在其他三角形的外接圆内,如果在,则将这些三角形任意两个顶点与插入点重新构成一个三角形,如果不在,则不需重新构造三角形。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611050682.2A CN106780745A (zh) | 2016-11-24 | 2016-11-24 | 一种对复杂三维体碎面进行识别和合并的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611050682.2A CN106780745A (zh) | 2016-11-24 | 2016-11-24 | 一种对复杂三维体碎面进行识别和合并的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106780745A true CN106780745A (zh) | 2017-05-31 |
Family
ID=58911271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611050682.2A Pending CN106780745A (zh) | 2016-11-24 | 2016-11-24 | 一种对复杂三维体碎面进行识别和合并的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106780745A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109782272A (zh) * | 2018-12-30 | 2019-05-21 | 中国电子科技集团公司第十五研究所 | 三维雷达体的布尔融合方法 |
CN110689569A (zh) * | 2019-12-10 | 2020-01-14 | 北京唯智佳辰科技发展有限责任公司 | 集成电路版图场域识别与网格细分处理方法及装置 |
CN110973859A (zh) * | 2019-12-19 | 2020-04-10 | 江苏艾佳家居用品有限公司 | 一种家装设计中定制厨柜的台面、前后挡水生成的方法 |
CN114155329A (zh) * | 2021-11-11 | 2022-03-08 | 埃洛克航空科技(北京)有限公司 | 三维模型多格网的平面融合方法、系统及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809735A (zh) * | 2016-03-11 | 2016-07-27 | 武汉大学 | 一种基于三维几何体合并的拓扑维护方法 |
-
2016
- 2016-11-24 CN CN201611050682.2A patent/CN106780745A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809735A (zh) * | 2016-03-11 | 2016-07-27 | 武汉大学 | 一种基于三维几何体合并的拓扑维护方法 |
Non-Patent Citations (2)
Title |
---|
杨晓东,冯晓峰,申长雨: "注塑模CAE用实体模型的表面网格模型生成方法", 《塑料工业》 * |
毛亚纯: "《数字测图原理与方法》", 30 November 2014 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109782272A (zh) * | 2018-12-30 | 2019-05-21 | 中国电子科技集团公司第十五研究所 | 三维雷达体的布尔融合方法 |
CN110689569A (zh) * | 2019-12-10 | 2020-01-14 | 北京唯智佳辰科技发展有限责任公司 | 集成电路版图场域识别与网格细分处理方法及装置 |
CN110689569B (zh) * | 2019-12-10 | 2020-06-30 | 北京唯智佳辰科技发展有限责任公司 | 集成电路版图场域识别与网格细分处理方法及装置 |
CN110973859A (zh) * | 2019-12-19 | 2020-04-10 | 江苏艾佳家居用品有限公司 | 一种家装设计中定制厨柜的台面、前后挡水生成的方法 |
CN110973859B (zh) * | 2019-12-19 | 2021-08-31 | 江苏艾佳家居用品有限公司 | 一种家装设计中定制厨柜的台面、前后挡水生成的方法 |
CN114155329A (zh) * | 2021-11-11 | 2022-03-08 | 埃洛克航空科技(北京)有限公司 | 三维模型多格网的平面融合方法、系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110349252B (zh) | 一种基于点云边界构建小曲率零件实际加工曲线的方法 | |
CN106780745A (zh) | 一种对复杂三维体碎面进行识别和合并的方法 | |
CN107767457A (zh) | 一种基于点云快速重建的stl数模生成方法 | |
CN105793848B (zh) | 包括建模步骤的计算机辅助设计方法 | |
CN102881047B (zh) | 一种自动的非封闭隐式曲面重建方法 | |
Wang et al. | Surface reconstruction from unoriented point clouds by a new triangle selection strategy | |
CN104851126B (zh) | 基于广义圆柱体的三维模型分割方法及装置 | |
CN104134236B (zh) | 一种三维平面实体的布尔运算方法 | |
CN104282038A (zh) | 基于局部子邻域划分的点云特征点提取方法 | |
CN108320327B (zh) | 一种三周期极小曲面等壁厚分层填充区域生成方法 | |
CN102800114B (zh) | 一种基于Poisson-disk采样的数据点云精简方法 | |
CN110232742A (zh) | 3d打印分层控制算法 | |
CN104361625B (zh) | 一种基于射线原理的带边界保留的云数据精简算法 | |
CN105243687A (zh) | 一种义齿模型三角网格优化方法 | |
CN113362437B (zh) | 一种点云重采样方法、系统、存储介质及设备 | |
CN104794747B (zh) | 一种基于射线原理的三维点云数据精简方法 | |
CN107037738A (zh) | 数控加工几何仿真中基于stl模型的材料去除算法 | |
CN111400969B (zh) | 一种非结构直角网格加速生成方法 | |
CN102930589A (zh) | 一种非结构直角网格相贯线修正方法 | |
CN1294466C (zh) | 基于测量数据点直接数控加工方法 | |
CN105652799B (zh) | 基于边等距偏移的环切轨迹生成方法 | |
Ma et al. | Distance computation for canal surfaces using cone-sphere bounding volumes | |
CN112819108B (zh) | 一种多源异构模型的切片融合方法、系统及存储介质 | |
CN104199742A (zh) | 一种叶片截面特征点云的精确划分方法 | |
CN115170734A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170531 |