房产测绘图形自动更新及面积解算方法研究

2022-07-11 08:41蓝陈玉
江西测绘 2022年1期
关键词:链表轮廓约束

蓝陈玉 许 晖

(1.宁波市鄞州区测绘院 浙江宁波 315000;2.宁波冶金勘察设计研究股份有限公司 浙江宁波 315000)

1 引言

房产测绘作为国家实施不动产登记和管理的主要工作,关系着人民群众的切身利益和社会的稳定发展。房产测绘的主要内容包括准备工作、房产调查、房产测量、成果验收等四个环节;而房产测量又包括房产平面控制测量、房产要素测量、房产图绘制、房产面积测算、房产变更测量等步骤,其中,房产变更测量作为房产测量中重要组成部分,是房产测绘的经常性工作之一。但是现有的房产更变工作程序繁琐、效率低下且容易出错。因此,有必要对现有的房产变更测绘工作进行改进,以实现及时、准确的房产变更测量[1-3]。

房产测绘的最终成品是房产图,而由于种种原因,房产图是动态变化的,为了确保房产图的现势性和真实性,对房产图的自动修改显得尤其重要。但目前于房产图的绘制大多数仍是采用内外业分离的工作模式,这给房产图测绘的工作效率和准确性带来一定的弊端。研究内外业一体的房产测绘模式,实现房产测绘图形自动更新及面积解算成为当前房产测绘研究工作的主要目的之一[4-8]。

本文根据房产测绘理论和个人经验,提出了基于尺寸驱动的图形自动更新与重绘算法以及基于轮廓跟踪的面积求解算法,来实现房产测绘图形自动更新及面积解算。

2 基本原理

图形的约束主要包括结构约束和尺寸约束两个部分,结构约束主要表示图形几何元素之间的拓扑结构关系,如平行、垂直、相切、相交等约束关系。一般而言,几何约束是没有方向的,且无向结构约束也比有向结构更加简单和易存储。因此,可用无向图来表达房屋图形的结构约束关系,并以邻接表的形式来对结构约束关系进行存储。尺寸约束是指图形元素相互之间的尺寸关系,如距离、半径、角度等。通常是可变的并以标注尺寸的形式出现,对于房产图而言,最常用的是水平尺寸约束和垂直尺寸约束,每一个尺寸约束包括尺寸对象、被尺寸约束图元、前驱图元以及后继图元四个要素组成。

本文主要采用基于尺寸链约束的方式进行图形自动更新。

设计思路:在进行房屋参数化设计的过程中,通过分析图形元素的相互约束关系,对图形元素的几何与拓扑信息进行提取。当对图形尺寸标注信息进行修改时,系统就会自动对图形参数进行求解和计算,得到更新后的图形。然后再基于轮廓跟踪的面积求解算法,得到更新图形后的面积。实现房产测绘图形自动更新,面积解算流程见图1。

图1 房产测绘图形自动更新及面积解算流程示意图

3 尺寸驱动的图形自动更新与重绘

3.1 算法流程

通过结构约束和尺寸约束构件好房屋参数化模型后,图形将进行自动更新和重绘工作流程见图2。

图2 尺寸链自动更新与图形自动重绘算法流程示意

其具体流程为:

(1)选择驱动图元(尺寸),获得驱动图元的尺寸类型及尺寸参数。

(2)修改驱动图元的尺寸值,分别计算出水平和垂直方向的尺寸驱动变量ΔX 和ΔY。

(3)识别驱动尺寸的类型,然后根据水平尺寸和垂直尺寸分别调用水平尺寸链表和垂直尺寸链表,并对尺寸链表进行拓扑排序,确定变动方向。

(4)通过搜寻尺寸链表和约束邻接表,找出受驱动尺寸变化影响相关联的图元对象及其尺寸。

(5)对相关图元对象的变动方式进行确认,计算得到关联图元对象的新参数。

(6)根据图元对象的新参数进行房屋图形自动重绘[9]。

3.2 应用分析

以某一房产户型图为例,随机对水平尺寸和垂直尺寸进行修改,得到修改后的尺寸值,经系统自动识别,分别调用对应的水平尺寸链表和垂直尺寸链表,建立起房屋的参数化模型;通过遍历尺寸链表和约束邻接表,检索得到与驱动尺寸相关联的尺寸和图元(图中红色表示修改的尺寸、蓝色表示关联尺寸),然后系统自动识别水平尺寸链和垂直尺寸链的变动方向(本文所用图形为水平方向向右,垂直方向向下),根据尺寸修改值获取端点坐标值,从而完成图形的自动重绘(见图3)。

