基于.NET在AE环境下实现地块示意图快速输出
2018-03-15姜如波
姜如波
(蚌埠市勘测设计研究院,安徽 蚌埠 233000)
1 引 言
农村土地承包经营权确权登记颁证工作是进一步稳定和完善农村土地承包关系,解决承包地块面积不准、四至不清、空间位置不明、登记簿不健全等问题。把承包地块、面积、合同、权属证书全面落实到户,实现“四相符”和“五到户”,并进行登记资料归档,健全农村土地承包管理档案,建立集影像、图形、权属为一体的农村土地承包管理信息数据库和管理信息系统,有利于创新农村社会管理,维护农民合法权益,为农业现代化和农村和谐稳定提供体制保障。
农村土地确权工作作为一项复杂工程,涉及面广、量大、耗时耗力,整个确权过程要求查清每一宗承包地的空间位置,面积,四至,权属等信息,这是一项艰巨且复杂的工程,在工程后期,资料入库、归档、验收阶段会产生大量的图件,报表等资料,依靠人工完成费时费力,且容易出错。作者结合实际工作经验,在AE环境下,采用C#.NET[1]技术二次开发程序,实现Shape格式的地块分布图批量导出承包地块示意图,高效完成承包地块示意图的制作、入库,归档、验收工作[2]。
2 程序的工作原理及技术流程
2.1 地块示意图基本要求
(1)本地块注记内容:承包方代表名称、地块编码、实测面积,宋体、字高3.0,并且本地块范围用晕线绘出。
(2)其他地块注记内容:承包方名代表称、地块编码,宋体、字高2.5。
(3)地块示意图中还应标出,发包方编码、地块比例尺、地块四至、指北针,绘图员、检查员及日期。
2.2 数据准备
(1)凤阳县农村土地承包经营权地块图形数据(shp文件)。
(2)凤阳县农村土地承包经营权属性数据库(MDB文件)。
2.3 设计流程
依据凤阳县农村土地承包经营权属性数据库中CBFBM(承包方编码)字段提取程序工作清单,按CBFBM在图形数据中遍历所有地块,按户逐地块进行缓冲交叉分析、拓扑分析,获取地块的界址点、界址线、四至图斑[3]等信息,将获取的地块要素存储到临时数据集;随后将临时数据集中的要素分层绘制在PageLayout的Mapframe中,并按规定尺寸自动调整计算Mapframe中图片的比例尺,最后进行地块的权利人、编码、四至等信息标注并输出成果至Excel文档中[4],流程如图1所示。
图1 技术流程图
3 程序实现
按照上节所述思路,程序开发以.NET Framework 4.0为运行平台,以C#为编程语言在ArcGIS Engine 10.0平台上进行二次开发编写工具,实现地块示意图的快速输出,该方法主要包括4个技术环节:中心地块的矢量和权属数据的读取、四至地块的矢量和权属数据的读取、地块注记的标注和地块示意图的输出。软件界面如图2所示。
图2 软件操作界面
3.1 中心地块数据的读取
依据数据库中的承包方编码遍历矢量数据中的地块,提取地块的几何图形(Polygon)和权属数据(包括地块权利人、地块编码、地块面积等)并写入到临时数据集中。
3.2 四至地块数据的读取
首先提取程序当前选中的中心地块的几何形状,在Geodatabase地理数据模型基础上,采用Buffer方法对它进行面缓冲区分析[5],取得缓冲区的几何形状,再新建一个空间过滤器(SpatialFilter),采用Intersects(相交)方法对地块要素进行查询操作,提取与缓冲区相交的四至地块,根据出图需要提取四至地块的数据(几何形状、权利人、地块编码等),并存储到临时数据集中。主要代码如下:
ISpatialFilter pSpatialfilter=new SpatialFilterClass();//创建空间过滤器
pSpatialfilter.Geometry=pGeometry;
pSpatialfilter.SpatialRel=esriSpatialRelEnum.esriSpatialRelIntersects;
IFeatureCursor FeatureCursor=pFeatureClass.Search(pSpatialfilter,false);//相交地块索引
3.3 地块注记的标注
要素注记是地块示意图的主要组成部分,用于描述地块权利人、面积、四至等信息。注记与对应的地理要素的关系非常密切却又不固定。中心地块的标注相对简单,首先求取地块的中心坐标,利用PageLayout控件的FindElement-ByName方法,根据要素名称提取临时数据集里数据并注记到地块的中心位置,而标注四至地块时,由于地块有大有小、形状不定,为了避免四至地块的注记与地理要素对应关系不正确、压盖地块范围线的问题,可以采用Intersect(求交)方法取得地块与中心地块缓冲区重叠区域,将重叠区域的中心坐标定义为标注的定位点,这样可以使四至注记围绕在中心地块的周围。主要代码如下:
//求取重叠区域
ITopologicalOperator pTopological=(pSubFeature.Shape) as ITopologicalOperator;
IGeometry pGeoIntersect=pTopological.Intersect(pFeature.Shape,esriGeometry2Dimension);
3.4 地块示意图的输出
采用PageLayout控件将临时数据集里的地理数据放置到打印试图的Mapframe框架中,进行地块比例尺调整并标注地块权属数据,接着采用AE中的Export对象实体将其转换成JPG图片格式[6],导出到Excel文档中,输出符合需求的成果,如图3所示。
图3 承包地块示意图成果
4 结 论
本文介绍了农村土地确权承包地块示意批量快速导出工具的工作原理及方法,利用ArcGIS Engine 强大的空间分析能力和制图能力,采用C#.NET语言二次开发工具,实现承包地块示意图的批量快速生成。该工具已成功应用于凤阳县农村土地承包经营权确权登记颁证项目的地块示意图生产制作中,可进行地块示意图的自动化生产,提高了工作效率[7],确保了示意图的准确、美观,成果满足规范及技术设计书的要求,高效完成了承包地块示意图的制作、入库、归档、验收工作,体现了GIS技术在计算机制图领域更深入的应用,也为其他类型项目开发类似软件提供借鉴及参考。
[1] 齐立波. C#入门经典(第6版)[M]. 北京:清华大学出版社,2012.
[2] 安徽省档案局关于印发安徽省农村土地承包经营权确权登记颁证档案管理办法(试行)的通知[R]. 皖农经〔2014〕208号.
[3] 刘慧慧. 基于ArcGIS的宗地四至识别的研究[J]. 测绘技术装备,2016,18(1):37~39.
[4] 杨大兵,王春波,陈建平等. 基于ArcEngine组件技术的宗地图自动生成研究[J]. 勘察科学技术,2010(2):31~35.
[5] 刘德刚,叶良茂,周刚. 基于ArcGIS GeoDatabase的宗地拓扑模型建模与实现[J]. 微计算机信息,2007,23(24):155~156.
[6] 俞松,刘耀林,苗作华. MapObjects在地图打印中的应用研究[J]. 测绘通报,2006(5):44~46.
[7] 陈鑫祥,张新长. 地籍管理中宗地图自动输出的设计与实现[J]. 地理空间信息,2008,6(3):125~128.