CN115496847A - 一种建筑信息三维场景渲染定位方法、系统及介质 - Google Patents
一种建筑信息三维场景渲染定位方法、系统及介质 Download PDFInfo
- Publication number
- CN115496847A CN115496847A CN202211137349.0A CN202211137349A CN115496847A CN 115496847 A CN115496847 A CN 115496847A CN 202211137349 A CN202211137349 A CN 202211137349A CN 115496847 A CN115496847 A CN 115496847A
- Authority
- CN
- China
- Prior art keywords
- scene
- dimensional
- model
- building
- positioning
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000000007 visual effect Effects 0.000 claims abstract description 41
- 238000013079 data visualisation Methods 0.000 claims abstract description 40
- 230000004927 fusion Effects 0.000 claims abstract description 17
- 238000012800 visualization Methods 0.000 claims description 48
- 239000011159 matrix material Substances 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 4
- 238000013519 translation Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000009313 farming Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
-
- 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/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Instructional Devices (AREA)
Abstract
本发明涉及建筑物信息管理技术,具体为建筑信息三维场景渲染定位方法、系统及介质,其方法包括:通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;将三维可视化模型场景与地图场景渲染到同一个画布中;将两个场景的相机位置和角度进行同步;获取定位点信息,包括经纬度及高度,根据建筑物所在地坐标对建筑物三维模型进行精确定位;将建筑物模型加载到定位点,通过两个场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;渲染地图场景的自定义图层,得到建筑物的三维可视化模型场景。本发明能够解决现有管理系统中场景融合使用时加载多个三维模型时耗费大量算力的问题。
Description
技术领域
本发明涉及建筑物的信息管理技术,具体为一种建筑信息三维场景渲染定位方法、系统及存储介质。
背景技术
在乡村社区的建筑信息三维场景中,主要包括农房及其周围的耕地。在传统农房信息管理中,通常以二维或图表进行数据展示,缺乏农房三维空间实体与属性信息关联,在地理位置上以简单图纸或四至(房宅或耕地等四周的界限)进行表示,在农房建设、旧房改善与管理中存在争议多、时效性差等问题。
近年来,三维场景技术融合在城市信息管理中得到了广泛应用,对传统农房信息管理提供了更直观便捷的渠道。在实际应用中,三维模型提供微观领域的数据基础,地理信息系统(GIS)提供模型周边地理环境等空间参考信息。GIS通过对地球表层空间中的地理数据进行采集、管理、分析和显示。在网页渲染中,三维模型以glTF、3dtiles、obj、fbx等格式存储显示微观领域的实体信息。通过GIS与三维模型的融合,将GIS从宏观领域引入微观领域,使微观领域的三维模型信息和宏观领域的GIS信息实现交互。目前针对三维模型的单独显示,通常采用threejs实现前端展示,针对GIS的二三维可视化通常采用如Mapbox前端轻量化展示框架。
虽然现有Mapbox技术针对threejs加载三维模型有较为简单的扩展支持,但并不能完全实现两种场景的融合,在农房综合信息场景的实际应用中主要存在以下问题:
1、每加载一个三维农房模型都需要创建一个threejs的场景、相机以及对应的渲染器,造成加载多个农房BIM模型时系统性能较差,耗费大量算力。
2、三维模型是基于空间直角坐标系中世界坐标和本地坐标确定位置的,而GIS网页中的地图是基于投影坐标系确定要素位置的,两者坐标系不一致,导致在多个乡村社区三维场景中切换时,农房模型的定位存在位置偏移、加载闪烁以及浮点型数据计算精度差等问题。
发明内容
为了克服现有技术所存在的缺陷,本发明实施例提供一种建筑信息三维场景渲染定位方法、系统及存储介质,将建筑信息三维场景中的所有模型要素都整合在一个用于绘制3D图像的场景库中,该场景库对三维场景模型中的每一帧均只渲染一次,提升了渲染性能;加载三维场景模型的数据时,动态偏移三维场景的世界坐标原点,将模型场景坐标与地图场景坐标进行转换及融合,实现建筑信息三维场景模型的精确定位;能够解决现有农房信息管理系统中地图场景与模型场景融合使用,加载多个三维场景模型时算力耗费大的技术问题。
一方面,本发明实施例提供一种建筑信息三维场景渲染定位方法,包括以下步骤:
通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;
将三维可视化模型场景与地理信息数据可视化工具的地图场景渲染到同一个画布中,使两个场景共用一个画布,让三维可视化模型场景获取到深度缓冲区数据;
将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性;
获取定位点信息,定位点信息包括经纬度及高度,建筑信息三维场景中根据建筑物所在地坐标对建筑物三维模型进行精确定位;
将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;
渲染地理信息数据可视化工具的地图场景的自定义图层,得到建筑物的三维可视化模型场景。
在优选的实施例中,通过地理信息数据可视化工具的自定义图层中创建三维可视化场景包括四层:
第一层为场景根节点,用于对子级对象统一管理;
第二层为场景灯光和用于对建筑物模型对象进行统一管理的对象组,所述对象组在所述地图场景中的投影坐标原点为(0,0,0),在三维可视化模型场景中的世界坐标原点设为当前地图的中心点位置坐标;
第三层为所述对象组下的三维模型对象图层,包括分层二进制三维模型图层和普通三维模型图层,每个图层下存储管理多个模型对象,对具体建筑物场景内的多个建筑物模型进行管理;
第四层为建筑物模型,该层级下的三维模型对象通过设置的建筑物所在地中心点经纬度坐标,进行建筑物模型的定位。
在优选的实施例中,将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,包括:
通过渲染函数的参数获取地理信息数据可视化工具的地图场景相机的投影矩阵;
计算获取三维可视化模型场景相机在三维可视化世界坐标中的定位以及视角角度,并且设置到三维可视化模型场景相机的世界矩阵;
通过三维可视化模型场景的原点位置、所述地图场景相机的投影矩阵以及三维可视化场景相机的世界矩阵,对三维可视化场景相机进行转换,计算得到三维可视化场景相机的投影矩阵。
在优选的实施例中,将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位,包括:
将经纬度坐标转为投影坐标;
从地图场景坐标系转为三维可视化模型场景坐标系;
三维可视化模型加载定位时相对父级的坐标进行偏移,使三维可视化模型在地理信息数据可视化工具的地图场景中以经纬度转换到三维可视化模型场景坐标系中的定位。
在优选的实施例中,所述地理信息数据可视化工具为Mapbox,三维可视化场景为threejs模型场景;建筑物模型为农房模型,建筑信息三维场景为农房综合信息场景,建筑物所在地为宅基地。
另一方面,本发明实施例提供一种建筑信息三维场景渲染定位系统,包括:
场景创建模块,用于通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;
画布渲染模块,用于将三维可视化模型场景与地理信息数据可视化工具的地图场景渲染到同一个画布中,使两个场景共用一个画布,让三维可视化模型场景获取到深度缓冲区数据;
同步模块,用于将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性;
定位模块,用于获取定位点信息,定位点信息包括经纬度及高度,建筑信息三维场景中根据建筑物所在地坐标对建筑物三维模型进行精确定位;
融合模块,用于将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;
场景渲染模块,用于渲染地理信息数据可视化工具的地图场景的自定义图层,得到建筑物的三维可视化模型场景。
再一方面,本发明实施例还提供一种计算机存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现上述建筑信息三维场景渲染定位方法。
与现有技术相比,本发明提出的建筑信息三维场景渲染定位方法、系统及存储介质,取得的有益效果包括:
1、本发明将乡村建筑信息三维场景中的所有模型要素都整合在一个用于绘制3D图像的场景库中,即threejs场景库中,该场景库对三维场景模型中的每一帧均只渲染一次,提升了渲染性能,降低了地图场景与模型场景融合使用以加载多个三维场景模型时,所耗费的算力。
2、本发明在加载乡村农房的三维场景模型的数据时,通过对三维模型场景的组织与坐标管理,动态偏移三维场景的世界坐标原点,将threejs模型场景坐标与Mapbox地图场景坐标转换融合,实现农房三维模型的精确定位。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中建筑信息三维场景渲染定位方法的流程图;
图2是本发明实施例中模型场景层级结构关系图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本发明,而不是限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将结合附图对实施例进行详细描述。
实施例1
如图1所示,本实施例提供一种建筑信息三维场景渲染定位方法,其中地理信息数据可视化工具以Mapbox为例,三维可视化场景以threejs模型场景为例,渲染定位方法具体包括以下步骤:
步骤S1、通过地理信息数据可视化工具Mapbox的自定义图层中创建三维可视化threejs模型场景,包括相机Camera、场景Scene、渲染器WebGLRenderer。
其中,所创建的threejs模型场景包括四层,分别如下:
第一层为场景Scene,作为场景根节点,用于对子级对象统一管理;
第二层为场景灯光Light和mapboxMercator对象组,其中mapboxMercator对象组用于对农房模型对象进行统一管理,mapboxMercator对象组在地图场景中的投影坐标原点为(0,0,0),在threejs模型场景中的世界坐标原点设为当前地图的中心点位置坐标(x,y,z)。具体实现方法是在threejs模型场景中,将mapboxMercator对象组定位到当前地图的中心点位置坐标(x,y,z)的负值,即(-x,-y,-z);
第三层为mapboxMercator对象组下的三维模型对象图层,包括分层二进制三维模型图层3dTilesLayer和普通三维模型图层objectLayer,每个图层下可存储管理多个模型对象,对具体乡村场景内多个农房模型进行管理;
第四层为农房模型,该层级下的三维模型对象通过设置的宅基地中心点经纬度坐标(lng,lat,height),即可进行农房模型定位。
如图2所示,每个模型对象下可包含多层子构件对象,以表示房屋模型内的构件如墙、楼板、桌椅、家电等,包括Group、Object3D、Mesh,其中Group和Object3D对象下可嵌套包含Group、Object3D、Mesh对象,对子构件对象设置模型场景局部坐标(xLocal,yLocal,zLocal),即为相对于房屋内部的定位,相应的世界坐标为(xLocal+xProj-x,yLocal+height-y,zLocal+yProj-z)。
步骤S2、将threejs模型场景与Mapbox地图场景渲染到同一个画布canvas中,使threejs模型场景与Mapbox地图场景这2个场景共用一个画布canvas,可以让threejs模型场景获取到深度缓冲区数据,渲染更真实的三维效果。
在优选的实施例中,在Mapbox图层渲染时,首先渲染除自定义图层外的内置图层。
步骤S3、将threejs模型场景和Mapbox地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性,包括地理坐标一致性、深度缓冲区一致性等。
本步骤将threejs模型场景和Mapbox地图场景的相机位置和角度进行同步,包括如下步骤:
S31、通过render渲染函数的参数获取Mapbox地图场景相机的投影矩阵。所述render方法为threejs模型场景常用的渲染函数,在此不赘述。
S32、计算获取threejs模型场景相机在threejs世界坐标中的定位以及视角角度,并且设置到threejs模型场景相机的matrixWorld矩阵(即世界矩阵)。
S33、通过threejs模型场景的原点位置、Mapbox地图场景相机的投影矩阵以及threejs场景相机的matrixWorld矩阵,对threejs场景相机进行转换,计算得到threejs场景相机的投影矩阵。
其中,对threejs场景相机的转换,具体如下:
S331、位置偏移,分别获取Mapbox地图场景的相机投影坐标mapboxCameraCoor,以及threejs模型场景的原点在Mapbox地图场景中的投影坐标threeOriginCoor,通过Mapbox地图场景的相机投影坐标mapboxCameraCoor减去投影坐标threeOriginCoor,得出Mapbox地图场景相机在threejs模型场景中的坐标,获得threejs场景相机的平移矩阵。
S332、角度旋转,在Mapbox地图场景相机与Mapbox地图呈垂直视角情况时,获取Mapbox场景相机在z轴上的旋转角度mapboxBearing;在Mapbox场景相机与Mapbox地图呈其他视角(除了垂直视角之外的其他视角)情况时,获取threejs模型场景相机指向当前屏幕中心点时在threejs模型场景中的旋转矩阵。实际就是计算Mapbox地图场景的相机矩阵,转换成threejs模型场景的世界坐标中的相机坐标。
S333、将threejs场景相机的平移矩阵和旋转矩阵相乘,得出threejs场景相机的变换矩阵,并赋值给threejs场景相机的世界矩阵matrixWorld和投影矩阵中,确保threejs场景相机与Mapbox地图场景相机的相机位置和角度一致。
步骤S4、获取定位点信息,定位点信息包括经纬度及高度,农房综合信息场景中根据宅基地坐标对农户的农房三维模型进行精确定位。
其中,高度包括地形高度和相对地形高度,由于具体的地形高度根据精度要求会有所波动,因而通过动态设置BIM模型的相对地形高度,保持BIM模型一直贴着地面。其中,地形高度通过动态获取加载到农房综合信息场景中的rgb地形栅格数据对应经纬度的像元值计算生成;相对地形高度通过农房属性进行调整,如地基高度,加载农房时通过偏移将地基置于地下。
步骤S5、将农房模型加载到定位点,通过Mapbox地图场景和threejs模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对农房模型的定位。
在一些优选实施例中,通过Mapbox地图场景和threejs模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对农房模型的定位,具体实现方法为:
步骤S51、将经纬度坐标转为投影坐标(xProj,yProj,height)。
步骤S52、从Mapbox地图场景坐标系(z轴朝上的右手坐标系)转为threejs模型场景坐标系(y轴朝上的右手坐标系)。在转换时要将坐标的y值和z值交换,即Mapbox地图场景中的z值height在threejs模型场景中应设为y轴的取值,Mapbox地图场景中的y值yProj在threejs模型场景中应设为z轴的取值,即在threejs模型场景的局部坐标为(xProj,height,yProj)。
步骤S53、threejs模型加载定位时相对父级的坐标(-x,-y,-z)进行偏移。以此使threejs模型在Mapbox地图场景中以经纬度转换到threejs模型场景坐标系中的定位,因此在threejs模型场景中的世界坐标为(xProj-x,height-y,yProj-z)。
步骤S6、根据上述步骤S2-S5的设置,渲染Mapbox地图场景的自定义图层,得到农房的threejs模型场景。
通过上述方法,threejs模型场景的每一帧只需要渲染一次。加载到threejs模型场景的三维农房模型都会通过坐标转换成为threejs模型场景的世界坐标,并添加到threejs模型场景中,不会创建新的场景进行渲染。其中,每一帧是指三维场景中的每一帧,也是Mapbox场景的每一帧,因为threejs模型场景属于Mapbox场景的一个自定义图层。
在一些优选的实施例中,在每帧渲染自定义图层,对threejs模型场景的世界坐标原点位置进行处理时,均结合当前地图的中心点位置、缩放级别以及时间差进行动态调整,以实现切换距离较远的多个乡村场景时保持精确定位。具体实现方法如下:
步骤S61、对中心点距离进行判断:移动视窗位置时中心点位置变化,计算变化前后的中心点位置的距离,当距离超过50000米时,坐标出现明显偏移,需要移动世界坐标原点。
步骤S62、对当前缩放级别进行判断:当地图缩放级别大于8,才对世界坐标原点进行移动,因为小比例尺下对模型位置精度要求低,在中比例尺或大比例尺下才进行移动计算,以此减少计算量。
步骤S63、对时间进行判断:记录上一次移动的时间,当前渲染时间距上一次渲染相差大于1秒时,才需要移动世界坐标原点,避免计算频繁,耗费算力。
步骤S64、当中心点距离、缩放级别以及时间差条件都满足时,将当前mapboxMercator对象组重新定位到当前地图的中心点位置,移动threejs模型场景的世界坐标原点位置,更新模型坐标,消除定位偏移。
实施例2
与实施例1基于相同的发明构思,本实施例提供一种建筑信息三维场景渲染定位系统,包括:
场景创建模块,用于实现实施例1的步骤S1,通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;
画布渲染模块,用于实现实施例1的步骤S2,将三维可视化模型场景与地理信息数据可视化工具的地图场景渲染到同一个画布中,使两个场景共用一个画布,让三维可视化模型场景获取到深度缓冲区数据;
同步模块,用于实现实施例1的步骤S3,将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性;
定位模块,用于实现实施例1的步骤S4,获取定位点信息,定位点信息包括经纬度及高度,建筑信息三维场景中根据建筑物所在地坐标对建筑物三维模型进行精确定位;
融合模块,用于实现实施例1的步骤S5,将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;
场景渲染模块,用于实现实施例1的步骤S6,渲染地理信息数据可视化工具的地图场景的自定义图层,得到建筑物的三维可视化模型场景。
在实施例1中已对步骤S1-S6进行了详细的描述,为了使说明书的描述简洁,本实施例不再对上述各模块所实现的具体功能做详细描述,请参见实施例1。
本实施例还提供一种计算机存储介质,存储有计算机程序,当计算机程序被处理器执行时,实现实施例1所述的建筑信息三维场景渲染定位方法的步骤S1-S6,详见实施例1所具体描述的内容。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本公开的实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种建筑信息三维场景渲染定位方法,其特征在于,包括如下步骤:
通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;
将三维可视化模型场景与地理信息数据可视化工具的地图场景渲染到同一个画布中,使两个场景共用一个画布,让三维可视化模型场景获取到深度缓冲区数据;
将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性;
获取定位点信息,定位点信息包括经纬度及高度,建筑信息三维场景中根据建筑物所在地坐标对建筑物三维模型进行精确定位;
将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;
渲染地理信息数据可视化工具的地图场景的自定义图层,得到建筑物的三维可视化模型场景。
2.根据权利要求1所述的建筑信息三维场景渲染定位方法,其特征在于,通过地理信息数据可视化工具的自定义图层中创建三维可视化场景,包括相机、场景和渲染器。
3.根据权利要求1所述的建筑信息三维场景渲染定位方法,其特征在于,通过地理信息数据可视化工具的自定义图层中创建三维可视化场景包括四层:
第一层为场景根节点,用于对子级对象统一管理;
第二层为场景灯光和用于对建筑物模型对象进行统一管理的对象组,所述对象组在所述地图场景中的投影坐标原点为(0,0,0),在三维可视化模型场景中的世界坐标原点设为当前地图的中心点位置坐标;
第三层为所述对象组下的三维模型对象图层,包括分层二进制三维模型图层和普通三维模型图层,每个图层下存储管理多个模型对象,对具体建筑物场景内的多个建筑物模型进行管理;
第四层为建筑物模型,该层级下的三维模型对象通过设置的建筑物所在地中心点经纬度坐标,进行建筑物模型的定位。
4.根据权利要求1所述的建筑信息三维场景渲染定位方法,其特征在于,将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,包括:
通过渲染函数的参数获取地理信息数据可视化工具的地图场景相机的投影矩阵;
计算获取三维可视化模型场景相机在三维可视化世界坐标中的定位以及视角角度,并且设置到三维可视化模型场景相机的世界矩阵;
通过三维可视化模型场景的原点位置、所述地图场景相机的投影矩阵以及三维可视化场景相机的世界矩阵,对三维可视化场景相机进行转换,计算得到三维可视化场景相机的投影矩阵。
5.根据权利要求4所述的建筑信息三维场景渲染定位方法,其特征在于,对三维可视化场景相机进行转换,包括:
位置偏移,分别获取地图场景的相机投影坐标,以及三维可视化模型场景的原点在地图场景中的投影坐标,通过地图场景的相机投影坐标减去所述投影坐标,得出地图场景相机在三维可视化模型场景中的坐标,获得三维可视化场景相机的平移矩阵;
角度旋转,在地图场景相机与地理信息数据可视化工具的地图呈垂直视角情况时,获取场景相机在z轴上的旋转角度;在场景相机与地理信息数据可视化工具的地图呈除了垂直视角之外的其他视角的情况时,获取三维可视化模型场景相机指向当前屏幕中心点时在三维可视化模型场景中的旋转矩阵;
S333、将三维可视化场景相机的平移矩阵和旋转矩阵相乘,得出三维可视化场景相机的变换矩阵,并赋值给三维可视化场景相机的世界矩阵和投影矩阵中,确保三维可视化场景相机与地图场景相机的相机位置和角度一致。
6.根据权利要求1所述的建筑信息三维场景渲染定位方法,其特征在于,定位点信息中,高度包括地形高度和相对地形高度;其中,地形高度通过动态获取加载到建筑信息三维场景中的地形栅格数据对应经纬度的像元值计算生成;相对地形高度通过建筑物属性进行调整。
7.根据权利要求1所述的建筑信息三维场景渲染定位方法,其特征在于,将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位,包括:
将经纬度坐标转为投影坐标;
从地图场景坐标系转为三维可视化模型场景坐标系;
三维可视化模型加载定位时相对父级的坐标进行偏移,使三维可视化模型在地理信息数据可视化工具的地图场景中以经纬度转换到三维可视化模型场景坐标系中的定位。
8.根据权利要求1-7中任一项所述的建筑信息三维场景渲染定位方法,其特征在于,所述地理信息数据可视化工具为Mapbox,三维可视化场景为threejs模型场景;建筑物模型为农房模型,建筑信息三维场景为农房综合信息场景,建筑物所在地为宅基地。
9.一种建筑信息三维场景渲染定位系统,其特征在于,包括:
场景创建模块,用于通过地理信息数据可视化工具的自定义图层中创建三维可视化场景;
画布渲染模块,用于将三维可视化模型场景与地理信息数据可视化工具的地图场景渲染到同一个画布中,使两个场景共用一个画布,让三维可视化模型场景获取到深度缓冲区数据;
同步模块,用于将三维可视化模型场景和地理信息数据可视化工具的地图场景的相机位置和角度进行同步,使两个场景所展示内容具有一致性;
定位模块,用于获取定位点信息,定位点信息包括经纬度及高度,建筑信息三维场景中根据建筑物所在地坐标对建筑物三维模型进行精确定位;
融合模块,用于将建筑物模型加载到定位点,通过地理信息数据可视化工具的地图场景和三维可视化模型场景的融合,对定位点的经纬度和高度坐标进行转换,实现对建筑物模型的定位;
场景渲染模块,用于渲染地理信息数据可视化工具的地图场景的自定义图层,得到建筑物的三维可视化模型场景。
10.一种计算机存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1-8中任意一项所述的建筑信息三维场景渲染定位方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211137349.0A CN115496847A (zh) | 2022-09-19 | 2022-09-19 | 一种建筑信息三维场景渲染定位方法、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211137349.0A CN115496847A (zh) | 2022-09-19 | 2022-09-19 | 一种建筑信息三维场景渲染定位方法、系统及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115496847A true CN115496847A (zh) | 2022-12-20 |
Family
ID=84470973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211137349.0A Pending CN115496847A (zh) | 2022-09-19 | 2022-09-19 | 一种建筑信息三维场景渲染定位方法、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115496847A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116823936A (zh) * | 2023-08-28 | 2023-09-29 | 智广海联(天津)大数据技术有限公司 | 一种利用相机屏幕标点获取经纬度的方法及系统 |
CN117036561A (zh) * | 2023-03-22 | 2023-11-10 | 北京凡米物联科技有限公司 | 一种基于数据驱动的gis/cad/三维三合一煤矿生产可视化场景混合渲染技术 |
CN117392315A (zh) * | 2023-10-13 | 2024-01-12 | 威创软件南京有限公司 | 一种基于分布式光伏出力动态绘制星光图的算法 |
-
2022
- 2022-09-19 CN CN202211137349.0A patent/CN115496847A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036561A (zh) * | 2023-03-22 | 2023-11-10 | 北京凡米物联科技有限公司 | 一种基于数据驱动的gis/cad/三维三合一煤矿生产可视化场景混合渲染技术 |
CN116823936A (zh) * | 2023-08-28 | 2023-09-29 | 智广海联(天津)大数据技术有限公司 | 一种利用相机屏幕标点获取经纬度的方法及系统 |
CN116823936B (zh) * | 2023-08-28 | 2023-11-24 | 智广海联(天津)大数据技术有限公司 | 一种利用相机屏幕标点获取经纬度的方法及系统 |
CN117392315A (zh) * | 2023-10-13 | 2024-01-12 | 威创软件南京有限公司 | 一种基于分布式光伏出力动态绘制星光图的算法 |
CN117392315B (zh) * | 2023-10-13 | 2024-07-05 | 威创软件南京有限公司 | 一种基于分布式光伏出力动态绘制星光图的算法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115496847A (zh) | 一种建筑信息三维场景渲染定位方法、系统及介质 | |
CN110807835B (zh) | 一种建筑物bim模型和实景三维模型的融合方法 | |
CN1669069B (zh) | 用于使物体的电子表示纹理化的系统 | |
KR102199940B1 (ko) | 3d 엔진을 통한 모바일 3d 디지털 트윈의 3d 지도 구축 방법 | |
KR101546703B1 (ko) | 대용량 건물 bim데이터의 시각화 시스템 | |
US20230074265A1 (en) | Virtual scenario generation method and apparatus, computer device and storage medium | |
Zhao | Application of 3D CAD in landscape architecture design and optimization of hierarchical details | |
KR101546705B1 (ko) | Bim데이터 처리단말 장치의 건물내부 bim데이터 가시화 방법 | |
KR101591427B1 (ko) | 3차원 지형 영상 가시화에서의 적응형 렌더링 방법 | |
CN106846251B (zh) | 基于建筑物房顶矢量的正射影像镶嵌线网络自动选择方法 | |
CN114399406B (zh) | 基于gis和bim的水利工程多用户协同管理系统和方法 | |
CN110660125B (zh) | 用于电力配网系统的三维建模装置 | |
CN114663324A (zh) | 一种bim模型与gis信息的融合显示方法及相关组件 | |
CN108230442A (zh) | 一种盾构隧道三维仿真方法 | |
CN106875330B (zh) | 一种平面模型转球面模型的方法 | |
CN111986320B (zh) | 一种面向智慧城市应用的dem与倾斜摄影模型空间贴合优化方法 | |
JP2021149063A (ja) | 地形図出力装置、地形図出力方法及びプログラム | |
Yuan et al. | Fully automatic DOM generation method based on optical flow field dense image matching | |
CN114996374B (zh) | 在线数据可视化实现方法、系统、设备及介质 | |
JP6893307B1 (ja) | 地形図出力装置、地形図出力方法及びプログラム | |
CN106875480B (zh) | 一种城市三维数据组织的方法 | |
CN114490907A (zh) | 名城管理数据库的构建方法、装置及存储介质 | |
Ragia et al. | Precise photorealistic visualization for restoration of historic buildings based on tacheometry data | |
CN117197364B (zh) | 区域建模方法、装置和存储介质 | |
CN118153350B (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 |