Dear Esri Team!
We implement an application with ArcGIS Runtime 100.1 (and 100.2), using .NET Framwork 4.5.2 and VS2015, and running on Windows 10
Most of the geometry operations in the GeometryEngine fail with a "...must have equivalent spatial references" exception.
Geometry geoCliptest = GeometryEngine.Clip(feat.Geometry, extent);
{"Invalid argument: geometry and envelope must have equivalent spatial references."}
bei Esri.ArcGISRuntime.ArcGISException.HandleCoreError(CoreError error, Boolean throwException)
bei RuntimeCoreNet.GeneratedWrappers.Interop.CheckError(IntPtr errorHandle, Boolean throwOnFailure, GCHandle wrapperHandle)
bei RuntimeCoreNet.GeneratedWrappers.CoreGeometryEngine.Clip(CoreGeometry geometry, CoreEnvelope envelope)
bei Esri.ArcGISRuntime.Geometry.GeometryEngine.Clip(Geometry geometry, Envelope envelope)
In this example we use the MapView Extent and the geometry from a feature.
We compared the Spatial References with
var test = feat.Geometry.SpatialReference.IsEqual(extent.SpatialReference);
and it returned true.
And manually checked, the wktstrings are equal too:
PROJCS["MGI_Austria_GK_East",GEOGCS["GCS_MGI",DATUM["D_MGI",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",-5000000.0],PARAMETER["Central_Meridian",16.33333333333333],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]
We created a workaround for our low level operations. Now we convert the geometry parameters like this, and everything works without problems:
public static Polygon ConvertPolygon(
Polygon p)
{
var pJson = p.ToJson( );
Polygon newPolygon = Geometry.FromJson( pJson ) as Polygon;
return newPolygon;
}
So what is the problem? I cannot evaluate the side effects of this workaround, so it cannot stay like this.
Thanks in advance,
Karin