基于工厂化制图的林地现状图批量输出方法研究

2020-04-25 01:04任蓝翔阳胜男胡中岳邹泽林
中南林业调查规划 2020年4期
关键词:图幅格网制图

文 敏,任蓝翔,阳胜男,胡中岳,邹 琪,邹泽林

(国家林业和草原局中南调查规划设计院,长沙 410014)

林业制图是林业信息化过程不可缺少的环节,也是林业调查规划设计的重要过程。建设项目使用林地的审核审批是实行林地总量控制和定额管理的重要措施,是为贯彻森林法合理节约使用林地的重要抓手。根据国家林业局第35号令《建设项目使用林地审核审批管理办法》、林资发〔2015〕122号《国家林业局关于印发<建设项目使用林地审核审批管理规范>和<使用林地申请表><使用林地现场查验表>的通知》文件的要求,原国家林业局发布了《建设项目使用林地可行性报告编制规范》[1],对建设项目使用林地现状图的制作提出了具体要求。使用林地现状图是建设项目使用林地可行性报告的重要组成部分,也是对项目用地范围使用林地情况的直观体现,其正确与否,直接影响到建设项目使用林地的审批。因此在技术上应简化步骤,统一操作流程,减少错误。

在实际工作中,对于铁路、公路、风电等线性建设项目使用林地现状图,主要存在的问题有:线性建设项目由于比例尺及作图精度等要求,图幅数量多达几十张甚至上百张,如需要一幅一幅制作,耗时长,难度大,且易出错,甚至标准不统一;表格标注法难以随图幅变化而动态变化,需要分幅调整表格标注,耗时、易出错;在遇到现状图某因子需要修改时,难以批量修改,即使保存了多个ArcMAP文件,仍旧需逐幅图修改[2-4]。本文以某铁路建设项目使用林地现状图为例,基于数据驱动工具和工厂化制图插件,对批量输出使用林地现状图方法进行研究,实现了批量出图。需要的软件为ArcGIS 10.2.2和对应版本的mapping production插件。

1 数据收集与预处理

项目制图需要收集的数据为项目区用地范围、项目区涉及的地形图或遥感影像、森林资源管理一张图、行政界线。

数据预处理主要包括栅格数据的预处理和矢量数据预处理。栅格数据的预处理主要是对收集到的遥感影像进行配准、校正、融合、拉伸。对地形图进行地类配准。矢量数据预处理包括项目区用地范围及项目区使用林地小班图层的处理。项目区用地范围通常为CAD格式数据,需通过ArcGIS的导出及要素转面功能将项目区用地范围处理成面要素类型的shp格式。林地小班图层通过项目用地范围与森林资源管理一张图相交后生成,并删除非林地要素,并按需标注的字段添加字段,填写属性。

2 方法简介

2.1 数据驱动

数据驱动工具是通过创建索引图层要素,将整个图幅按比例尺和出图页面分割成若干图幅。通过对索引要素进行遍历,能实现图幅的批量出图,保证了制图幅面及标准的统一。该工具包括格网索引要素和带状地图索引要素工具[5]。本文选择创建格网索引要素工具,输入的数据选择项目用地范围,比例尺设置为1∶5000,先创建该比例尺下的接图表,再通过数据驱动工具,实现图幅的自动化加载。

2.2 工厂化制图

在使用林地现状图制图中,由于小班数量多,常规标注会导致标注互相压置,并对图形产生遮盖,难以满足制图要求。而利用标注转注记工具,通过人工调整耗时耗力,并且如果数据因某些原因需修改,那么每一次都得重新调整。而mapping production插件工具能实现表格动态加载功能,根据数据库数据的变化而变化,从而实现动态加载。该工具是由Esri公司开发,不同版本的ArcMAP对应不同版本的mapping production插件[6-7]。本文基于ArcGIS 10.2.2版本的对应的mapping production插件,实现表格动态加载。

3 批量输出使用林地现状图流程

