在设置发布的体元栅格缓存颜色时,创建色表并插入了色值,但一直显示为红色(代码和结果图如下),请问如何在web开发中创建类似桌面端完整颜色表;
insert(value, color),请问插入颜色中这个value的解释是高度值,感觉有点抽象,请问有啥具体的解释不????
function setHypsometric(hyp, layer) {
//var hyp = new Cesium.HypsometricSetting();
var minValue = layer.dataMinValue;
console.log("minValue:", minValue);//控制台输出信息
var maxValue = layer.dataMaxValue;
console.log("maxValue:", maxValue);
hyp.DisplayMode = Cesium.HypsometricSettingEnum.DisplayMode.FACE;//HypsometricSettingEnum分层设色枚举类,DisplayMode显示模式
hyp.lineColor = new Cesium.Color(1.0, 0.0, 0.0, 1.0);//设置等值线的颜色
hyp.LineInterval = 100.0;//设置等值线的间隔
hyp.MaxVisibleValue = layer.dataMaxValue;//MaxVisibleValue设置最大可见值
hyp.MinVisibleValue = layer.dataMinValue;
hyp.ColorTableMinKey = minValue;//获取颜色表达的最小key值
hyp.ColorTableMaxKey = maxValue;
var colorTable = new Cesium.ColorTable();
//insert(value, color),颜色表插入新的项,value为高度值
colorTable.insert(0.0, new Cesium.Color(201 / 255, 23 / 255, 30 / 255));
colorTable.insert(0.1, new Cesium.Color(231 / 255, 50 / 255, 15 / 255));
colorTable.insert(0.2, new Cesium.Color(238 / 255, 118 / 255, 0 / 255));
colorTable.insert(0.3, new Cesium.Color(255 / 255, 214 / 255, 0 / 255));
colorTable.insert(0.4, new Cesium.Color(246 / 255, 236 / 255, 0 / 255));
colorTable.insert(0.5, new Cesium.Color(157 / 255, 200 / 255, 22 / 255));
colorTable.insert(0.7, new Cesium.Color(104 / 255, 185 / 255, 61 / 255));
colorTable.insert(0.9, new Cesium.Color(18 / 255, 110 / 255, 183 / 255));
colorTable.insert(1.0, new Cesium.Color(0 / 255, 64 / 255, 152 / 255));
hyp.ColorTable = colorTable;
//hypsometricSetting分层设色类,该类主要用于制定三维模型渲染显示方案,通过一定的颜色变化次序或色调深浅来表达和区别三维数据的不同属性。
layer.hypsometricSetting = {
hypsometricSetting: hyp,
analysisMode: Cesium.HypsometricSettingEnum.AnalysisRegionMode.ARM_ALL//AnalysisRegionMode分析范围模式,ARM_ALL分析全部
}
};