问题描述
我有两个具有相同坐标系(Wgs84)的几何,但是它们的数据单位不同,一个是度,另一个是米。 我需要对它们执行一些操作,例如:
var g1 = GeometryEngine.Difference(geometry1,geometry2);
但是我得到一个错误:
System.ArgumentException:'Invalid argument: geometry1 and geometry2 must have equivalent spatial references.'
所以我想将以度为单位的数据转换为以米为单位的数据,我不知道该怎么做。
以米为单位的数据来自shp文件。此shp文件已加载到SceneView。
以度为单位的数据来自SceneView的PreviewMouseLeftButtonDown事件:
// Get the mouse position.
Point cursorSceenPoint = mouseEventArgs.GetPosition(MySceneView);
// Get the corresponding MapPoint.
MapPoint onMapLocation = MySceneView.ScreenToBaseSurface(cursorSceenPoint);
然后我考虑了是否可以通过设置SceneView.SpatialReference.Unit
来修改单位,但是它是只读的。
.NET解决方案是最好的,其他语言也可以接受。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)