批量输出使用林地现状图流程主要包括制图页面设置、数据驱动页面设置、添加标注、输出现状图4个步骤。

3.1 制图页面设置

制图页面的设置主要包括出图大小、标题、图幅号、指北针、比例尺、图例、调查人、制图人、审查人、制图单位、制图日期。出图大小的设置主要通过页面和打印设置中大小和方向来设置,本次选择A3大小,横向。设置好出图大小后,依次插入标题、图幅号、植被针和比例尺。图幅号通过插入动态文本的方式,可实现图幅号随着图幅变化而变化,不用手动修改,具体方法为【插入】—【动态文本】—【数据驱动页面页码】,图幅号一般可置于右上角。再依次在图幅左下角插入调查人、制图人、审查人,右下角插入制图单位、制图日期。按图1所示,调整好各项制图元素的位置。

图1 制图页面设置

加载制图需要的各项图层,项目小班图层各地类的颜色填充按照《建设项目使用林地可行性报告编制规范制作》,并保存为内置样式,方便以后制作类似现状图时调用。项目区行政界线图层加载后,选择村界对应样式,并标注县乡村名。森林资源一张图加载后,标注林地落界小班号。加载制图需要的地形图或遥感图底图,进行配准。图例中可提前将各要素调整设置对齐,实现图例随图层的变化而自动变化。保存好制作完成的制图页面,设置相对存储路径,也可作为模板方便其他项目制图使用。

3.2 数据驱动页面设置

按出图比例尺创建,调整格网,选择数据驱动工具。在【系统工具箱】中找到【数据驱动页面】中【格网索引要素】或者【带状地图所索引要素】工具,点击格网索引要素工具,打开对话框,输出要素填写创建的格网存储路径及名称、输入要素选择项目用地范围,将使用页面单位和比例复选框打上“√”,点击确定,即可生成格网。如图2所示,根据用地范围位置调整格网使用地范围数据位置在格网中间。打开数据驱动工具,点击【设置数据驱动页面】,打开对话框,【定义】选项卡,将启用数据驱动页面打上“√”,图层选择创建的格网,【范围】选项卡中大小选100%,指定使用选百分比。如图2所示。

图2 格网索引要素设置

3.3 添加标注

根据《建设项目使用林地块可行性报告编制规范》(LY/T 2492—2015),使用林地现状图标注可采取分式符号标注和表格标注两种方法。标注的主要因子应至少包括小班序号、面积、现状地类、森林类别和林地保护等级五项因子。本文分别介绍表格标注法和分式注记法两种方法。

3.3.1 表格标注法

常规分式标注会导致标注互相压置,并对图形产生遮盖,难以满足制图要求。而采取分式标注利用标注转注记工具,需耗费大量人工调整,耗时耗力,并且如果数据因某些原因需修改,那么每一次都得重新调整,人工粘贴表格标注法易出错、耗时长。而mapping production插件工具能实现表格动态加载功能,根据数据库数据的变化而变化,从而实现动态加载。具体步骤如下:

1)插入动态表格:点击【插入】—【Graphic Table Element】,打开New Table对话框,选择 Item to Row,点击Wizard。

2)设置表格格式:打开Set Table Format 对话框,【Width】选项卡下选择【Auto Fit cells】,表格的宽度会根据字段宽度的调整而调整。【Height】选项卡下选择【Table Design】,【Size】选择500,默认值为100,当图幅中字段记录数较多时,不能完全显示,建议填大一点。并勾选Make content items equal ,勾选Auto Wrap Columns and Rows,选择Header and Footer on each row or column。点击【下一步】。

3)选择数据:打开【Select data sources from the list】对话框,选择【林地小班】图层,勾选Always keep table dynamically synchronized with data frame(随着格网的变化而变化数据),勾选Define Filters,点击【下一步】。

4)选择标注字段:打开【Defining table fields】对话框,选择要在现状图中的显示的字段,小班序号、小班面积、地类、森林类别、林地保护等级等字段,并按顺序依次排列,勾选show Field Aliases in Table Header(显示字段别名),点击【下一步】。

