The invention provides a four fork tree index construction method and device using the method to store a computing device of 3D city model file, the method comprises: according to the calculated as the bounding box, the four fork tree model of the preset range, a preset range model includes a plurality of 3D City models. The bounding box of each 3D city model is calculated, and the corresponding rendering level is obtained according to the model weight of each 3D city model, in which the rendering level includes low-level, intermediate, advanced and top-level. Traversing all the 3D city models included in the preset range model, constructing the four tree index based on the preset range model according to the bounding box and rendering level of each 3D City model. As a result, this scheme constructs four fork tree index based on model weight, which can lead to important 3D city model first, and has fast indexing speed and high query efficiency.
【技术实现步骤摘要】
四叉树索引构建方法及装置
本专利技术涉及三维模型
,具体而言,涉及一种四叉树索引构建方法及装置。
技术介绍
随着测绘行业技术的快速发展,三维数字城市模型已从单个小区或者小场景的漫游浏览发展到整个城市的三维应用。然而,随着技术的不断提高,模型精度及模型仿真度的极大进步也带来了一个问题:数据量的剧烈增长。三维数字城市场景中城市建筑模型数量巨大,结构复杂,如何建立数据的空间索引,在大量的城市三维模型数据中快速查询到符合条件的模型数据是需要解决的技术问题。对于数据的空间索引,常用的空间划分组织索引结构有格网索引、B树、R树、四叉树、八叉树等。格网索引主要用于地形、影像等空间数据的划分,建筑物模型由于自身结构具有的不规则性,采用格网划分方式会在格网边界处产生大量的分割。B树是一维索引,无法处理二维和多维的空间数据。R树是B树在多维空间上的自然扩展,适用于多维空间查询,但由于空间数据分布的偶然性,使得各层节点容易重叠,在实际执行空间查询时,容易产生多个分支查询,降低空间查询的效率,也不太适合随机分布的建筑物模型。由于城市模型多是在地形表面建设,在Z方向上建筑物基本为不可分割的整体,由此,八叉树对于城市模型来说,在Z方向的划分反而会造成索引节点的冗余。四叉树的数据存储结构为层次树状结构,四叉树查询效率较高,目前在三维数字城市方面应用较为广泛。然而,现有的四叉树构建方法只是基于可视距离进行构建,没有考虑到城市模型的复杂性,由此,有些重要的城市模型无法被优先索引。
技术实现思路
为了克服现有技术中的上述不足,本专利技术所要解决的技术问题是提供一种四叉树索引构建方法及装置, ...
【技术保护点】
一种四叉树索引构建方法,其特征在于,所述方法应用于存储有三维城市模型文件的计算设备,所述方法包括:根据预设范围模型计算得到作为四叉树根节点的包围盒,其中,所述预设范围模型包括多个三维城市模型;计算每个三维城市模型的包围盒,根据每个三维城市模型的模型权重得到对应的渲染等级,其中,所述渲染等级包括低级、中级、高级及顶级;对预设范围模型包括的全部三维城市模型进行遍历,根据每个三维城市模型的包围盒及渲染等级构建基于预设范围模型的四叉树索引。
【技术特征摘要】
1.一种四叉树索引构建方法,其特征在于,所述方法应用于存储有三维城市模型文件的计算设备,所述方法包括:根据预设范围模型计算得到作为四叉树根节点的包围盒,其中,所述预设范围模型包括多个三维城市模型;计算每个三维城市模型的包围盒,根据每个三维城市模型的模型权重得到对应的渲染等级,其中,所述渲染等级包括低级、中级、高级及顶级;对预设范围模型包括的全部三维城市模型进行遍历,根据每个三维城市模型的包围盒及渲染等级构建基于预设范围模型的四叉树索引。2.根据权利要求1所述的方法,其特征在于,所述根据预设范围模型计算得到作为四叉树根节点的包围盒的步骤包括:设定预设范围模型,并计算所述预设范围模型对应的包围盒;将预设范围模型对应的包围盒作为四叉树根节点。3.根据权利要求2所述的方法,其特征在于,所述设定预设范围模型,并计算所述预设范围模型对应的包围盒的步骤包括:检测用户是否对预设范围模型进行指定;若指定,将用户指定的三维城市模型作为预设范围模型,并计算该预设范围模型对应的包围盒;若未指定,将计算设备包括的全部的三维城市模型作为预设范围模型并计算该预设范围模型对应的包围盒。4.根据权利要求1所述的方法,其特征在于,所述计算每个三维城市模型的包围盒,并获得每个三维城市模型的渲染等级的步骤包括:计算预设范围模型包括的每个三维城市模型的包围盒;根据不同的模型参数对应的权重配比按照预设权重规则计算每个三维城市模型对应的模型权重,并根据模型权重与渲染等级的对应关系确定三维城市模型的渲染等级,其中,所述不同的模型参数包括模型的地理位置、包围盒、顶点数量、纹理数量及体积大小。5.根据权利要求1所述的方法,其特征在于,所述对预设范围模型包括的全部三维城市模型进行遍历,根据每个三维城市模型的包围盒及渲染等级构建基于预设范围模型的四叉树索引的步骤包括:根据遍历顺序检测基于当前节点进行遍历的下一个模型的渲染等级是否为顶级,其中,初始遍历时,以根节点作为初始的当前节点;若为顶级,将该模型加入到根节点中;若不为顶级,检测该模型的包围盒与当前节点的子节点的包围盒的拓扑关系;若拓扑关系为相交,执行与拓扑关系为相交时所对应的节点设置操作;若拓扑关系为包含,执行与拓扑关系为包含时所对应的节点设置操作;检测该模型是否为最后一个模型,在检测为最后一个模型时,判定基于预设范围模型的四叉树索引构建完成。6.根据权利要求5所述的方法,其特征在于,执行与拓扑关系为相交时所对应的节点设置操作的步骤包括:检测该模型的渲染等级是否为高...
【专利技术属性】
技术研发人员:姚春雨,彭桂辉,
申请(专利权)人:中煤航测遥感集团有限公司,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。