js api中如何对非4326的地理坐标系进行buffer操作?

在js api中提供Geometry Engine对buffer进行操作。但是当对非4326的地理坐标进行buffer操作时,失败 。
已邀请:

江民彬

赞同来自: GIS知乎

【解决办法】:
当前js端实现buffer操作以及其他Geometry的操作,有两种方式:

方式一:在前端通过GeometryEngine

方式二:调用服务器端通过GeometryServices实现

其中GeometryEngine的buffer操作根据数据的参考类型不同,而需选用匹配的buffer()方法或者geodesicbuffer()方法。 两者区别为buffer()主要针对投影坐标而geodesicbuffer()针对地理坐标系。

geodesicbuffer()针对地理坐标系和web mercator的投影坐标进行buffer操作,当输入为地理坐标系是其仅支持wgs-1984(wkid:4326)的地理坐标系。其他的地理坐标系无法使用Geometryengine。此时需要选用方式二。即使用GeometryService.buffer()的方法在服务器端进行操作。

故失败的原因是选择的buffer的方式不正确。

要回复问题请先登录注册