Cesium专栏-坡度分析

781 阅读1分钟

关于坡度

在之前的关于空间分析之地形等高线分析一文中,我们介绍了如何使用Material接口来绘制等高线。在这篇文章中,我们还是使用Material接口,来绘制地形坡度图,在下一篇中,我们介绍如何绘制坡向图。坡度分析、坡向分析以及等高线分析都属于常见的地形分析。

空间分析之地形等高线分析 链接:xiaozhuanlan.com/topic/34098…
空间分析之地形坡向分析 链接:xiaozhuanlan.com/topic/26837…

效果图

具体做法

原理:修改Globe的Material属性,适应于全球的

具体步骤

1、并初始化地球,调用全球地形服务

Cesium.Ion.defaultAccessToken = 'xxxx';
var viewer = new Cesium.Viewer('cesiumContainer', {
    imageryProvider: new Cesium.UrlTemplateImageryProvider({
        url: 'http://www.google.cn/maps/vt?lyrs=s@716&x={x}&y={y}&z={z}'
    }),
    terrainProvider: Cesium.createWorldTerrain({
        requestVertexNormals: true,
        requestWaterMask: true
    })
});

2、开启深度测试

viewer.scene.globe.enableLighting = true;

3、创建具备等坡度样式的Material

var material = Cesium.Material.fromType('SlopeRamp');
var shadingUniforms = material.uniforms;
shadingUniforms.image = getColorRamp();

4、赋值给globe

viewer.scene.globe.material = material;

进一步

可以思考一下,同时加载等高线和坡度这两种效果。

效果图

link==>