BufferParameters bufferParameters = new BufferParameters() { BufferSpatialReference = myMap.SpatialReference, OutSpatialReference = myMap.SpatialReference, Unit = LinearUnit.StatuteMile }; bufferParameters.Distances.Add(10); bufferParameters.Features.Add(new Graphic() { Geometry = originPoint });BufferSpatialReference = new SpatialReference(4326)
when the bufferSR is GCS... Polylines and Polygons: unit must be angular such as decimal degrees for buffering to be performed.
Solved! Go to Solution.
const double earthRadius = 6378137; double yCenter = graphic.Geometry.Extent.GetCenter().Y; double distorsion = Math.Cosh(yCenter / earthRadius); // mercator distorsion (= 1/cos(latitude)) bufferParams.Distances.Add(distance * distorsion);
const double earthRadius = 6378137; double yCenter = graphic.Geometry.Extent.GetCenter().Y; double distorsion = Math.Cosh(yCenter / earthRadius); // mercator distorsion (= 1/cos(latitude)) bufferParams.Distances.Add(distance * distorsion);