工作中,经常需要对各类数据进行编号,在林业行业中,会对不同乡镇、村、林班内的图斑从1开始编号,从上至下,从左至右。因此利用图斑最大的Y坐标,最小X坐标进行排序,之后再根据不同的乡村林班进行编号,流程如下:
1、计算最大Y坐标,最小X坐标,组合不同县、乡镇、村、林班字段。
int iPosMaxY = pTable.FindField("YMax");
int iPosMinX = pTable.FindField("XMin");
int xXid = pTable.FindField("XID_X");
int xx1 = pTable.FindField("xian");//查找县字段
int xx2 = pTable.FindField("xiang");//查找县字段
int xx3 = pTable.FindField("cun");//查找县字段
int xx4 = pTable.FindField("linban");//查找县字段
IWorkspaceEdit workedit = (pFeatureClass as IDataset).Workspace as IWorkspaceEdit;//打开编辑空间
workedit.StartEditing(true);//开启编辑
workedit.StartEditOperation();
IFeatureCursor pFeatureCursor = pFeatureClass.Update(null, false);
IFeature pFeature = pFeatureCursor.NextFeature();
while (pFeature != null)
{
IGeometry pGeometry = pFeatu