经纬志
首页 / Turf.js / 使用示例

生成缓冲区

一个站点、一条半径滑块,实时得到缓冲面。 半径以公里传入,面积由 Turf 反算,两者可以直接互相验证。

Turf.js 7.x · 更新 2026-10-27
源码与运行效果
运行效果

说明

滑块范围 0.3 到 10 公里,步长 0.1。每次拖动都重新调用 turf.buffer,steps 固定 64, 所以边界始终接近圆。面积按 turf.area 的结果换算成平方公里显示, 与 πr² 的理论值偏差在千分之一量级。

参数本示例取值影响
radius0.3–10 km缓冲范围大小
unitskilometers与滑块数值一致,避免换算
steps64顶点数 65,边界接近正圆

图中的虚线标出半径方向,用来确认面确实从站点向外扩展, 而不是被错误地当成「直径」处理。

把 steps 改为 8 再对比面积,会看到明显缩水: 八边形内接于同半径的圆,面积只剩约九成。面积参与业务计算时, 这个差距不能忽略。