一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种面向GIS的三维模型切割分析算法的制作方法

2022-11-19 11:54:31 来源:中国专利 TAG:

一种面向gis的三维模型切割分析算法
技术领域
1.本发明涉及三维空间分析技术领域,尤其是涉及一种面向gis的三维模型切割分析算法。


背景技术:

2.相比较二维平面来说,三维模型可以展现任意方向的实体结构及任意方向的平面投影,目前得到了广泛应用。但三维模型只显示表面结构信息,而表面结构将很多内部对象包裹在里面,使得无法看到,想要更好地了解里面的对象就要通过切割技术来实现。对三维模型的切割是三维可视化研究的一个基本应用,通过切割,能够直观地了解地质体及地上景观模型内部空间结构及空间展布细节特征,增强对大范围三维模型内部构造的理解。
3.当前经典的切割算法主要是基于数学理论完成的计算几何的切割,其对模型数据的要求较高,没有容差概念,容错率较低,无法应用于地质体及地上景观等大范围模型的切割。


技术实现要素:

4.为解决上述背景技术中提出的问题,本发明采取的技术方案为:
5.一种面向gis的三维模型切割分析算法,包括如下步骤:
6.s1、预设算法过程中的容差范围,对输入的三维模型进行坐标点平差处理,以去除三维模型外表面的三角网的重复点和重复三角形;
7.s2、基于obb树算法,对被切割模型和切割模型分别构建obb树,再对两者之间做碰撞检测;
8.s3、遍历碰撞检测对,对空间相关的三角形求交,得到交点和交线,并组织交点、交线的数据结构;
9.s4、对求得的交点、交线进行平差运算;
10.s5、根据平差运算后的交线进行三角形重构;
11.s6、将交线作为边界约束,并基于拓扑关系分割原始面片,并对分割后的结果按来源分组,得到多个分割后的子面片;
12.s7、根据多个分割后的子面片,将每个被切割面分为多个部分,每个部分均属于切割面左侧或切割面右侧,再根据拓扑信息分别构建成体,得到切割结果。
13.在一些实施例中,步骤s1中,对输入的三维模型进行坐标点平差处理,以去除三维模型外表面的三角网的重复点和重复三角形时,具体包括如下步骤:
14.首先,对三角网中在预设的容差范围内的顶点进行平差处理,以除去顶点在容差范围内的重复点,用这些点的中点来代替;
15.然后,去除三角网中在容差范围内的重复三角形;
16.最后,去除退化三角形;
17.在去除锐角退化三角形时,对于容差范围内的锐角三角形,对其退化边进行平差,
用中点代替退化边,并删除平差后的退化三角形;
18.在去除钝角退化三角形时,对于容差范围内的钝角三角形,删除三角形钝角的对边,连接该边的两个相关三角形相对的顶点,重构该边的两个相关三角形。
19.在一些实施例中,步骤s3中,得到交点和交线段的具体步骤如下:
20.首先,进行边与边求交,遍历两个相关三角形的边,求两个三角形边与边的交点,并将距离在容差范围内的两条边看作相交边求其交点;
21.然后,进行边与面求交,分别求三角形的每条边与其相关三角形面的交点;
22.最后,根据所求得交点的空间位置信息以及拓扑信息生成交线。
23.在一些实施例中,步骤s4中,具体包括如下步骤:
24.首先,进行交线平差运算:将每一个三角形上的所有交线进行索引排序,排序之后找到相关交线,求每个三角形上所有交线形成的交点,并打断为多个子交线;
25.然后,进行交点平差运算:除去交点中在容差范围内的重复点,并更新原始面中的交点;
26.最后,针对共面的面片,求出共面区域的边界交线,并与非共面交线一起,构建线拓扑,得到节线信息表。
27.在一些实施例中,步骤s5中,具体包括如下步骤:
28.首先,重构空间信息:将交线添加到关联的三角形中,进行交线约束的三角形重构;
29.然后,重构拓扑信息:记录每条交线的拓扑关系信息,重构更新节线信息表。
30.与现有技术相比,本发明的有益效果是:
31.本发明提供的面向gis的三维模型切割分析算法,考虑了各步骤的容差范围,解决了传统切割算法中由于精度误差导致空间关系判断错误等问题;并通过构建关联三角形之间点、线、面的拓扑关系,精准地分割并重构三角网,进而实现基于三角网的三维模型切割,使其能够很好地支撑地上城市公共设施、地下构筑物、地质构造、岩性模型等多维度多尺度复杂模型的切割需求。
附图说明
32.图1为本发明提供的面向gis的三维模型切割分析算法的流程示意图;
33.图2a与图2b为一个具体实施例中,去除锐角退化三角形前与去除锐角退化三角形后的示意图;
34.图3a与图3b为一个具体实施例中,去除钝角退化三角形前与去除钝角退化三角形后的示意图;
35.图4为一个具体实施例中空间相关的三角形求交的示意图;
36.图5a和图5b为一个具体实施例中交线平差运算前后的示意图;
37.图6a与图6b为一个具体实施例中交点平差运算前后的示意图;
38.图7为一个具体实施例中为重构空间信息的示意图;
39.图8为一个具体实施例中得到分割后的子面片的示意图;
40.图9a-图9d为一个具体实施例中切割效果示意图。
具体实施方式
41.为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合附图和具体实施方式,进一步阐述本发明是如何实施的。
42.参照图1所示,本发明提供了一种面向gis的三维模型切割分析算法,包括如下步骤:
43.s1、预设算法过程中的容差范围,对输入的三维模型进行坐标点平差处理,以去除三维模型外表面的三角网的重复点和重复三角形。
44.步骤s1中,具体地,首先,对三角网中在预设的容差范围内的顶点进行平差处理,以除去顶点在容差范围内的重复点,用这些点的中点来代替;然后,去除三角网中在容差范围内的重复三角形;最后,去除退化三角形。
45.在一个具体实施例中,在去除锐角退化三角形时,参照图2a和图2b所示,对于容差范围内的锐角三角形ad1d2(即顶点接近于0
°
的三角形),对其退化边d1d2进行平差,用中点d’代替退化边d1d2,并删除平差后的退化三角形ad1d2。
46.在一个具体实施例中,在去除钝角退化三角形时,参照图3a和图3b所示,对于容差范围内的钝角三角形abc(即顶点接近于180
°
的三角形),删除三角形钝角的对边ac,连接该边的两个相关三角形相对的顶点bd,重构该边的两个相关三角形。
47.经过这样的处理后,能够减少容差范围内坐标点及三角形的临近情况,降低数据的复杂度。
48.s2、基于obb树算法,对被切割模型和切割模型分别构建obb树,再对两者之间做碰撞检测。经过这样的处理,以过滤不相关三角形,快速找到真正存在空间相关的三角形对。
49.s3、遍历碰撞检测对,对空间相关的三角形求交,得到交点和交线,并组织交点、交线的数据结构,包括间位置信息、交点类型、所属来源等信息。
50.步骤s3中,得到交点和交线段的具体步骤如下:首先,进行边与边求交,遍历两个相关三角形的边,求两个三角形边与边的交点,并将距离在容差范围内的两条边看作相交边求其交点;然后,进行边与面求交,分别求三角形的每条边与其相关三角形面的交点;最后,根据所求得交点的空间位置信息以及拓扑信息生成交线。
51.在一个具体实施例中,参照图4所示,可见,图4中,pq2即为两个三角形边与边的交点,pq1即为边与面的交点,pq1与pq2连成的线段即为生成的交线。
52.本发明提供的方案,在三角形求交时,直接求两个三角形边与边、边与面的交点,代替传统算法中求共面三角形和异面三角形两种情况,避免了判断三角形是否共面时存在的精度偏差,从而导致三角形求交不合理等问题。
53.s4、对求得的交点、交线进行平差运算。
54.步骤s4中,具体包括如下步骤:
55.首先,进行交线平差运算:将每一个三角形上的所有交线进行索引排序,排序之后找到相关交线,求每个三角形上所有交线形成的交点,并打断为多个子交线。在一个具体实施例中,参照图5a所示在平差运算前,找到三角形中的两条交线;参照图5b所示,交点为d0,打断形成的多个子交线为s0、s1、s2和s3。
56.然后,进行交点平差运算:除去交点中在容差范围内的重复点,并更新原始面中的交点。参照图6a与图6b所示,图6a中的重复点被去除后,仅保留了图6b中的一个交点。
57.最后,针对共面的面片,求出共面区域的边界交线,并与非共面交线一起,构建线拓扑,得到节线信息表。
58.s5、根据平差运算后的交线进行三角形重构。
59.步骤s5中,具体包括如下步骤:
60.首先,重构空间信息:将交线添加到关联的三角形中,进行交线约束的三角形重构。在一个具体实施中,参照图7所示,为图5中的图片重构空间信息后的示意图,重构后得到了七个子三角形,此时交线被加入到了原始图片中。
61.然后,重构拓扑信息:记录每条交线的拓扑关系信息,重构更新节线信息表。
62.s6、将交线作为边界约束,并基于拓扑关系分割原始面片,并对分割后的结果按来源分组,得到多个分割后的子面片。
63.在一个具体实施例中,参照图8所示,为图7中的图片将边线和交线作为边界,得到四个子面片的示意图。
64.s7、根据多个分割后的子面片,将每个被切割面分为多个部分,每个部分均属于切割面左侧或切割面右侧,再根据拓扑信息分别构建成体,得到切割结果。
65.在一个具体实施例中,参照图9a-图9d所示,图9a为切割地质体的示意图,图中中部为切割面,左侧和右侧分别为切割面左侧和切割面右侧;图9b、图9c、图9d分别为切割面左侧、切割面右侧和切割面的效果图。
66.本发明提供的面向gis的三维模型切割分析算法,可适用于大型地质模型的切割,解决了传统的切割算法中对于交点坐标的浮点误差带来的特殊情况考虑不全面,从而无法支持复杂工程地质数据的切割等问题。
67.综上,本发明提供的面向gis的三维模型切割分析算法,考虑了各步骤的容差范围,解决了传统切割算法中由于精度误差导致空间关系判断错误等问题;并通过构建关联三角形之间点、线、面的拓扑关系,精准地分割并重构三角网,进而实现基于三角网的三维模型切割,使其能够很好地支撑地上城市公共设施、地下构筑物、地质构造、岩性模型等多维度多尺度复杂模型的切割需求。
68.最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献