Skip to main content

自定义地图风格

THEngine 提供了底图滤镜调节,可以自定义地图风格,方便做大屏项目的地图效果。可以使用天地图的电子地图或者高德电子地图来设置滤镜效果,电子图层的滤镜效果比较好。

一、调用案例

//天地图电子地图
const layerCollection = new THEngine.layer.LayerCollection(viewer);
layerCollection.add({
type: "tdtTileVector",
tk: "a1e8bdfa8c99b4dfa9d8168f30f1b25f",
filter: [40 / 255, 100 / 255, 200 / 255, 1.0], //传入rgba颜色参数,直接修改shader中的颜色
brightness: 0.8, //亮度
contrast: 1.2, //对比度
gamma: 0.3, //伽马
hue: 1, //色调
saturation: 1.0,//饱和度
});
//高德电子地图
layerCollection.add({
type: "gdTileVector",
crs: "WGS84",
filter: [40 / 255, 100 / 255, 200 / 255, 1.0],//传入rgba颜色参数,直接修改shader中的颜色
brightness: 0.8,//亮度
contrast: 1.2, //对比度
gamma: 0.3, //伽马
hue: 1, //色调
saturation: 1.0,//饱和度
});

二、参数说明

参数名类型描述示例值
typeString图层类型,例如gdTileVector 高德地图电子地图"gdTileVector"
filterArray传入 RGBA 颜色参数,用于直接修改着色器(shader)中的颜色。数组内的值分别对应红(R)、绿(G)、蓝(B)、透明度(A),取值范围是 0 到 1。[40 / 255, 100 / 255, 200 / 255, 1.0]
brightnessNumber图层的亮度值。数值越大,图层越亮;数值越小,图层越暗。取值范围[0,1]。0.8
contrastNumber图层的对比度值。数值大于 1 会增强对比度,数值小于 1 会降低对比度。取值范围[-5,5]1.2
gammaNumber图层的伽马值。伽马校正用于调整图像的亮度分布,不同的伽马值会影响图像的亮部和暗部表现。0.3
hueNumber图层的色调值。色调决定了颜色的种类,例如红色、绿色等。1
saturationNumber图层的饱和度值。数值越大,颜色越鲜艳;数值越小,颜色越接近灰色。1.0