抽稀算法-固定步长

326 阅读1分钟

有时候gis采集的点过多渲染时会造成资源浪费,因此需要抽稀处理,写了一个简单的固定步长抽稀算法

        //points:[turf.point],distance:单位km
        const sparse=(points,distance)=>{
            const list=[points[0]]
            points.forEach((point)=>{
                if(turf.distance(list[list.length-1],point)>=distance){
                    list.push(point)
                }
            })
            return list
        }

抽稀前

image.png

当distance=0.1时

image.png

当distance=0.05时,此时已有较大失真

image.png