• (二)城市三维基础展示方案


    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/

    1. 数据准备

    所需基础数据与之前讨论过的方案1一致,需要提供政边界、水系、建筑物(必须带楼层属性)、道路、绿地等图层数据。针对三维模型,支持精模和灰模方案。

    2. 展示方案特色

    该方案将重点突出行政区内数据,并通过一系列优化,让深色星河融入场景,场景内各要素自然类流动,配合动态变化的图表仪盘,更添科技酷炫感。

    3. 具体展示描述

    3.1突出行政立体边界

    将外框行政边界处理成json格式,按照立体光晕效果绘制在球体上。

     

    3.2三维球体透明

    球体最大的好处是对全球尺度,或者大范围面积的展示。但是项目往往只是一个相对小的区域,用球体展示方案不可避免的需要加载使用很多范围外的数据,必然需要使用到互联网环境,这限制了项目的环境兼容性。

    当把球体透明后,所需展示数据则只需要本区域内的数据,并且让该区域呈现出一种悬空的特效,配合深色的星空盒子,符合目前的展示科技风。

    3.3限制三维球体缩放范围

    当三维球透明后,大范围中已经没有数据,此时再让三维球任意缩放是不合理的,并且容易出现缩放太小后找不到数据所在的问题。这里,还需要限制三维球的缩放范围,使其缩放范围刚好在数据范围内。

    3.4外边界延伸配图

    但是如果仅仅只有行政范围内的一些数据,在行政范围较小时,投放到大屏幕上容易出现中间外框空洞感。尤其目前透明球体后,有如星空下一个小岛。所以三维配图方案也要做出改变,及外边界延伸配图。将范围外的一些路网、大区域行政边界进行弱化配图。

     

    3.5地图底图调度优化及缓存

    默认的三维场景中,模型加载的顺序是先于地图底图瓦片的加载顺序的,这会导致,当模型加载完后底图再请求加载,给人一种场景卡顿的感觉。

    这里我们需要做两个优化:

    1. 调整地图底图和模型的加载顺序,让底图优先加载,模型再依次叠加。使用户首先就能看到场景全貌后,再陆续通过模型增加来丰富细节。
    2. 让底图瓦片走nginx转发,在nginx中增加瓦片缓存机制。一次在线请求缓存后,地图第二次加载将会迅速不少。

    3.6增加粒子特效

    在场景中增加一些缓慢、动态的向星空上升的粒子,以表示整个城市的信息流动向。

     

    4. 整体展示效果

    在该场景中增加迁徙图效果、定位图标、热力后的整体展示如下:

     

                       -----欢迎转载,但保留版权,请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/

                                                                  如果您觉得本文确实帮助了您,可以微信扫一扫,进行小额的打赏和鼓励,谢谢 ^_^

                                   

  • 相关阅读:
    全--教程API, gem 'rest-client'(用于发简单请求); 请求测试;
    GoRails教程自建Rails 的 API; gem 'jbuilder'简单用法;使用JWT进行验证(git上的实做);curl命令使用;status状态码;JWT文档翻译摘录;
    go Rails 知识点,Concepts Series:url和parameter; 建立Rails App Templates;报错页面debug; counter_cache
    FontAwesome::Sass(5.x版)使用帮助。
    问题记录:
    slim(4621✨)
    物联网平台开发及应用:基于CC2530和ZigBee
    CATIA V5-6 R2017基础、进阶、高手一本通
    计算机组装与维护标准教程(2015—2018版)
    Web程序设计——ASP.NET(第2版)
  • 原文地址:https://www.cnblogs.com/naaoveGIS/p/11164062.html
Copyright © 2020-2023  润新知