测绘地理信息   2018, Vol. 43 Issue (4): 124-126
0
ObjectARX宗地四至提取算法的实现[PDF全文]
张建新1, 王良民1, 汪显如1    
1. 河南省地矿局测绘地理信息院,河南 郑州,450006
摘要: 针对目前不动产权籍调查工作的宗地四至提取环节,结合几种不同算法模型的优缺点,提出了根据宗地界址点坐标计算四角点,外向缓冲分析提取四至的新算法,缩短了计算时间,提高了提取的准确率,有一定的实用价值。
关键词: 不动产调查     ObjectARX语言     宗地四至     缓冲分析     提取算法    
Implementatin for Extraction Algorithm of Relative Locatin of Adjoining Parcels on ObjectARX
ZHANG Jianxin1, WANG Liangmin1, WANG Xianru1    
1. Institute of Surveying Mapping and Geoinformation of Henan, Zhengzhou 450006, China
Abstract: Aimed at the extraction link of adjoining parcels in the investigation of the current immovable property rights, combined with the advantages and disadvantages of several different algorithms, this paper puts forward a new algorithm that the external buffer analysis can be extracted to adjoining parcels according to the cases of boundary point coordinates calculation of four corners. It shortens the calculation time, improves the extraction accuracy, and has certain practical value.
Key words: real estate survey     ObjectARX language     relative location of adjoining parcels     buffering analysis     extraction algorithm    

目前,我国正全面开展不动产权籍调查工作,主要内容是集体土地所有权、使用权、承包经营权,具有范围广、工作量大、参与人员多、数据要求严格等特点。宗地是土地权属界址线封闭的地块,是地籍调查和土地登记的基本土地单元[1]。四至即每宗地四邻的名称[2],是描述宗地位置的重要参数,应准确填写相邻宗地的土地使用权人和所有权人名称,或道路、河流等相应地物、地貌名称[3]。大型宗地或特殊形状宗地四至的准确计算提取比较困难且标准不一。因此有必要进行优化。

邵晴晴等[4]先确定本宗地最小外接矩形,再根据顶点距离最小法判定界址点中的4个角点,最后根据界址线序列表寻找本宗地的相邻宗地,确定宗地四至。其缺点是宗地图形未做缓冲处理,如有些地区特殊规定:“在本宗地周边0.5 m范围内的宗地仍为其四至”,但该算法将会忽略此情况。郑江等[5]提出基于多边形最小外接矩形确定四至方位范围,而后通过缓冲区查询,找到与其相交的相邻多边形,获取相交区域及其中心点,最后判断中心点连线位于哪个方位范围,从而确定宗地四至的方法。其缺点是通过最小外接矩形确定4个角点的方法不够准确,如特殊宗地(如C字形),其中心点位于多边形外时,四至方位范围判断将会出现错误。田方方等[6]采用4方向锥形模型描述宗地的空间方向关系,并在此基础上,提出了中心点判断方法和垂足-中心点判断方法。首先,计算该宗地与相邻宗地最小垂距所在的界址线,再计算相邻宗地的中心点到界址线的垂足,根据垂足与中心点的方位关系,判断宗地间的空间位置关系。该方法的缺点是两相邻宗地最小垂距的计算较为复杂,且同样存在郑江等[5]算法的缺点。周玉国[7]利用FME2014软件,采用对现有图形内向缓冲分析、分4个方向平移后与原图形计算空间重叠关系的方法提取宗地四至。该方法由于采用内向缓冲分析、平移。因此位于4角点区域的四至提取存在盲区,且经过4次平移并叠置分析,计算效率较低。

1 设计思路

1) 首先,建立数据集,提取本宗地多边形所有端点(界址点)的平面坐标,计算每个端点的值(纵坐标(Y)+横坐标(X)和纵坐标(Y)-横坐标(X))进行比较,确定宗地的4个角点;再建立数据集,提取本宗地多边形所有线段(界址线),确定每条界址边所对应的方位,完成宗地四至范围的判别工作。

2) 对宗地多边形作向外缓冲(地区规定不同,一般为0.5 m)处理,与宗地图层内其他多边形要素进行叠加分析,查询与其相交的所有相邻多边形;获取缓冲区与相邻多边形重叠区域的中心点,计算距离中心点最近的界址线,根据界址线所处方位确定邻宗多边形的方位,将相邻宗地权利人名称写入本宗地的相应四至,完成本宗地四至的提取工作。其设计思路如图 1所示。

图 1 宗地四至提取设计思路 Fig.1 Design Idea of Extraction of Adjoining Parcels

2 四至方位范围的确定

以外业提交的南方CASS软件采集编辑形成的DWG图形为基础,完成宗地图层(JZD)面文件的拓扑检查和拓扑重建工作[8]。以宗地为单元建立数据集,提取所有界址点的平面直角坐标,计算多边形每个端点的(Y+X)和(Y-X)值并进行比较,选择max(Y+X)为东北角点、min(Y+X)为西南角点、max(Y-X)为西北角点、min(Y-X)为东南角点。同理,以宗地为单元建立数据集,提取宗地多边形所有线段(界址线)建立界址线序列表,将西北角点与东北角点之间的界址线外围区域定义为宗地四至的北至;西南角点与东南角点之间定义为南至;西北角点与西南角点之间定义为西至;东北角点与东南角点之间定义为东至。这样就完成了宗地四至方位范围的确定工作。其部分源代码如下:

voidGetMinMaxPoint(AcDbPolyline *pAcDbPolyline, AcGePoint3d & SouthwestPt, AcGePoint3d & NorthwestPt, AcGePoint3d & NortheastPt, AcGePoint3d & SoutheastPt)