图3 图形自动更新与重绘示意

4 基于轮廓跟踪的面积求解

4.1 算法流程

图形自动更新和重绘后,房屋图形的尺寸也随之发生变化,那么其面积也必然发生改变。因此,在完成图形的自动更新和重绘过后,还需要对面积进行重新解算。本文提出采用基于矢量图形的轮廓跟踪算法对重绘过后的房产图形面积进行自动解算和标注(见图4)。

图4 轮廓跟踪算法流程示意

其基本流程为:

(1)以一个闭合图形的某一线段为起始线段,分别确定轮廓起点和终点。

(2)以轮廓起点为开始点,以顺时针方向为跟踪方向,获得指向终点的向量1。

(3)将终点作为标记点,利用标记点去跟踪n 个后续点,可获得n 个由后续点指向标记点的向量2。

(4)分别计算向量1 和向量2 的顺时针夹角,得到n 个夹角值,将夹角最大时的向量作为闭合图形的公共边,并以向量2 作为下一个标记点,再利用这个标记点去跟踪后续点。

(5)重复第(3)、(4)步,直到下一个标记点为起点时,即可停止跟踪,得到图形的轮廓。

(6)最后再以公共边向量的起点作为下一次轮廓跟踪的起点,再重复(2)~(5)步,直到所有的轮廓都跟踪搜索完毕为止[10]。

4.2 算法测试

选取直线段AB 作为起始线段,A 为起点,B 为终点,记为向量AB,以A 点为轮廓起点开始顺时针方向搜索,以终点B 为标记点,得到以B 点出发的三个向量BE、BG、BC、分别计算得到向量AB 与向量BE、BG、BC 之间的顺时针夹角,比较得到最大的夹角向量为AB 与BC,那么向量BC 即为闭合图形的公共边;随后,再以C 点为标记点,找到以C 点为出发点的两个向量CD 和CH,比较两者与向量BC的顺时针夹角大小,得出向量CD 为公共边;接下来,再以D 为标记点,重复之前的步骤,找到向量DA 为公共边,从而得到一个闭合轮廓ABCD。以此类推,以B 点最为起始点,可分别找到两个闭合轮廓BGHC 和BEFG(见图5),从而完成整个房屋图形的结构分解,然后采用坐标解析法,分别计算每个闭合轮廓的面积:

图5 基于轮廓跟踪法的面积解算示意图

式中,S 表示面积/m2;Xi 表示某一房角点的横坐标/m;Yi 表示某一房角点的纵坐标/m。将每个闭合轮廓房角点提取到的坐标信息输入式(1)和式(2),即可得到每幢房屋的面积大小。

4.3 应用分析

以某栋两单元4 户型的户型图为例,首先对每个房角点进行编号(见图6)。调用轮廓跟踪算法,得到6 个闭合轮廓:1-2-3-4-17-5-6-7-8、2-10-9-4-3、10-11-12-13-14-15-16-17-4-9、11-18-19-20-21-22-23-24-25-12、18-26-27-20-19、26-28-29-30-31-32-33-21-20-27,然后将每个房角点的坐标值输入到公式(1)中计算得到6 个闭合轮廓的面积,将算法计算得到的轮廓面积与原始面积进行对比,结果见表1。从表中可以看到,每个闭合轮廓的面积计算结果与原始标注的面积大小基本一致,误差均小于0.01m2。表明采用轮廓跟踪算法进行房产图形的面积解算是合理可行的。

图6 轮廓跟踪及面积解算结果图

表1 面积解算结果对比

5 结束语

针对房产外业测绘效率低、易出错的问题,建立了基于几何约束的房产图形参数化模型。提出了基于尺寸驱动的图形自动更新与重绘算法以及基于轮廓跟踪的面积求解算法,实现了房产测绘图形自动更新及面积解算。计算结果与原始标注的面积大小基本一致,误差均小于0.01m2,表明本文提出的房产测绘图形自动更新及面积解算方法合理可靠。

猜你喜欢
链表轮廓约束
OPENCV轮廓识别研究与实践
如何用链表实现一元多项式相加
跟麦咭学编程
基于MTF规则的非阻塞自组织链表
高速公路主动发光轮廓标应用方案设计探讨
马和骑师
适当放手能让孩子更好地自我约束
C语言中指针链表的学习探讨
CAE软件操作小百科(11)
儿童筒笔画