URI
<geometryService_uri>/generalize [.<format>]
支持的方法
父资源
介绍
generalize 资源通过 Douglas-Peucker 算法以指定最大偏差距离来简化输入的几何形状。输出几何对象将包含原始输入顶点的子集。
支持的方法:
资源层次
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>格式的表述。