ArcGIS制图手册(4-8)限制标注的区域范围

上文介绍了关于标注键编号的相关操作,本文介绍一个更变态的需求:将标注限制在指定区域内(ExtentErase)。

在制作城市BaseMap过程中,通过制作城市区县级行政区划的ExtentErase,可以将图层标注限制在城市区县行政区划单位之中,防止与相邻城市融合过程中出现注记部分被覆盖的现象。

案例解析

ExtentErase的原理很简单,利用标注权重等级设置,将标注限制在行政区划范围内。首先,利用Feature Envelope To Polygon工具,根据城市范围生成包络矩形,用Erase工具擦除城市区,获取市区外的区域(称为ExtentErase),如图

再使用标注权重等级,给ExtentErase较大的权重值,标注会自动避让ExtentErase的边界,并在边界范围内显示,如图

实现过程

下面以某一区县为例,介绍ExtentErase的实现过程。

1.启动ArcMap,打开BaseMap模板,将数据源替换为区县数据,该模板中包含行政区划图层;

2.生成行政区划图层的包络矩形。在ArcToolbox中打开Feature Envelope To Polygon工具,输入要素选择“行政区划”图层,如图;

3.单击OK,生成面图层“区县级行政区划_FeatureEnvelopeToPol1”,行政区划图层的包络矩形,如图

4.擦除区县。打开Erase工具,输入要素选择“区县级行政区划_FeatureEnvelopeToPol1”,擦除要素选择“行政区划”图层,如图

5.单击OK,生成面图层“ExtentErase”,如图,空白部分为擦除的区县;

6.在BaseMap中套用ExtentErase数据,将ExtentErase图层数据源替换为步骤5中所制作的ExtentErase数据,如图

7.在MapLex中设置ExtentErase图层Weight Ranking。打开Labeling工具条,单击label Weight Ranking选项,弹出Weight Ranking 窗口,将ExtentErase图层的feature weighting 和polygon boundary weight值设为1000,如图;

8.单击OK,查看最终效果,如图。

通过将feature weighting 和polygon boundary weight值设成最大值1000,使得在区县行政区划内,标注不会压盖ExtentErase图层。上图中,浅蓝色的是ExtentErase,在区县行政单位范围里,标注不得溢出区县行政单位边界而覆盖ExtentErase图层,从而避免在相邻城市融合时,出现不必要的标注缺失和标注压盖问题。

参考

捷泰技术博客

手册目录

本手册的全部内容: ArcGIS制图案例手册

如果对本文有其他疑问,可以在本文下方留言,或者到 麻辣GIS问答 提问。
本站QQ群:291616564 麻辣GIS
微信公众号:malagis,扫描二维码直接关注。

打赏¥1

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论