目前在前端GIS应用中turf.js几乎是必不可少了,我们首先来看一下官网的介绍。
官网地址:Turf.js中文网
官网提供了许多方法,基本的turf的引入和使用我就不说,我说一些重要的常用的,以及大家没注意到的点。
1.计算多边形的边界范围
这个函数(功能)很常用,尽管在很多前端的GIS框架中都自带这一功能,但是有时在脱离环境的前提下想要计算边界这个函数还是很好用的。
var line = turf.lineString([
[104.99467, 30.071677],
[107.13797, 36.550462],
[112.607082, 34.991467]
]);
var bbox = turf.bbox(line);
var bboxPolygon = turf.bboxPolygon(bbox);
上面是官网的示例,实际上可以计算边界的不仅仅是线要素,我们更多使用的是面要素,因此呢在使用这个函数的时候大家可以将一个标准的面要素,geojson格式的面要素当作参数传入,turf也会计算出一个extent给我们的。可以封装一个方法:
getExtent(geojson) {
return turf.bbox(geojson);
}
这样在前端项目中如果你遇到了geojson数据,不管是服务传给你的还是本地的静