turf.js是webgis中常用的插件库之一,它提供了众多的gis计算接口能力,其中squareGrid接口可根据范围矩形框和网格宽度计算出所有网格。
hextile - npm 也可以用于计算网格,可接受的入参范围可以是矩形框或者geojson,但是网格宽度默认1000m,最小500,最大500000。
由于项目中要计算的轨迹范围可能会比较大,因此对两个插件的计算性能进行比对试验:
场景1、不同矩形框范围,网格宽1000m,
耗时 hextile ≈ turf × 3
场景2、结果有31000+个网格时,
耗时 hextile ≈ turf × 3
总结:turf不仅在计算性能方面胜出,可计算的网格宽度值域也更大。
遗留未测试场景:以多边形范围geojson为输入,比较hextile和turf的计算耗时。这也许会是选择hextile的唯一理由,但是turf也能接受多边形mask裁剪。