本发明涉及三维地图领域,具体而言,涉及一种三维地图生成方法、装置、电子设备及可读存储介质。
背景技术:
1、随着地理信息技术的快速发展,三维可视化与地理信息系统(gis)紧密关联起来,其中,地理空间数据就是三维场景可视化的基石,例如geojson作为一种轻量级且易于解析的地理空间数据交换格式,已经成为连接二维地理信息与三维可视化世界的重要桥梁。
2、现有技术中,三维场景构建依赖于三维建模人员通过专业建模软件进行手动建模并对地理空间数据进行处理,从而得到立体的三维效果,然而,人为进行复杂的手动建模和繁琐的数据处理,不仅耗时耗力,而且难以保证模型的一致性和精度。
技术实现思路
1、本发明的目的在于提供一种三维地图生成方法、装置、电子设备及可读存储介质,以改善现有技术存在的问题。
2、本发明的实施例可以这样实现:
3、第一方面,本发明提供一种三维地图生成方法,应用于电子设备,包括:
4、获取目标区域的地理空间数据,所述地理空间数据包括m个特征图层数据,所述特征图层数据对应所述目标区域中的地理实体;
5、对每个所述特征图层数据进行坐标转换处理以及三维建模处理,得到每个所述特征图层数据对应的三维模型块;
6、对每个所述三维模型块进行模型细化处理后进行纹理贴图,得到m个三维模型纹理块;
7、将所述m个三维模型纹理块进行拼接,得到所述目标区域的纹理三维模型,并基于所述纹理三维模型渲染出所述目标区域的三维地图。
8、在可选的实施方式中,所述对每个所述特征图层数据进行坐标转换处理以及三维建模处理,得到每个所述特征图层数据对应的三维模型块的步骤,包括:
9、启动主线程,所述主线程按照设定数据容量分别对每个所述特征图层数据进行多次分割,得到全部所述特征图层数据对应的若干子数据,并在每次分割出一个所述子数据时基于预设命名规则设置所述子数据的文件名称前缀;
10、开启k个子线程,所述主线程将全部子数据平均分配给每个所述子线程;
11、所述子线程将分配到的每个所述子数据中的坐标数据从大地坐标系转换至笛卡尔坐标系;
12、所述子线程从每个坐标转换后的子数据中提取几何数据并基于所述几何数据进行三维建模,得到分配到的每个所述子数据对应的子三维模型块,并将各个所述子数据的文件名称前缀分别作为对应的各个子三维模型块的文件名称前缀;
13、所述主线程接收每个所述子线程返回的多个子三维模型块;
14、所述主线程基于每个所述子三维模型块的文件名称前缀,查找出每个所述特征图层数据对应的所有子三维模型块,并分别将每个所述特征图层数据对应的所有子三维模型块进行拼接,得到每个所述特征图层数据对应的三维模型块。
15、在可选的实施方式中,所述主线程在每次分割出一个所述子数据时基于预设命名规则设置所述子数据的文件名称前缀的步骤,包括:
16、所述主线程在每次分割出一个所述子数据时,确定所述子数据的分割编号;
17、所述主线程从所述特征图层数据中获取对应的地理实体的实体标识;
18、所述主线程基于所述分割编号以及所述实体标识,设置所述子数据的文件名称前缀。
19、在可选的实施方式中,所述三维模型块包括若干三角面,每个所述三角面均对应三个顶点;
20、所述对每个所述三维模型块进行模型细化处理后进行纹理贴图,得到m个三维模型纹理块的步骤,包括:
21、针对每个所述三维模型块,将所述三维模型块中每对相连顶点的中点均作为待定顶点;
22、基于各个所述待定顶点的相邻顶点,分别拟合出各个所述待定顶点对应的新增顶点的坐标;
23、将每个所述新增顶点融入所述三维模型块,得到细化后的三维模型块;
24、基于对应的特征图层数据的预设纹理图像,对所述细化后的三维模型块进行纹理贴图,得到所述三维模型纹理块。
25、在可选的实施方式中,所述三维地图包括多个地图块,所述方法还包括:
26、响应于用户的交互操作,对所述三维地图进行显示处理;所述交互操作为旋转操作、放大操作以及缩小操作中的一个;
27、或者,响应于用户针对所述三维地图中任一目标地图块的选中操作,在所述三维地图中凸出高亮显示所述目标地图块。
28、在可选的实施方式中,所述三维地图包括所述目标区域中m个子区域对应的地图块,一个所述地图块代表一个所述特征图层数据对应的地理实体;所述方法还包括:
29、响应于用户的人口数据查看操作,获取所述目标区域中各个子区域的人口数据;
30、将所述目标区域中各个子区域的名称和人口数据作为数据标签,分别叠加显示于所述三维地图中的各个地图块上;或者,确定各个子区域内的设定经纬度分别在所述三维地图中对应的对照地图位置,在每个地图块的对照地图位置处按照对应的人口数据显示立体柱,所述立体柱垂直于所述三维地图的水平面且所述立体柱的高度代表所述人口数据的大小。
31、在可选的实施方式中,所述方法还包括:
32、响应于用户的旅游数据查看操作,显示查询条件弹窗;
33、获取用户在所述查询条件弹窗输入并提交的查询时段和待查询景区等级;
34、获得所述目标区域中景区等级与所述待查询景区等级相同的多个待查询旅游景区的经纬度以及在所述查询时段的接待数据;
35、基于各个所述待查询旅游景区的经纬度分别确定各个所述待查询旅游景区在所述三维地图中的景区地图位置;
36、在每个所述景区地图位置处按照对应的接待数据显示立体柱,所述立体柱垂直于所述三维地图的水平面且所述立体柱的高度代表所述接待数据的大小。
37、第二方面,本发明提供一种三维地图生成装置,应用于电子设备,所述装置包括:
38、数据获取模块,用于获取目标区域的地理空间数据,所述地理空间数据包括m个特征图层数据,所述特征图层数据对应所述目标区域中的地理实体;
39、转换建模模块,用于对每个所述特征图层数据进行坐标转换处理以及三维建模处理,得到每个所述特征图层数据对应的三维模型块;
40、贴图模块,用于对每个所述三维模型块进行模型细化处理后进行纹理贴图,得到m个三维模型纹理块;
41、拼接渲染模块,用于将所述m个三维模型纹理块进行拼接,得到所述目标区域的纹理三维模型,并基于所述纹理三维模型渲染出所述目标区域的三维地图。
42、第三方面,本发明提供一种电子设备,包括:存储器和处理器,所述存储器存储有软件程序,当所述电子设备运行时所述处理器执行所述软件程序以实现如前述第一方面所述的三维地图生成方法。
43、第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前述第一方面所述的三维地图生成方法。
44、与现有技术相比,本发明实施例提供了一种三维地图生成方法、装置、电子设备及可读存储介质,首先获取目标区域的地理空间数据,该地理空间数据包括与目标区域的m个地理实体一一对应的m个特征图层数据;对每个特征图层数据进行坐标转换处理以及三维建模处理,得到每个特征图层数据对应的三维模型块;对每个三维模型块进行模型细化处理后进行纹理贴图,得到m个三维模型纹理块;将m个三维模型纹理块进行拼接,得到目标区域的纹理三维模型,并基于纹理三维模型渲染出目标区域的三维地图。本发明能够自动化地对地理空间数据进行处理,以生成目标区域的三维地图,避免了三维建模人员的人为操作,实现了快速地图生成。
1.一种三维地图生成方法,其特征在于,应用于电子设备,包括:
2.根据权利要求1所述的方法,其特征在于,所述对每个所述特征图层数据进行坐标转换处理以及三维建模处理,得到每个所述特征图层数据对应的三维模型块的步骤,包括:
3.根据权利要求2所述的方法,其特征在于,所述主线程在每次分割出一个所述子数据时基于预设命名规则设置所述子数据的文件名称前缀的步骤,包括:
4.根据权利要求1所述的方法,其特征在于,所述三维模型块包括若干三角面,每个所述三角面均对应三个顶点;
5.根据权利要求1所述的方法,其特征在于,所述三维地图包括多个地图块,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述三维地图包括所述目标区域中m个子区域对应的地图块,一个所述地图块代表一个所述特征图层数据对应的地理实体;所述方法还包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种三维地图生成装置,其特征在于,应用于电子设备,所述装置包括:
9.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器存储有软件程序,当所述电子设备运行时所述处理器执行所述软件程序以实现如权利要求1-7中任一项所述的三维地图生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的三维地图生成方法。
