URI

<geometryService_uri>/generalize [.<format>]

支持的方法

GETPOSTHEAD

父资源

geometryService

介绍

generalize 资源通过 Douglas-Peucker 算法以指定最大偏差距离来简化输入的几何形状。输出几何对象将包含原始输入顶点的子集。

支持的方法:

  • GET:返回一个概括化结果资源。
  • POST:根据给定的条件,创建一个概括化结果资源。
  • HEAD:检查 generalize  资源是否存在,或权限是否可以访问 generalize  资源。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。

http://supermapiserver:8090/iserver/services/{component}/arcgisrest/Geometry/GeometryServer/generalize.rjson

GET 请求

请求参数

名称 类型 含义
f String 响应格式,支持 json、pjson
geometries String 【必设参数】 要概括化的几何数组。数组中每个几何的结构与 ArcGIS REST API 返回的 JSON 几何对象的结构相同。 如: {   "geometryType" : "esriGeometryPolyline",     "geometries" :   [     {       "paths" :       [         [[-117,34],[-116,34],[-117,33]],         [[-115,44],[-114,43],[-115,43]]       ]     },     {       "paths" :       [         [[32,17],[31,17],[30,17],[30,16]]       ]     }   ] }
sr String 【必设参数】 输入几何对象的空间参考系统。在该资源中仅作为单位换算。
maxDeviation String 【必设参数】 maxDeviation 用于设置最大允许偏移量,这将确定概括化的程度。
deviationUnit String 最大允许偏移量的单位。如果未指定单位,则从 sr 派生单位。

响应结构

字段 类型 说明
geometryType ArcGISGeometryType 几何图形的类型。
geometries ArcPointNoProj[] 坐标构成的点数组。
ArcPolylineNoProj[] 坐标构成的线数组。
ArcPolygonNoProj[] 坐标构成的面数组。

响应示例

对 ArcGIS generalize 资源:http://localhost:8090/iserver/services/geometry/arcgisrest/Geometry/GeometryServer/generalize?f=json&sr=3857&geometries={"geometryType":"esriGeometryPolygon","geometries":[{"rings":[[[-87,40],[-87.1,40.3],[-87.2,40.5],[-87.2,40.6],[-86.8,40.6],[-86.7,40.6],[-86.7,40.4],[-86.7,40.2],[-87,40]]]}]}&maxDeviation=0.1&deviationUnit=9096 执行 GET 请求,返回 json 格式的资源表述如下:

{"geometries":[{"rings":[[[-87,40],[-87.2,40.6],[-86.7,40.6],[-86.7,40.2],[-87,40]]]}],"geometryType":"esriGeometryPolygon"}

POST 请求

跟 GET 请求结构类似。

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 generalize  资源是否存在,或者客户端是否有权限访问 generalize  资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 generalize  资源是否支持<format>格式的表述。

请参见