5)设置过滤条件:打开【Defining filters】对话框,选择【林地小班】,点击【Filter】,打开【Data Filters】对话框,【Base Selection】选项卡选择【Visible Extent】,勾选Honor Definition Query,点击【Add Filter】-【Sorting Filter】,打开【Sort Options】对话框,点击【Add Table Fields】,打开【Table Fields Selector】对话框,点击【使用林地地块序号】,依次点击【OK】,【完成】。

6)完善表格:双击生成的动态表格,会出现最后一行空行,需要删除。打开【Table Format】对话框,选择【Table Format】选项卡,点击【Table Design】,打开【Item To Row Table Design】对话框,选择f1,点击【Table Layout】—【Delete】—【Rows】,依次点击【OK】,【确定】。

7)表格对齐图框:为保证每一个生成的标注表格都位于图框左下角,双击生成的动态表格,打开【Table 属性】对话框,选择【大小和位置】选项卡,锚点选项中选择图框左下角,该设置使动态表格的左下角与图框左下角对齐。

3.3.2 分式标注法

选择项目小班图层,双击打开图层属性对话框,选择标注选项卡,在表达式中填入如下表达式:""& vbNewLine & [地类] & "-"& [森林类别] &"-"& [林地保护等级],并进行标注样式美化,点击应用。该方法标注会导致分式标注压盖及某些标注不显示。主要可通过两种方法改进,Maplex引擎标注及设置偏移量等调整或者将标注转为注记,通过手动移动使标注不压盖图层。但由于线性项目的小班数量较多,手动移动需耗费较长时间,且属性每修改一次,均需重新移动标注。因此在较多小班时,该方法的效率会低于表格标注法。

3.4 输出现状图

现状图输出有两种方式可选择,分别为pdf格式和jpg格式。如采取分式标注法,则可以选择导出pdf格式。选择动态表格标注法,应采取Python代码的方式,逐幅导出。

3.4.1 导出pdf格式

在ArcMAP菜单栏点击【文件】—【导出地图】,打开导出地图对话框,保存类型选择pdf,【选项】区域选择页面,【页面】选择全部,导出单个pdf文件,也可根据需要按页面范围导出单个pdf文件。如图3所示。

图3 导出pdf格式示例

3.4.2 导出jpg格式

在ArcMAP菜单栏点击【地理处理】,选择【Python】,打开Python编辑器,输入图4所示代码,敲击两次【Enter】键,程序即可运行,批量出图。

图4 导出jpg格式代码

代码中"C:Users10251Desktopwmaa"+str(pageNum)+".jpg"为导出的现状图存储路径,resolution=400表示输出的现状图分辨率为400。

4 结语

1)本文基于数据驱动工具和动态表格,实现了图幅号及出图页面的动态化加载,保证了制图图幅标准统一,基于Python代码实现了自动出图,减少了人工操作,提高了工作效率,保证了出图标准统一。

2)相比较分式标注和人工粘贴表格标注法而言,基于工厂化制图插件(mapping production)的动态表格标注法,实现了小班注记随页面小班的变化而变化,解决了实际工作中分式标注法需大量人工调整避免压盖的问题、人工粘贴表格标注法易出错、耗时长的问题。

3)基于数据驱动和工厂化制图插件输出使用林地现状图的方法研究也可以运用于采伐设计、造林设计其他类型的林业专题图制作,只需将使用林地小班图层替换成相应图层,并修改相应比例尺即可。

猜你喜欢
图幅格网制图
基于ArcEngine自动生成1∶5万地形图标准分幅图框
无声手枪如何消音?
遥感数据即得即用(Ready To Use,RTU)地理格网产品规范
生态格网结构技术在水利工程中的应用及发展
实时电离层格网数据精度评估
地形图空间信息提取方法研究
习近平的战疫日志
基于Arcpy的地形图接图表快速生成方法
极区格网惯性导航性能分析
明天我们将生活在怎样的城市?