0.缘由
使用ArcGIS JS API 做空间分析功能,以前我都是采用本地部署GP服务,传输要素图层给GP服务并返回得到分析结果。前段时间了解了一下turf.js,它可以帮助我们在前端完成简单的分析功能。在网上找到的相关资料很少,于是开始尝试。
1.下载文件
首先是下载turf.js,大家可以在官网进行下载。http://turfjs.org/
2.引入文件
这里需要注意的是,turf.js有定义一套AMD规范的方法。这里会与dojo定义的方法冲突,如果直接引入文件,turf命名空间内的方法将会显示未定义。这里我采用了比较笨的方法,将turf.js中的所有“Require”,“Module”,“Exports”关键字全局替换为“turfRequire”,“turfModule”,“turfExports”,如果大家有更优雅的方式,解决冲突问题,可以留言沟通。
3.添加方法
添加Turf几何对象与esri几何对象转化方法TurfToGeometry,GeometryToTurf。
var TurfToGeometry = function (turf) {
var geometry = null;
if (turf.type =="Feature"){
var coordinate=turf.geometry.coordinates;
switch (turf.geometry.type) {
case "MultiLineString":
geometry=new esri.geome