昨天检查一区属性发现一区图层的面积属性shape_area竟然出现了负值,想必是数据转换的时候出现了问题。今天在论坛求证了一下,感谢各位的解答。
ArcGIS默认顺时针图形为正,手工画polygon的时候不管怎么画结果都是顺时针的。所以一般负值的出现是转换过程出现问题,polygon是由ring组成的,ring则是有更小的segement(line,circularArc,ellipticalArc,beziercurve)构成,所具有方向性。
解决方法是用ArcTool中的check geometry和 repair geometry工具,上述的检查结果是Incorrect ring ordering。repair后会自动修复错误,已解决。
此外,repair工具只能修复以下五种错误:
- Null
geometry—The feature will be deleted from the feature class. - Short
segment—The geometry's short segment will be deleted. - Incorrect
ring ordering—The geometry will be updated to have correct ring ordering. - Incorrect
segment orientation—The geometry will be updated to have correct segment orientation. - Self
intersections—The geometry's segments that intersect will be split at their intersection. - Unclosed
rings—The unclosed rings will be closed. - Empty
parts—The parts that are null or empty will be deleted. 更多的错误修复参照帮助中的 How to salvage a corrupt shapefile