一种三维CSG-BRep模型的拓扑元素的访问方法

文档序号:9304715阅读:826来源:国知局
一种三维CSG-BRep模型的拓扑元素的访问方法
【技术领域】
[0001 ] 本发明涉及一种三维CSG-BRep模型的拓扑元素的访问方法。
【背景技术】
[0002] 激光雷达的出现使数据获取的方式变得快捷方便。目前通用的建模手段是根据激 光雷达测得的点云进行精简以及构网。虽然能够构建出精细的三维模型。但是,其缺点是 构建的三角网模型具有数据量大,难以拆分,没有拓扑关系等缺点。不仅不便于管理,而且 不具备对模型拓扑关系的详细描述。因此,迫切需要一种新的方法来解决这些问题。目前, 很多学者对模型拓扑关系的表达和构建进行了研究。
[0003] 但是,目前三维空间拓扑还处于初期阶段,虽然不同的专家学者都提出了各自的 拓扑模型,但是还没有好的方法来进行实现拓扑结构的访问。对三维精细模型内部拓扑结 构的研究更是寥寥无几。已知存在的问题主要有以下五点:1)都是假设模型已经存在,再 去探究拓扑关系。2)都是只提出各自的拓扑模型,并无探究如何访问拓扑。3)对相邻空间 体拓扑重建虽有较好的方法,但是在处理相交空间体的拓扑关系重建困难。4)基于体和影 像来实现三维重建虽然能实现模型重建,但是模型紧靠简单的拉伸而成,不具有精细结构, 而且模型仅具有简单的坐标表示而模型内部缺乏拓扑连接关系。5)多数拓扑模型存在数据 冗余,拓扑与几何信息融合不全面的现象。

【发明内容】

