URI
<geometry_uri>/grid3d/generator[.<format>]
支持的方法
父资源
子资源
无
介绍
三维网格生成资源。该资源支持将三维几何对象(三维点、三维线)批量转换为指定网格类型的网格编码,用于空间索引和空域管理。当前版本仅支持 GeoSOT 网格类型。
对该资源发送 POST 请求,可以批量生成三维几何对象的网格编码。
支持的方法:
- GET:返回一个进行 POST 请求的表单。
- POST:将三维几何对象批量转换为三维网格编码。
- HEAD:检查 grid3dGenerator 资源是否存在,或权限是否可以访问 grid3dGenerator 资源。
支持的表述格式:RJSON、JSON、HTML、XML。
HTTP 请求方法
对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。
http://supermapiserver:8090/iserver/services/spatialanalyst-sample/restjsr/spatialanalyst/geometry/grid3d/generator.rjson
GET 请求
返回一个进行 POST 请求的表单。
POST 请求
将三维几何对象批量转换为三维网格编码,支持 GeoSOT 网格类型。
请求参数
请求体中需传递如下参数:
| 名称 | 类型 | 含义 |
| gridType | Spatial3DGridType | 【可选参数】三维网格类型,默认为 GEOSOT。当前版本仅支持 GeoSOT 网格。 |
| geometries | Geometry3D[] | 【必填参数】三维几何对象数组,支持 POINT3D(三维点,通过 x/y/z 坐标定义)和 LINE3D(三维线,通过 points 数组定义)类型,最大支持 1000 个。 |
| level | int | 【必填参数】三维网格层级,GeoSOT 范围 1-32。一般建议最高使用 24-25 层级,过高的层级会导致网格数量过多,可能超出数据库的限制。 |
| returnGrid3DPositioning | boolean | 【可选参数】是否返回三维网格定位字符串列表,默认为 false。每项格式为 "xmin,xmax,ymin,ymax,zmin,zmax"(六个 double,逗号分隔),用于绘制三维体。 |
响应结构
正常响应情况:响应码 200。响应参数如下:
| 字段 | 类型 | 说明 |
| succeed | boolean | 操作是否成功。 |
| message | String | 失败时返回的错误信息,成功时为空字符串。 |
| gridType | Spatial3DGridType | 三维网格类型。 |
| items | Geometry3DGridGenerateResult[] | 网格生成结果列表,每个输入几何对象对应一个结果。每项包含 gridCodes(三维网格编码列表)和 grid3DPositioning(三维网格定位字符串列表,仅当 returnGrid3DPositioning=true 时返回)。 |
响应示例
对 grid3dGenerator 资源执行 POST 请求,请求参数如下:
{
"gridType": "GEOSOT",
"geometries": [
{"type": "POINT3D", "x": 116.397, "y": 39.908, "z": 100.0},
{"type": "LINE3D", "points": [{"x": 116.397, "y": 39.908, "z": 100.0}, {"x": 116.400, "y": 39.910, "z": 150.0}]}
],
"level": 17,
"returnGrid3DPositioning": false
}
则返回的 rjson 格式的响应结果如下:
{
"succeed": true,
"message": "",
"status": "FINISHED",
"gridType": "GEOSOT",
"items": [
{"gridCodes": ["G001310322-232132-032220.312,1101"], "grid3DPositioning": null},
{"gridCodes": ["G001310322-232132-032220.312,1101", "G001310322-232132-032220.313,1101"], "grid3DPositioning": null}
]
}
HEAD 请求
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 grid3dGenerator 资源是否存在,或者客户端是否有权限访问 grid3dGenerator 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 grid3dGenerator 资源是否支持<format>格式的表述。
请参见