将一个图层(TZDKFW商务区)的全部字段属性复制并粘贴到另一个图层(TDKFW,此图层位于mdb数据库中),是完完全全复制过来的,图斑已检查过没有缺失,但shape_area的值就是比原来少了一点点,面积是194554才对,却变成了194551。。已经反复检查过坐标系没有不同;Z值、M值也尝试去除过;字段类型也相同;要素最大最小范围也重新计算过和原图层很相近,可还是一粘贴就变小,请问这是什么原因呢?
用的是ArcMap 10.4.1、WIN10
图层属性
是不是两个图层的字段的精度不一样
估计是图层类型限制导致实体发生了变化,需要具体看一下原图层和目标图层的存储类型的差异情况。
你的版本太旧了吧,建议换新版本
参考gpt:
结合自己分析给你如下建议:
ArcMap图层复制面积变小的一个可能原因是,源图层和目标图层的投影不一致,导致复制过程中发生了投影转换,从而引起了面积的微小变化。
ArcMap图层复制面积变小的另一个可能原因是,源图层和目标图层的几何精度不一致,导致复制过程中发生了几何简化,从而引起了面积的微小变化。
ArcMap图层复制面积变小的还有一个可能原因是,源图层和目标图层的数据格式不一致,导致复制过程中发生了数据转换,从而引起了面积的微小变化。
要解决这个问题,可能需要以下几个步骤:
首先,需要检查源图层和目标图层的投影是否一致,如果不一致,则需要将其中一个图层的投影转换为另一个图层的投影。
其次,需要检查源图层和目标图层的几何精度是否一致,如果不一致,则需要将其中一个图层的几何精度调整为另一个图层的几何精度。
最后,需要检查源图层和目标图层的数据格式是否一致,如果不一致,则需要将其中一个图层的数据格式转换为另一个图层的数据格式。
Arcgis小技巧【8】——字段数值过大造成结果不正确的解决方法
可以参考下
ArcGIS对坐标进行存储时使用的是浮点数,在计算 shape_area 时可能存在舍入误差导致图层间的shape_area不完全相等
结合GPT给出回答如下请题主参考
可能是因为两个图层的投影不同或者精度设置不同导致的。shape_area是根据图层的投影和精度计算出来的,如果两个图层的投影不同,那么计算出来的面积也会不同;如果精度设置不同,则计算出来的面积也会不同。建议检查和比较两个图层的投影设置和精度设置,看看是否有不同。
可能是坐标精度问题、或者拓扑错误,另外,检查下坐标投影问题以及软件本身的问题。
参考gpt
在ArcGIS中,图斑的面积计算是基于其几何形状和所使用的坐标系进行的。如果你复制并粘贴图层的属性字段,并且确保图斑的几何形状没有缺失,但是面积值仍然有微小差异,可能是由以下原因引起的:
坐标精度:ArcGIS使用浮点数来表示坐标,而浮点数在计算中可能存在精度损失。即使两个图层的坐标系相同,但坐标的精度可能会略有不同,导致计算的面积值有微小差异。
投影变换:如果你的图层使用了投影坐标系,复制和粘贴操作可能会导致投影变换的微小误差。这可能会对面积计算产生一些影响。
数据库限制:如果你的图层保存在MDB数据库中,数据库本身可能有一些限制,例如字段类型或存储精度。这些限制可能会导致面积值的微小差异。
为了更准确地确定面积值的差异原因,你可以尝试以下方法:
检查坐标精度:比较原始图层和复制后图层的坐标值,看看是否存在微小差异。你可以使用ArcGIS的"Identify"工具或"Add XY Coordinates"工具来查看坐标值。
检查投影设置:确保两个图层使用相同的投影坐标系,并检查投影参数是否一致。
检查数据库设置:如果你使用的是MDB数据库,检查字段类型和存储精度是否与原始图层一致。
尝试其他方法:如果以上方法都没有解决问题,你可以尝试使用其他方法来计算面积,例如使用ArcGIS中的"Calculate Geometry"工具或使用Python脚本计算面积。
数据格式不同,导致图形精度损失
复制过程中可能会丢失一些小数位数,从而导致shape_area值不完全相同
数据格式不同的原因