{

    AcGePoint3dArray m_AcGePoint3dArray=GetPolyNodePoint(pAcDbPolyline);

    m_AcGePoint3dArray.append(m_AcGePoint3dArray.first());

    SouthwestPt=m_AcGePoint3dArray.first();

    NorthwestPt=m_AcGePoint3dArray.first();

    NortheastPt=m_AcGePoint3dArray.first();

    SoutheastPt=m_AcGePoint3dArray.first();

    for (int j=1;j < m_AcGePoint3dArray.length(); j++)

    {

            AcGePoint3d gePoint=m_AcGePoint3dArray.at(j);

            西南角

            if ((gePoint.X+gePoint.Y)<(SouthwestPt.X+SouthwestPt.Y))

            {

                    SouthwestPt=gePoint;

            }

            东北角

            if ((gePoint.X+gePoint.Y)>(NortheastPt.X+NortheastPt.Y))

            {

                NortheastPt=gePoint;

            }

            西北角

            if (gePoint.X-gePoint.Y<NorthwestPt.X-NorthwestPt.Y)

            {

                NorthwestPt=gePoint;

            }

            东南角

            if (gePoint.X-gePoint.Y>SoutheastPt.X-SoutheastPt.Y)

            {

                SoutheastPt=gePoint;

            }

        }

    }

3 缓冲分析

ObjectARX广泛应用了类的概念来简化代码结构,每一个类精确代表一个AutoCAD的组件[9],采用ObjectARX语言进行二次开发[10],根据不同地区有关宗地四至的规定,对宗地多边形作向外缓冲处理;再以宗地为单元,将向外缓冲后的宗地多边形与DWG图形内其他宗地多边形进行叠加分析,提取重叠区域并计算每个重叠区域的几何中心点后,在其周边搜索距离最近的本宗地界址线,作为判断邻宗与本宗地空间位置关系的依据。其具体思路是以重叠区域的中心点逐一向本宗地多边形所有界址线作垂足,选取最小垂距所在的界址线,根据此界址线所处方位确定中心点所在邻宗多边形的方位,将判明方位后的相邻宗地权利人名称写入本宗地的相应四至,当邻宗为空时,可根据项目特点,统一预赋值为空地或道路,逐宗地完成四至的全部提取工作。

//解算北至

if (TRUE)

{

    if (ptParam1 < ptParam2)

    {

        if (ptParam1 < m_Param && m_Param < ptParam2)

        {

            if (strBEIZHIList.Find(strQLRMC)==NULL)

            {

                strBEIZHIList.AddTail(strQLRMC);

            }

        }

    }

    else if(ptParam1>ptParam2)

    {

        if ((ptParam1 < m_Param && m_Param < endParam)||(m_Param>0 && m_Param < ptParam2))

        {

            if (strBEIZHIList.Find(strQLRMC)==NULL)

            {

             strBEIZHIList.AddTail(strQLRMC);

            }

        }

    }

}

4 应用分析

根据该算法编写的程序应用在河南省多个集体土地所有权、使用权、农村土地承包经营权项目数据库建设的属性录入环节。程序自动提取宗地四至后对照原始地籍调查表,采用人工逐一核对的方法进行检验,提取正确率达到85%左右(部分统计情况如表 1所示)。集体土地使用权、承包经营权宗地提取正确率较高的原因是宗地面积较小、图形简单,而所有权宗地面积一般较大、邻宗较多。因此宗地四至计算复杂。

表 1 宗地四至提取正确率统计 Tab.1 Correct Rate Statistics of Extraction of Adjoining Parcels

5 结束语

本文对目前不动产权籍调查中几种常用的宗地四至提取方法进行了分析,提出了根据宗地界址点坐标计算4角点,外向缓冲分析提取四至的新算法,特别是对大型宗地和特殊形状宗地提高了计算速度和准确率。同时根据该设计思路,还可完成宗地界址线的邻宗属性提取工作,减少内业录入的工作量,具有一定的研究价值。

参考文献
[1]
国土资源部.第二次全国土地调查技术规程: TD/T 1014-2007[S].北京: 中国标准出版社, 2007
[2]
郑振源, 张晓玲, 施引之, 等.土地基本术语: GB/T 19231-2003[S].北京: 中国标准出版社, 2003
[3]
朱留华, 邵凌志, 冯文利, 等.地籍调查规程: TD/T 1001-2012[S].北京: 中国质检出版社, 2012
[4]
邵晴晴, 朱福利. 一种宗地四至提取方法探讨[J]. 测绘地理信息, 2014, 39(4): 58-61.
[5]
郑江, 李曦凌, 李磊, 等. 一种宗地四至关系提取算法的实现[J]. 云南水利发电, 2015(5): 17-19.
[6]
田方方, 郭甲腾, 邓振民. 宗地四至提取方法的分析与研究[J]. 基层建设, 2017(2): 35-38.
[7]
周玉国. 基于FME的宗地四至信息的提取[J]. 地矿测绘, 2016, 32(1): 43-45. DOI:10.3969/j.issn.1007-9394.2016.01.014
[8]
金怡彬, 洪涛. 基于ArcGIS与FME的不动产登记数据整合与建库方法[J]. 测绘地理信息, 2017, 42(6): 88-90.
[9]
汪燕麟, 刘鸿飞, 王利华, 等. 基于DWG文件的图件坐标转换方法研究与实现[J]. 测绘地理信息, 2016, 41(6): 82-85.
[10]
武安状. ObjectARX 2008测量软件开发技术[M]. 郑州: 黄河水利出版社, 2013.