代码如下(异常在外部捕捉):
Func<List<ESRI.ArcGIS.Geometry.IGeometry>, JArray> ConvertShapeWithArea = (lsGeo) =>
{
JArray aJArray = new JArray();
foreach (var pGeo in lsGeo)
{
JObject aJObject = new JObject(
new JProperty("shape", JObject.FromObject(GeometryFactory.CreateGeoJsonFromEsriGeometry(pGeo as ESRI.ArcGIS.Geometry.IPolygon))),
new JProperty("area", (pGeo as ESRI.ArcGIS.Geometry.IArea).Area)
);
aJArray.Add(JToken.FromObject(aJObject));
}
return aJArray;
};调用时返回结果示例:
[
{
"shape": {
"type": "Polygon",
"coordinates": [
[
[
37563651.04561424,
3213571.488904953,
0
],
[
37563587.07734108,
3213570.668844223,
0
],
[
37563586.81415367,
3213621.285943985,
0
],
[
37563587.53163338,
3213647.6975917816,
0
],
[
37563728.04936409,
3213650.374227524,
0
],
[
37563729.5853405,
3213575.4888095856,
0
],
[
37563653.70521355,
3213574.189157486,
0
],
[
37563651.04561424,
3213571.488904953,
0
]
]
]
},
"area": 10767.57596575679
}
]
本文介绍了一段用于将ESRI.ArcGIS.Geometry.IGeometry类型的几何对象转换为GeoJSON格式,并计算其面积的C#代码。该代码通过遍历几何集合,将每个几何对象转换成带有面积属性的GeoJSON格式,最终返回一个包含所有GeoJSON对象的数组。
528

被折叠的 条评论
为什么被折叠?



