免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 21672|回复: 44
收起左侧

[求助] gis 中图斑自上而下,从左到右编号

  [复制链接]

21

主题

4048

铜板

10

好友

工程师

Rank: 7Rank: 7Rank: 7

积分
591
发表于 2011-11-4 19:17 | 显示全部楼层 |阅读模式
gis 中图斑自上而下,从左到右编号

图斑自上而下,从左到右编号
将图斑自上而下、从左到右排序,arcgis没有现成的工具做这事情,许多软件虽然能做,但方式是采用按质心点来排序,这种方法有很多弊端,比如有个图斑从左上角开始一直延伸到左下角,按理说应该是第一个图斑,但按质心排序时会排到后边去。下面介绍的方法是按照每个图斑的最小外包矩形的左上角坐标来排序,这样的排序方法基本符合要求。
具体步骤:
1、在属性表中增加xmin、ymax、tbxh字段用于存放外包矩形左上角x、y坐标和排序后的图斑序号
2、将附件解压,里边有shape_Get_X_Min.cal和shape_Get_Y_Max.cal两个文件分别用于计算xmin和ymax
3、开始编辑,打开属性表,在xmin上点右键,选field calculator,然后点load,将shape_Get_X_Min.cal载入

点OK,xmin将填入字段
4、在ymax上点右键,选field calculator,然后点load,将shape_Get_Y_Max.cal载入,计算ymax
5、导出属性表到dbf,在excel里将其打开,按ymax降序,xmin升序排序

6、在excel里将表增加一个字段,比如bh,令bh=row()-1,将表另存为.xls文件。
7、在arcmap里将属性表和上步保存的xls文件通过objectid或fid做join。

8、开属性表,在tbxh上点右键,令tbxh等于xls中的bh

9、保存结果。
这样做后,排序后的图斑编号就保存在了tbxh里。

附件已经下载,在字段载入和运算时错误。
原文是           计算器错误
                     999999 函数错误
                    语法错误
                    执行字段计算错误
                    失败在fri nov  04 18:44 :12  2011(经历时间1.00秒)
怎么能够解决???谢谢了

锄禾日当午,签到好辛苦!...

6

主题

25万

铜板

59

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
212577
发表于 2011-11-4 19:54 | 显示全部楼层
这个问题我已提出过了,还望高手指点。希望大家都能讨论下,网上还有利用编程解决的,如有的话,也希望能提供共享,如有的话可用论坛铜板购买。在此表示十分感谢!
该会员没有填写今日想说内容.

45

主题

2万

铜板

118

好友

版主

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
3791

灌水勋章冰雪节勋章

发表于 2011-11-5 21:04 | 显示全部楼层
jzf2010319 发表于 2011-11-4 19:54
这个问题我已提出过了,还望高手指点。希望大家都能讨论下,网上还有利用编程解决的,如有的话,也希望能提 ...

那个代码不是每个版本都适用的,所以可能会出错的。。
该会员没有填写今日想说内容.

21

主题

4048

铜板

10

好友

工程师

Rank: 7Rank: 7Rank: 7

积分
591
 楼主| 发表于 2011-11-5 22:24 | 显示全部楼层
b176877840 发表于 2011-11-5 21:04
那个代码不是每个版本都适用的,所以可能会出错的。。

我的10.0中文版,有什么办法?
锄禾日当午,签到好辛苦!...

6

主题

25万

铜板

59

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
212577
发表于 2011-11-6 09:42 | 显示全部楼层
zc6627 发表于 2011-11-5 22:24
我的10.0中文版,有什么办法?

沒有找到解決問題的方法,還望高手指點
该会员没有填写今日想说内容.

0

主题

81

铜板

0

好友

实习生

Rank: 1

积分
11
发表于 2012-2-12 16:30 | 显示全部楼层
同样问题望高手解答
回复 支持 反对

使用道具 举报

9

主题

4万

铜板

13

好友

资深会员

Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

积分
3799

地信元老

发表于 2012-2-12 21:45 | 显示全部楼层
哦 学习一下,请指教
回复 支持 反对

使用道具 举报

2

主题

226

铜板

13

好友

助理工程师

Victory's within the

Rank: 5Rank: 5

积分
229
QQ
发表于 2012-4-3 11:23 | 显示全部楼层
关于图斑编号的问题   有很多方法  我比较喜欢的是用fme来做 简单  明了  利用函数操作也比较少  思路基本一致   
函数介绍
1. Bounding Box Replacer:得到图斑的外接矩形
2. Coordinate Extractor:得到外接矩形左上角点坐标(该工具参数里,index设置为1就是左上角点;设置为零对应矩形左下角点,其他以此类推)
3.sorter:排序,根据上一步的到的左上角点坐标Y倒序、X升序
4.counter:计数器,根据排序结果生成新的序号
5.FeatureMerger:相当于ArcMap里的Join,这里将排序好新生成的序号挂回去。

点评

很专业。。。  发表于 2012-4-6 13:05
回复 支持 反对

使用道具 举报

113

主题

1万

铜板

173

好友

地信贵宾

Rank: 13Rank: 13Rank: 13Rank: 13

积分
39141

精华勋章宣传勋章爱心勋章组织勋章优秀斑主地信元老灌水勋章荣誉会员勋章活跃勋章官方团队地信专家组VIP勋章贡献勋章名人堂勋章成就学员勋章

发表于 2013-6-2 09:42 | 显示全部楼层
你说要下载的附件在哪里?
可以发给我吗?1028614492@qq.com
万分感谢
回复 支持 反对

使用道具 举报

16

主题

1万

铜板

21

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
1057

爱心勋章灌水勋章荣誉会员勋章活跃勋章贡献勋章

发表于 2013-6-18 15:31 | 显示全部楼层
同样问题望高手解答

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表