# cesiumsample **Repository Path**: huanjie/cesiumsample ## Basic Information - **Project Name**: cesiumsample - **Description**: Cesium 示例 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2017-04-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #cesiumsample ### 调试纪要 #### 地形在高精度时显示断层或陡坡的问题 1. 原因: Heightmap这种地形采用UInt16来存储每个点的高程,本身精度就不高。Cesium在前台解析数据、甚至在插值生成高精度数据时都采用UInt16存储,所以会丢失大量的精度。这会导致地形断层以及陡坡的出现。 2. 解决方案: a. 修改CTB(地形生成工具),采用Float32来存储数据。同时也修改Cesium端对地形数据的解析方式。这种方式会增加生成的.terrain文件的大小并增加网络数据传输量。 b. 只修改Cesium端的地形解析方式,采用Float32来存储数据,但是这样有一个缺陷就是会产生一次数据的转换(UInt16->Float32),增加前端压力。 c. 采用quantized-mesh这种高精度的地形数据格式。 3. 优缺点: 方案a:可以生成高精度的地形数据(依赖原数据),并且在加载显示时精度也会高,并且可以解决断层和陡坡的问题。但是同时修改前后端代码,工作量稍大。 方案b:只可以解决断层和陡坡的问题,工作量稍小。 方案c:暂不考虑。