[0004] 本发明针对这些问题,按照面向对象的思想,以VS2010和C++语言为工具,设计了 一套系统的拓扑元素表达和访问的机制。主要内容分为四点:1.提出一种CSG-BREP拓扑 模型来描述模型内部的拓扑关系。2.根据三维激光点云自动拟合参数,或根据分割后的点 云手动提取参数,结合拓扑模型,实现CSG-BREP模型创建,使得CSG-BREP模型与点云模型 贴合。3.利用布尔运算(交运算,差运算,并运算)构造复杂CSG-BREP模型,将外拓扑(模 型之间)化为内拓扑(模型之内)处理。4.实现模型拓扑结构的访问。该模型与普通三角 网模型相比,模型各个构件可以拆分,所占用内存较少,并具备更完善的拓扑关系,实现了 三维空间对象拓扑信息的查询与分析,解决了目前大部分模型如三角网模型没有详细拓扑 关系、难以拆分、及拓扑关系访问机制的问题。
[0005] 本发明提供的技术方案为:
[0006] -种三维CSG-BR印模型的拓扑元素的访问方法,包括:
[0007] 访问建筑物的三维CSG-BRep模型中的单一模型内部拓扑关系的步骤和访问模型 之间的拓扑关系的步骤;
[0008] 通过访问建筑物的三维CSG-BRep模型的拓扑关系,以得到该建筑物中各结构之 间的位置关系信息;
[0009] 其中,所述访问单一模型内部拓扑关系的步骤包括访问形体的子集拓扑结构的步 骤和访问形体的父级拓扑结构步骤,
[0010] 访问模型之间的拓扑关系的步骤包括依次进行的:利用布尔运算将模型之间的拓 扑回归统一到单一模型内的拓扑访问的步骤,和所述访问单一模型内部拓扑关系的步骤。
[0011] 优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述访问形体的 子集拓扑结构的步骤具体包括:
[0012] 遍历形体的子集实体中所需要查找的拓扑元素类型,
[0013] 当查找到一个所需要类型的拓扑元素时,
[0014] 将该拓扑元素的信息存储到一个映射map中,
[0015] 如此循环,直到找到所有所需要类型的拓扑元素。
[0016] 优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述访问形体的 父集拓扑结构的步骤具体包括:
[0017] 遍历该形体,从该形体中找到位于该形体上的所有父级元素结构,
[0018] 在查找到的父级元素结构中继续遍历位于该父级元素结构上的子集元素结构,
[0019] 为查找到的子集元素结构赋予一个唯一标识,
[0020] 将该子集元素结构的所述唯一标识和该父级元素结构按照key-value的形式放 入到一映射map中,
[0021] 从该映射map中提取出与该子集元素结构相连接的父级元素结构即可。
[0022] 优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,利用布尔运算将 模型之间的拓扑回归统一到单一模型内的拓扑访问的步骤包括通过对两个以上的物体进 行交运算、并运算或差运算,以得到一个新的物体形态的步骤,其中,在所述交运算、并运算 和差运算步骤中均用参数方程的形式表达基本体素。
[0023] 较优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,利用布尔运算 将模型之间的拓扑回归统一到单一模型内的拓扑访问的步骤具体包括:
[0024] 步骤一、计算第一和第二体素之间的交点:首先遍历第一体素中的所有边,同时遍 历第二体素中的所有面,将第一体素中的所有的边与第二体素中的所有的面求第一交点, 此时,第一交点将第一体素中的边分割成若干段;以同样的方法,再将第二元素中的所有边 与第一元素中的所有面进行求交运算,得到第二交点,此时,第二交点也将第二体素中的边 分割成若干段;之后进入步骤二,
[0025] 步骤二、求解新的交线:首先判定步骤一中的交点是否为有效点,
[0026] 若第一交点位于第一元素的边界上且位于第二元素的边界内,则判定该第一交点 为有效点;
[0027] 若第二交点位于第二元素的边界上且位于第一元素的边界内,则也判定该第二交 点为有效点;
[0028] 最后连接所有有效点,以得到新的交线;
[0029] 步骤三、对步骤一中分割以后的边进行分类处理:
[0030] 判断出第一体素中的边的各段与第二体素的位置关系,将位于第二体素的内部、 外部或是与第二体素边重合的第一体素边的各段分别分为三类,
[0031] 判断出第二体素中的边的各段与第一体素的位置关系,将位于第一体素内部、外 部或是与第一体素边重合的第一体素边的各段也分别分为三类;
[0032] 步骤四、第一和第二体素中原有边界的去留:利用步骤二中得到的新的交线和步 骤三中的分类结果,
[0033]当第一和第二体素做求交运算时,保留位于第二体素的内部和与第二体素边重合 的第一体素边的两类段,舍去位于第二体素的外部的第一体素边的一类段,
[0034] 同时保留位于第一体素的内部和与第一体素边重合的第二体素边的两类段,舍去 位于第一体素的外部的第二体素边的一类段;
[0035]当第一和第二体素做并运算或差运算时,保留位于第二体素的外部的第一体素边 的该一类段,舍去位于第二体素的内部和与第二体素的边重合的第一体素边的两类段;
[0036] 步骤五、将保留下来的边界,按照拓扑重建思想构建出一个新的体素。
[0037] 较优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述步骤二 中,所述第一交点位于第一元素的边界上且位于第二元素的边界内也包括第一交点位于第 一元素的边界上且位于第二元素的边界上,
[0038] 所述第二交点位于第二元素的边界上且位于第一元素的边界内也包括第二交点 位于第二元素的边界上且位于第一元素的边界上。
[0039] 较优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述步骤一 中,求得交点的具体过程包括:
[0040] 将边的所有的参数曲线统一表示为:C(t) = (x(t),y(t),z(t)),
[0041] 将面的所有的参数曲面统一表示为:F(u,v) = (x(u,v),y(u,v),z(u,v)),
[0042](1. 1)参数方程求交需满足C(t)_F(u,v) = 0,令S(t,u,v) =C(t)_F(u,v),
[0043] (1. 2)求微分
[0044] (1. 3)各参数微分显示表示:
[0045]
[0050] (1. 5)在得到步骤(1. 4)中的迭代方程之后,对曲线和曲面分别建立包围盒树,当 曲线的包围盒树与曲面的包围盒树叶子相交时,取两个叶子内的参数值作为初值t。,U。,V。 进行迭代,直到满足收敛条件,最终求取交点。
[0051] 优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述拓扑重建思 想为由边构建环,再由环构建面,最后再由面构建壳和体的方式。
[0052] 优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述建筑物的 CSG-BRep模型中拓扑元素的引用关系为从复杂的拓扑元素到简单的拓扑元素,且简单的拓 扑元素可被不同的复杂的拓扑元素共享。
[0053] 较优选的是,所述的三维CSG-BRep模型的拓扑元素的访问方法中,所述建筑物的 CSG-BRep模型中拓扑元素的引用关系为壳和体引用面、面引用环、环引用边和边引用点。
[0054] 本发明至少包含如下有益效果:
[0055] 本发明的CSG-BREP结合的方式表达模型具有以下特点:a.可以大量减少数据量, 便于模型的存储和管理。b.能够清晰的记录模型的生成过程。c.能够对模型的拓扑连接关 系进行处理。d.可同时处理规则以及不规
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1