intitle:律师网站建设的重要性,wordpress attitude,wordpress新增用户字段,扬中网站建设门户报价本以为编译cesium-terrian-tools编译应该没那么难#xff0c;不想问题重重#xff0c;不想后人重蹈覆辙#xff0c;也记录下点点滴滴。
目前网上存在的cesium代码版本主要有两个分支#xff1a; 原始网站【不能生成layer文件#xff0c;且经久不更新#xff0c;使用gdal…本以为编译cesium-terrian-tools编译应该没那么难不想问题重重不想后人重蹈覆辙也记录下点点滴滴。
目前网上存在的cesium代码版本主要有两个分支 原始网站【不能生成layer文件且经久不更新使用gdal2版本】https://github.com/geo-data/cesium-terrain-builderdocker分支版本 【可以生成layer文件gzip需要单独设置修改gdal版本和原网站要求不同】 ahuarte47/cesium-terrain-builder at master-quantized-mesh (github.com)
编译geo-data版本
链接编译无法link GDALCreateOverviewDatasetgdal版本不对可以暂行注释掉应该是个扩展功能可以不管 //poSrcOvrDS GDALCreateOverviewDataset( poSrcDS, iOvr, FALSE);poSrcOvrDS nullptr;// GDALCreateOverviewDataset(poSrcDS, iOvr, FALSE, FALSE);}ahuarte47 版本 git clone 后记得要切换到最新代码默认没有切换到最新代码【坑】 gdal 307 或gdal204 使用时可能出现部分重载函数声明不一致需要改ctb源码即可解决 网上其他设置 中文支持 GDALAllRegister后添加CPLSetConfigOption(“GDAL_FILENAME_IS_UTF8”, “NO”); cesium 发布地形默认需要关闭gzip才可以被cesium加载 发布命令 生成瓦片(本源码修改了默认不输出gzip格式参考网上https://zhuanlan.zhihu.com/p/60908864) ctb-tile.exe --output-dir H:/ctb_output H:/shenzhen_dem/L15/shenzhen_dem.tif -f Mesh 生成layer ctb-tile.exe --gzip --output-dir H:/ctb_output H:/shenzhen_dem/L15/shenzhen_dem.tif -f Mesh -l上图为证
Cesium-1.106版本加载terrian cesium测试代码
!DOCTYPE html
html langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestylehtml,body,#cesiumContainer {width: 100%;height: 100%;margin: 0;padding: 0;overflow: hidden;}/style!-- Include the CesiumJS JavaScript and CSS files --script src../Build/CesiumUnminified/Cesium.js/scriptstyleimport url(../Build/CesiumUnminified/Widgets/widgets.css);html,body,#cesiumContainer {width: 100%;height: 100%;margin: 0;padding: 0;overflow: hidden;}/style
/headbodydiv idcesiumContainer/divscriptCesium.Ion.defaultAccessToken eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI0NzkzYjFkNi1mODZhLTRkNjAtYWE1YS1jYzE5NzBjNjhkNjciLCJpZCI6MTQyMjI1LCJpYXQiOjE2ODYyMzUxODl9.l8y5SN0ALIwPZh9eM8Al14DBpfMjHdeG7uqb69tH6nU;!-- const viewer new Cesium.Viewer(cesiumContainer); --const viewer new Cesium.Viewer(cesiumContainer, {terrainProvider: new Cesium.EllipsoidTerrainProvider({}),//移除自带地形baseLayerPicker:false,homeButton:false,infoBox:false,timeline:false,navigationHelpButton:false,geocoder:false,sceneModePicker:false,animation:false,fullscreenButton:false});//viewer.imageryLayers.removeAll();var terrainProvider new Cesium.CesiumTerrainProvider({url: ./ctb_shenzhen_nogzip/});viewer.scene.terrainProvider terrainProvider;viewer.camera.flyTo({//destination: Cesium.Cartesian3.fromDegrees(121.8040466308, 29.9597, 2500)// 深圳destination: Cesium.Cartesian3.fromDegrees(114.1040466308, 22.5, 2500)}); /script
/body/html
## 参考[基于Docker使用CTB生成地形切片并加载 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com)](https://www.cnblogs.com/jiujiubashiyi/p/17104115.html)非压缩[Cesium地形切片--CTB(cesium-terrain-builder)填坑指南 - 知乎 (zhihu.com)](