三次贝塞尔样式插值
属性与缩放驱动的标准非线性颜色和数值曲线
已支持的数值和颜色绘制属性可使用 cubic-bezier。四个控制参数必须是有限常量,两个 x 值取 0..1,y 可超调。停止点仍需为严格递增常量,zoom 输入仍只用于外层插值(可位于 let 的最终表达式)。
map.setPaintProperty('points', 'circle-radius', [
'interpolate', ['cubic-bezier', 0.42, 0, 1, 1],
['get', 'value'], 0, 10, 1, 30
]);
await map.sqs.flush({ render: true });
输入为 0.5 时此曲线得到约 16.3071;与线性中点不同。数值保留超调,颜色的 RGBA 通道限制在合法范围。输入在停止点之外使用端点值。非法曲线拒绝并保留原样式;要素运行时属性类型错误沿用绘制属性默认值/告警规则。
共享核心使用最多32次求解,原生与WASM/Worker共用实现,无新增宿主接口。普通已支持paint的属性、状态与缩放表达式可用;热力密度和高程色阶专用颜色带仍限线性,LAB/HCL/数组插值另列未实现。
完整HTML示例 包含全部按钮、数据、样式和来源文字。语法依据MapLibre公开规范,数学实现由SqsMap自行编写。