cutfill


URI

<terraincalculation_uri>/cutfill[.<format>]

支持的方法

GETPOSTHEAD

父资源

terrainCalculation

子资源

cutFillResult

介绍

cutFill 资源表示填挖方分析。填挖方分析用于计算填挖操作过程中填方、挖方的面积和体积,包含四种类型:栅格填挖方、选面填挖方、斜面填挖方和三维面填挖方。对该资源发送 POST 请求,则创建一个填挖方分析结果资源。

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

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

http://supermapiserver:8090/iserver/services/spatialAnalysis-Jingjin/restjsr/spatialanalyst/datasets/JingjinTerrain%40Jingjin/terraincalculation/cutfill.rjson

GET 请求

获取一个 POST 请求的表单。

POST 请求

创建一个填挖方分析结果资源,相当于进行了一次填挖方分析。

请求参数

请求体中需传递如下参数:

名称 类型 含义
cutFillType cutFillType 填挖方分析的类型,包含:
GRID:根据结果栅格进行填挖方分析,也叫栅格填挖方
LINE3DANDBUFFERRADIUS:根据指定的三维线及缓冲半径进行进行填挖方分析,也叫斜面填挖方。
REGION3D:三维面填挖方计算。
REGIONANDALTITUDE:根据指定的面区域及结果高程值进行填挖方分析,也叫选面填挖方计算。
默认根据结果栅格进行填挖方分析。
afterCutFillDataset String 填挖方后的栅格数据集,当填挖方分析的类型为 GRID 时有效,此时为必填。
resultDataset String 填挖方分析的结果数据集。
buildPyramid boolean 是否对结果栅格数据集创建金字塔。
deleteExistResultDataset boolean 如果用户命名的结果数据集名称与已有的数据集重名,是否删除已有的数据集。
bufferRadius double 填挖方线路的缓冲区半径,当填挖方分析的类型为 LINE3DANDBUFFERRADIUS 时有效,此时为必填,且值必须大于0
isRoundHead boolean 是否使用圆头缓冲为填挖方路线创建缓冲区,默认为 false,当填挖方分析的类型为 LINE3DANDBUFFERRADIUS 时有效。
line3D Geometry3D 填挖方路线,当填挖方分析的类型为 LINE3DANDBUFFERRADIUS 时有效。
region Geometry 填挖方区域,当填挖方分析的类型为 REGIONANDALTITUDE 时有效。
region3D Geometry3D 三维面对象,当填挖方分析的类型为 REGION3D 时有效。

响应结构

响应参数如下:

字段 类型 说明

succeed

boolean 查询是否成功。
newResourceID String 分析结果资源的 ID。
postResultType PostResultType

POST 请求的结果类型,枚举说明 POST 请求对目标资源的影响,即处理结果是什么样的。

newResourceLocation String 创建的新资源的 URI。

示例

对 cutFill 资源:http://supermapiserver:8090/iserver/services/spatialAnalysis-Jingjin/restjsr/spatialanalyst/datasets/JingjinTerrain@Jingjin/terraincalculation/cutfill.rjson,执行 POST 请求,请求体如下:

{

"cutFillType":"REGION3D",

"region3D":"{\"bounds\":{\"bottom\":39.5,\"center\":{\"x\":116.2,\"y\":40.0},\"height\":1.0,\"left\":115.4,\"leftBottom\":{\"x\":115.4,\"y\":39.5},\"right\":117.0,\"rightTop\":{\"x\":117.0,\"y\":40.5},\"top\":40.5,\"valid\":true,\"width\":1.6},\"id\":0,\"parts\":[4],\"points\":[{\"x\":115.4,\"y\":40.0,\"z\":-5.0},{\"x\":116.4,\"y\":39.5,\"z\":0.0},{\"x\":117.0,\"y\":40.5,\"z\":5.0},{\"x\":115.4,\"y\":40.0,\"z\":-5.0}],\"rotationX\":0.0,\"rotationY\":0.0,\"rotationZ\":0.0,\"scaleX\":0.0,\"scaleY\":0.0,\"scaleZ\":0.0,\"type\":\"REGION3D\"}",

"resultDataset":"cutfill",

"buildPyramid":true,

"deleteExistResultDataset":true

}

则返回的 rjson 格式的资源描述如下:

{

"postResultType":"CreateChild",

"newResourceID":"aee0c9dea91f4f39a096771fbc3312f2_6f88d7cfcf8d43049d5d759db114f9db",

"succeed":true,

"newResourceLocation":"http://supermapiserver:8090/iserver/services/spatialAnalysis-Jingjin/restjsr/spatialanalyst/datasets/JingjinTerrain@Jingjin/terraincalculation/cutfill/aee0c9dea91f4f39a096771fbc3312f2_6f88d7cfcf8d43049d5d759db114f9db"

}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。HEAD 请求可以用来判断 cutFill 资源是否存在,或者客户端是否有权限访问 cutFill 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 cutFill 资源是否支持<format>格式的表述。

请参见