本教程通过在QGIS进行中本地上传和在线下载两种方式获得所需的地理数据(数据包括卫星地图、全国省市区json、水系),并通过规范操作,在QGIS中将所需数据转换为shp文件。导入shp文件至blender生成三维模型,并在PS中对卫星图等图片进行数据对齐以及样式的设计,作为blender中的材质贴图,最终将成品设计稿导入FVS中,完成地图组件的搭建配置,及数据和交互的闭合。
需要用到的工具有QGIS Blender PS
1.数据下载转换
下载JSON数据,要注意包含下级区域
文件下载地址:天地图 服务中心
QGIS下载地址:下载 ·QGIS 网站 将下载到的json数据导入QGIS处理为shp图层,导入json文件可能会发生字段转换失败,地图变扁,横向拉伸的情况,下文中附有解决方案。
1.1 JSON文件转shp文件
将JSON文件直接拖入QGIS中,左侧菜单栏就会出现相应的图层数据,点击图层右键-导出-要素另存为
选择ESRI形状的文件,对文件命名,命名后注意文件后缀是否为shp,点击OK即可导出
1.2 字段转换失败的解决办法
在导出的过程中可能会遇到字段转换失败的提示
解决办法如下
然后回到页面进行保存即可
1.3地图扁化拉伸处理方法(QGIS)
界面右下角,点击坐标系,找到投影一栏
找到Asian_Lambert_comformal_Conic投影复制文本框中的WEK部分
点击设置-自定义投影-添加自定义投影并命名,将复制的WKT部分粘贴到文本框中
删掉后面的部分,并在最后的逗号后加一个]符
将该部分的坐标改为如图所示的数字:0 110 47
改正完成后点击验证-出现次WET投影定义有效的图标时,点击OK
回到界面,点击右下角的投影坐标系更改部分,将坐标系改为设置好的自定义即可
前后对比,处理完成后导出要素即可
2.shp文件转三维模型
2.1 Shp文件导入blender
在blender中安装blenderGIS插件进行文件转换
BlenderGIS升级版.zip (801.74 K)
将shp文件进行导入,选择相应的坐标系,勾选上名称,可以识别到各个市级名称,并已经将各市级独立
但在导入后面积可能会很大,选中模型快捷键S进行缩放,左下角可以直接修改缩放倍数,缩放调节完成后记得把视图(快捷键N)调到合适的比例
也要将模型的坐标轴改到原点处,否则会导致导出后的模型坐标轴与模型距离太远
导入后可以看到地图的形状已经被转化成了一个面片,(如果模型导入后非常大,快捷键S进行缩放)。切换到编辑模式(快捷键Tab)可以看到内部是被分出了轮廓线的,如果需要将其分开,选中面(面模式快捷键3)将面进行分离(快捷键P),在上一步选择了导入名称就可以自动分离了
3.模型编辑
3.1 挤出体积
这一步是让平面的地面图变得立体化,编辑模式下全选所有面(快捷键A),挤出(快捷键E)E+Z,就得到了立体的地图块(沿着z轴进行挤出)
3.2 添加材质
~键切换前视图,并打开透显模式(快捷键Alt+Z)框选地图顶面部分
将选中的面在属性栏的材质面板中添加材质并命名,此时可以给顶面的材质选择一个颜色用于区分顶面和其他面(要添加2个材质,才能对顶面进行区分,一个面的话默认所有面都是这个材质的)
确认选中顶面的部分,选择相应材质球,点击指定
4.材质处理
4.1 贴图处理
将获取到的省份卫星地图导入到PS中,在顶部菜单栏中找到-图像-图像大小,将图像大小进行调整,勾选上小链条图标,就会使宽度和高度实现同比缩放,建议在保证清晰度的情况下,选择尽量小的分辨率
调节完成后,在图层中添加黑白,色相,亮度等图层,对当前图像颜色亮度进行调节
调节到满意的程度点击顶部菜单栏-文件-导出-快速导出为png
4.2 blender中给模型添加材质
4.2.1顶面地图编辑
点击地图顶面材质球-将导出的图片拖入着色器编辑器中,并连接材质节点。(可以看到,顶面已经出现了地图图片纹理)
来到uv编辑模式中,并将物体模式切换为编辑模式,视图切换为顶视图(快捷键7)
选中地图顶面材质-选择-打开UV与选区同步,(确认顶面部分都被选中了)
点击UV-选择从视角投影(界限),uv就和图片对应上了
注:如果是被分成不同的单独物体在编辑材质/ UV 时要将这些物体都选中再进行编辑
4.2.2侧面材质编辑
在前视图(快捷键1)编辑模式下框选侧面和底面(底面也可以删掉)指定侧面材质球
可以给一个纯色的材质,也可以配合PS做一个渐变的图片,就可以做一个渐变的材质(200*200的图片即可)
将这个图片连接到侧面的材质上,并且在前视图中,对侧面的面从视角投影,侧面就会有渐变的蓝色材质了
4.2.3地图行政区划的制作
在上图中,江苏省的各个部分都是连接在一起的,没有办法清楚的看到各个市的区分,所以要做一个各个市之间的行政界限
将顶面的面复制并分离出来(或者再导入一遍shp文件)
快捷键(/)可以将选中的物体进行独显,更方便操作,来到顶视图(~)编辑模式选中所有面,快捷键X删除-仅面,留下线框部分
点模式下全选所有顶点右键-合并-按距离,合并后快捷键(E+Z)向下挤出
打开面朝向,确认法线正反,全选面(快捷键A),(atl+n)重新计算外侧(蓝色为正面)
接着全选所有面,来到顶视图(alt+E)沿法向挤出面,可以直接输入数值进行调整
快捷键/解除物体的独显模式,回到场景中,可以看到行政界限轮廓就做好了,(S+Z可以缩放高度)
4.2.5装饰发光层制作
在地图表面可以增加一些装饰的发光部分,可以增加模型的丰富性
在PS顶部菜单栏中找到-选择-色彩范围,吸取图中黑色的部分,看到预览中出现一个轮廓图,点击确定
此时可以看到在图中出现了虚线部分,但是这里的虚线部分所包围的区域是图中黑色的部分,而不是地图部分,所以Ctrl+shift+I进行反选,反选后会发现在地图内有一些小范围没有被选取上,利用快速选择工具,将这一部分添加进来。(画笔缩小/放大快捷键[ ])
添加选区完成后添加新的图层,ctrl+del将(白色)创建为一个新的图层,Ctrl+shift+I反选添加新图层alt+del添加前景色(黑色),Ctrl+D取消选区,此时可以将地图卫星图的图层关掉了,就得到了白色地图部分和其他区域的黑色部分
按住Ctrl点击白色图层部分,获得选区,shift+F6羽化选区
delete删除,就会把白色图层的部分删除掉一些,加一个黑色图层底会更明显
将图片导出,在blender中单独复制出一个顶面,给一个新的材质,并打开发光,调节发光颜色,图片的颜色节点,要连接到Alpha节点上,并且将混合模式改为Alpha Blende,就可以获得透明图层效果了
结合PS对地图进行一定的处理,并利用blender进行材质表现,增加更多细节表现,如背景图层及UV动画效果等,可以叠加得到不错的效果。(以下为FVS中展示效果)
|