mapbox gl 计算圆半径的内部表达式

mapbox gl calculate inside expression for circle-radius

我想在表达式中进行计算。这可能吗? 我现在拥有的代码不起作用。这个例子工作正常:

'circle-radius': {
    'base': 1.5,
        'stops': [
            [0, 0],
            [20, 180]
        ]
}

但是当我在内部进行计算时,它不起作用:

'circle-radius': {
    'base': 1.5,
    'stops': [
        [0, 0],
        [20, ['*', 2, 90]]
    ]
},

我最终真正想做的是 adding another variable 来自我的数据。

'circle-radius': {
    'base': 1.5,
    'stops': [
        [0, 0],
        [20, ['*', 2, ["get", "amount"]]]
    ]
},

谢谢!

您将两种不同的 Mapbox-GL 语法混合在一起:旧的 "stops" 方法和较新的表达式语法。由于要进行计算,因此需要完全使用新的 expression syntax.

像这样:

{
    "circle-radius": [
        "interpolate", ["linear"], ["zoom"],
        0, 0,
        20, ['*', 2, ['get', 'amount']]]
    ]
}