arcpy.da.InsertCursor(fc,("SHAPE@"))为什么插入几何时,shp文件里插入的几何坐标只要小数位超过4位后坐标精度就无法正确表示了?

比如说这个插入这个面坐标:
Region 1
  4
75.7864379882813 39.4107055664063
75.7864379882813 39.4134521484375
75.7891845703125 39.4134521484375
75.7891845703125 39.4107055664063
用InsertCurso来插入,精度错得有点离谱。
已邀请:

李明

赞同来自: 土祥

1,显示坐标值:ArcMap中对经纬度和投影坐标的显示由layer-properties-general下的display和customize-arcmap options-data view中的coordinate display所控制,后者在控制级别上更高。
2,属性表计算几何获取坐标:对点要素在属性表中添加字段-计算几何来获取点的经纬度坐标,所得到的坐标值精度由字段类型所控制,在field properties-number format-numeric中可以设置字段值的小数位,默认值为6。
3,要素类坐标值:在gdb中新建一个要素类,会有accept default resolution选项为勾选状态,默认xy精度为九位小数,所以创建要素类时点坐标的真实坐标为九位小数,使用InsertCursor插入点几何,其真实坐标值为九位小数。点几何的真实坐标应该存储在shape字段中。
一般我们遇到的坐标差异大,可能只是坐标显示上的问题,根据1更改坐标单位或者重新加载数据。地理坐标系下默认的九位小数足够表示坐标点的相对位置,误差在mm级别。

要回复问题请先登录注册