arcgis分式标注

arcgis分式标注

ID:40738954

大小:1.33 MB

页数:9页

时间:2019-08-07

arcgis分式标注_第1页
arcgis分式标注_第2页
arcgis分式标注_第3页
arcgis分式标注_第4页
arcgis分式标注_第5页
资源描述:

《arcgis分式标注》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、也谈分数标注的问题经常被朋友问到分数标注的问题,如林班的标注。在坛子里搜索,大伙给出了很多方案。最常见的是勾选advance后,用VBA语言,利用“—”来划那条横线,或者利用对分子加下划线的形式加横线。下边看下具体例子【其中引用了很多以前坛子里大家滴成果】:1)如只想简单的标注成分数形式,那是很easy的,如以shape_length作分子,shape_area作分母,则其设置方式为:试验1:图1简单分数形式标注设置即,对分子[Shape_Length]字段加下划线,然后用vbnewline换行,再加上[Shape_Area]字段即可。1."

2、ND>"&[Shape_Length]&""&vbnewline&[Shape_Area]复制代码此时存在的问题是,有可能分子的长度小于分母,导致下划线长度不够,缺少美观,改进方式为,增加长度判断,并以"—"代替下划线,则此时将分子、横线和分母,作三行显示。其设置如下:试验2图2调整中间横线长度的设置用len([字段])来获取字段值的长度,如12.34,其长度为4,而123.45,其长度为5。用if..then..endif条件判断语句,使max取得最长字段的长度,作为"—"长度计算值。string(int(max/2),"—")的作

3、用为:绘制int(max/2)个"—",而int(max/2)是因为一个中文输入法下的"—"占据了2个英文字符的长度,因此要除2取整。1.FunctionFindLabel([Shape_Length],[Shape_Area],[DM])2.max=len([Shape_Length])3.ifmax

4、ne&[Shape_Area]7.EndFunction复制代码标注作如上设置,使其聚合:图3解决标注行间过于分散的设置完成上述设置,则纯粹的分子/分母的标注形式就完成了。但往往我们的需求不止于此,还需要在分数的左边再加一个字段,如图:试验3:图43个字段的分数形式设置即,在上一步的基础上,对分子,分母前分别加上与[DM]字段等长的空格,用s=string(len([DM]),"")表示。然后把[DM]字面放在横线所在行即可。1.FunctionFindLabel([Shape_Length],[Shape_Area],[DM])2.max=le

5、n([Shape_Length])3.ifmax

6、--------------------------------------------以上为坛子里大家的总结,以下为本人心得-------------------^-^为此,我试验了很多方法,把代码修改来修改去,始终无法达以完美的效果。突然意识到,这个问题跟代码无关,而应该跟arcmap内部的设置有关。的确,仔细看上述所有试验的标注发现两点:1)标注是默认居中对齐的(试验1、2可以看以明显效果)2)系统默认把我加的空格给忽略掉了。(这是导致试验3无效的主因)从上述着手,我找到两种不同的解决方案。对于10.1及以后版本中,maplex增加了一个细

7、小的新功能:图5去除标注内多余空格的设置在labelexpression界面,切换到maplex选项卡,发现有一个叫removeextraspacefromlabel的功能项,默认设置是勾选的。它的作用为:去除标注中无效的空格,所谓无效,是指标注行开始和末尾处的空格。即,我们不论在分子或分母(因为此时分子、分母都是单独成行的)的前或后任意加多少空格,都会被忽视掉。因此,去除勾选后,查看效果图如下:试验4:图6不勾选“去除标注内多余空格”设置的效果注意,此时为了对齐,做了很多小改动,如增加了s0变量,以及对s变量的修改,s=string(len([

8、DM])*2+s0,""),对[DM]长度*2的目的,也在于中文字符占两个字节长度而英文字符占一上字节长度。S0是取的是分子分母长度差的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。