SuperMap iServer 的几何对象由 id、parts、points、style 和 type 等参数表示,其中:
id 是几何对象的唯一标识符;
parts 是整型数组,其元素描述几何对象中各个子对象所包含的节点的个数;
1.几何对象从结构上分为简单几何对象和复杂几何对象。简单几何对象一般为单一对象,复杂几何对象由多个简单对象组成或经过一定的空间运算之后产生,如:矩形为简单的区域对象,而中空的矩形为复杂的区域对象。
2.通常情况下,一个简单几何对象的子对象就是它本身,因此对于简单对象来说,parts 是长度为1的整型数组,数组中元素的值就是这个简单对象节点的个数。如果一个几何对象是由几个简单对象组合而成的,例如,一个岛状几何对象由3个简单多边形组合而成,那么这个岛状的几何对象的 parts 参数值就是一个长度为3的整型数组,数组中每个元素的值分别代表这三个多边形所包含的节点个数。
points 描述组成几何对象的节点的二维坐标对数组。
style 描述几何对象的风格,用于定义几何对象在显示时的符号、线型、填充模式等信息。
type 描述几何对象的类型。
下面分别对简单点对象、简单线对象、简单面对象的构建进行介绍。
对于简单点对象来说,parts 参数是长度为1的整型数组,数组中元素的值就是点对象中所包含的节点的个数,即1;type 值就是“POINT”。
一个简单点对象的 JSON 格式的表示示例如下:
{
"id": 1,
"parts": [1],
"points": [{
"x": 25.27596664428711,
"y": 54.688568115234375
}],
"style": null,
"type": "POINT"
}
线对象由一些简单的点坐标组成,线对象的 type 值是“LINE”。
一个简单线对象的 JSON 格式的表示示例如下:
{
"id": 1,
"parts": [4],
"points": [{
"x": 96.37172516065249,
"y": 399.73448202810533
},
{
"x": 127.60869053503754,
"y": 290.4051032177577
},
{
"x": 397.3824824047266,
"y": 362.8180684038321
},
{
"x": 357.05839983052044,
"y": 279.0462067179813
}],
"style": null,
"type": "LINE"
}
面对象由一些简单的点坐标组成,对于简单的面对象来说,它的起点和终点的坐标点相同。
一个简单面对象的 JSON 格式的表示示例如下:
{
"id": 1,
"parts": [4],
"points": [{
"x": -12.908614415006994,
"y": 407.37026387547877
},
{
"x": -2.916359855276923,
"y": 248.49341637577055
},
{
"x": 250.22075565788498,
"y": 305.782342518223
},
{
"x": 185.2711010196395,
"y": 413.3656166113168
},
{
"x": -12.908614415006994,
"y": 407.37026387547877
}],
"style": null,
"type": "REGION"
}