大赵传奇

援引事类,扬搉古今,举要删芜,言辩而理切--QQ276605216

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

 

地形数据是什么?拿DEM数据来说,DEM数据就是数字高程模型,就是描述每个点位的高程数据而已,没有其他附加信息,更不会包含影像图,单独展示是看不出什么名堂的。DEM数据在ArcGIS中打开只能看到是灰度图

 

 地形下载的地方很多了,各个工具,网盘。。

其次,如何展示呢?地形数据需要结合影像图或者普通瓦片来展示才能看到地球表面的高低起伏状态;结合影像图展示效果最佳
只能是影像+地形

 

 

下载tif 转 terrain 的工具

链接:https://pan.baidu.com/s/1V9icqEQN5vXxfkDGRwNuNA
提取码:1qpj

电脑安装过arcgis 10.2.2, 注意这些是32位的,windows7 32吧。

它会在C盘生成一个python的文件夹,再安装Python一次,2.7.11版本

 

 按步骤执行,其中这里要选another location

 这里安装选择的是目录注意一定是site-packages

 

 然后还要创建gdal文件夹,复制

 

 

 

设置环境变量:

GDAL_DATA

 C:\Program Files (x86)\GDAL\gdal-data

Path加上 C:\Python27\ArcGIS10.2;C:\Program Files (x86)\GDAL

验证一下:

 

 

调整T7的py代码 2592行:

 

 执行

 

 覆盖tiles结果

发布为地形服务IIS里

 

 

 然后开始cesium了。下载最新版本的,

 

 

 解压是这样的:

 

 只要把我们的写的html 代码放到apps里就可以,把切好的terrain切片也放到这里,如terrain_tiles文件夹:

 

 然后helloworld:

<!DOCTYPE html>
<head>
  <title>Hello World!</title>
  <script src="../Build/Cesium/Cesium.js"></script>
  <style>
      @import url(../Build/Cesium/Widgets/widgets.css);
      html, body, #cesiumContainer {
          width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
      }
  </style>
</head>
<body>
  <div id="cesiumContainer"></div>
  <script>

    var terrainProvider = new Cesium.CesiumTerrainProvider({ url: "http://localhost:8087/apps/terrain_tiles" });
    var viewer = new Cesium.Viewer("cesiumContainer", { 
      animation:false,       //是否显示动画控件
        homeButton:true,       //是否显示home键
        //geocoder:false,         //是否显示地名查找控件        如果设置为true,则无法查询
        baseLayerPicker:false, //是否显示图层选择控件
        timeline:false,        //是否显示时间线控件
        fullscreenButton:true, //是否全屏显示
        scene3DOnly:true,     //如果设置为true,则所有几何图形以3D模式绘制以节约GPU资源
        infoBox:true,         //是否显示点击要素之后显示的信息
        sceneModePicker:false,  //是否显示投影方式控件  三维/二维
        navigationInstructionsInitiallyVisible:false,
        navigationHelpButton:false,     //是否显示帮助信息控件
        selectionIndicator:false        //是否显示指示器组件

    });

    viewer.terrainProvider = terrainProvider;
    viewer._cesiumWidget._creditContainer.style.display="none";
  </script>
</body>
</html>

 

然后这些错误怎么搞?有哪位大神指点一下

 

 

posted on 2020-05-01 07:59  赵长青  阅读(621)  评论(0编辑  收藏  举报