1、根据中心点 x坐标和y坐标外扩生成矢量数据
2、将西安84坐标转换成平面2000
if (!string.IsNullOrEmpty(XZB) && Convert.ToDouble(XZB) < 360 && !string.IsNullOrEmpty(YZB) && Convert.ToDouble(YZB) < 360) { ESRI.ArcGIS.Client.Geometry.MapPoint mp = new ESRI.ArcGIS.Client.Geometry.MapPoint { X = Convert.ToDouble(XZB), Y = Convert.ToDouble(YZB) }; ESRI.ArcGIS.Client.Geometry.MapPoint mpNew = CoordinateTrans.Wgs84ToXian80(mp); XZB = mpNew.X.ToString(); YZB = mpNew.Y.ToString(); } string str = @"{'type': 'Point','coordinates': [" + XZB + ", " + YZB + "]}"; Geometry pt = OSGeo.OGR.Ogr.CreateGeometryFromJson(str); Geometry circlePolygon = pt.Buffer(10, 30);//10 指缓冲区(圆)的距离(半径),30指点之间的密集度默认30这个没有具体单位,是这个gdal自定义的一个数值范围 string outJson = circlePolygon.ExportToJson(null); SHAPE = outJson.Replace("\"type\": \"Polygon\",", "").Replace("coordinates", "rings");
arcgis使用GDAL根据x坐标和y坐标外扩生成缓冲区
最新推荐文章于 2023-10-18 15:32:43 发布