藍(lán)陳玉 許 暉
(1.寧波市鄞州區(qū)測繪院 浙江寧波 315000;2.寧波冶金勘察設(shè)計研究股份有限公司 浙江寧波 315000)
房產(chǎn)測繪作為國家實施不動產(chǎn)登記和管理的主要工作,關(guān)系著人民群眾的切身利益和社會的穩(wěn)定發(fā)展。房產(chǎn)測繪的主要內(nèi)容包括準(zhǔn)備工作、房產(chǎn)調(diào)查、房產(chǎn)測量、成果驗收等四個環(huán)節(jié);而房產(chǎn)測量又包括房產(chǎn)平面控制測量、房產(chǎn)要素測量、房產(chǎn)圖繪制、房產(chǎn)面積測算、房產(chǎn)變更測量等步驟,其中,房產(chǎn)變更測量作為房產(chǎn)測量中重要組成部分,是房產(chǎn)測繪的經(jīng)常性工作之一。但是現(xiàn)有的房產(chǎn)更變工作程序繁瑣、效率低下且容易出錯。因此,有必要對現(xiàn)有的房產(chǎn)變更測繪工作進行改進,以實現(xiàn)及時、準(zhǔn)確的房產(chǎn)變更測量[1-3]。
房產(chǎn)測繪的最終成品是房產(chǎn)圖,而由于種種原因,房產(chǎn)圖是動態(tài)變化的,為了確保房產(chǎn)圖的現(xiàn)勢性和真實性,對房產(chǎn)圖的自動修改顯得尤其重要。但目前于房產(chǎn)圖的繪制大多數(shù)仍是采用內(nèi)外業(yè)分離的工作模式,這給房產(chǎn)圖測繪的工作效率和準(zhǔn)確性帶來一定的弊端。研究內(nèi)外業(yè)一體的房產(chǎn)測繪模式,實現(xiàn)房產(chǎn)測繪圖形自動更新及面積解算成為當(dāng)前房產(chǎn)測繪研究工作的主要目的之一[4-8]。
本文根據(jù)房產(chǎn)測繪理論和個人經(jīng)驗,提出了基于尺寸驅(qū)動的圖形自動更新與重繪算法以及基于輪廓跟蹤的面積求解算法,來實現(xiàn)房產(chǎn)測繪圖形自動更新及面積解算。
圖形的約束主要包括結(jié)構(gòu)約束和尺寸約束兩個部分,結(jié)構(gòu)約束主要表示圖形幾何元素之間的拓?fù)浣Y(jié)構(gòu)關(guān)系,如平行、垂直、相切、相交等約束關(guān)系。一般而言,幾何約束是沒有方向的,且無向結(jié)構(gòu)約束也比有向結(jié)構(gòu)更加簡單和易存儲。因此,可用無向圖來表達(dá)房屋圖形的結(jié)構(gòu)約束關(guān)系,并以鄰接表的形式來對結(jié)構(gòu)約束關(guān)系進行存儲。尺寸約束是指圖形元素相互之間的尺寸關(guān)系,如距離、半徑、角度等。通常是可變的并以標(biāo)注尺寸的形式出現(xiàn),對于房產(chǎn)圖而言,最常用的是水平尺寸約束和垂直尺寸約束,每一個尺寸約束包括尺寸對象、被尺寸約束圖元、前驅(qū)圖元以及后繼圖元四個要素組成。
本文主要采用基于尺寸鏈約束的方式進行圖形自動更新。
設(shè)計思路:在進行房屋參數(shù)化設(shè)計的過程中,通過分析圖形元素的相互約束關(guān)系,對圖形元素的幾何與拓?fù)湫畔⑦M行提取。當(dāng)對圖形尺寸標(biāo)注信息進行修改時,系統(tǒng)就會自動對圖形參數(shù)進行求解和計算,得到更新后的圖形。然后再基于輪廓跟蹤的面積求解算法,得到更新圖形后的面積。實現(xiàn)房產(chǎn)測繪圖形自動更新,面積解算流程見圖1。
圖1 房產(chǎn)測繪圖形自動更新及面積解算流程示意圖
通過結(jié)構(gòu)約束和尺寸約束構(gòu)件好房屋參數(shù)化模型后,圖形將進行自動更新和重繪工作流程見圖2。
圖2 尺寸鏈自動更新與圖形自動重繪算法流程示意
其具體流程為:
(1)選擇驅(qū)動圖元(尺寸),獲得驅(qū)動圖元的尺寸類型及尺寸參數(shù)。
(2)修改驅(qū)動圖元的尺寸值,分別計算出水平和垂直方向的尺寸驅(qū)動變量ΔX 和ΔY。
(3)識別驅(qū)動尺寸的類型,然后根據(jù)水平尺寸和垂直尺寸分別調(diào)用水平尺寸鏈表和垂直尺寸鏈表,并對尺寸鏈表進行拓?fù)渑判?,確定變動方向。
(4)通過搜尋尺寸鏈表和約束鄰接表,找出受驅(qū)動尺寸變化影響相關(guān)聯(lián)的圖元對象及其尺寸。
(5)對相關(guān)圖元對象的變動方式進行確認(rèn),計算得到關(guān)聯(lián)圖元對象的新參數(shù)。
(6)根據(jù)圖元對象的新參數(shù)進行房屋圖形自動重繪[9]。
以某一房產(chǎn)戶型圖為例,隨機對水平尺寸和垂直尺寸進行修改,得到修改后的尺寸值,經(jīng)系統(tǒng)自動識別,分別調(diào)用對應(yīng)的水平尺寸鏈表和垂直尺寸鏈表,建立起房屋的參數(shù)化模型;通過遍歷尺寸鏈表和約束鄰接表,檢索得到與驅(qū)動尺寸相關(guān)聯(lián)的尺寸和圖元(圖中紅色表示修改的尺寸、藍(lán)色表示關(guān)聯(lián)尺寸),然后系統(tǒng)自動識別水平尺寸鏈和垂直尺寸鏈的變動方向(本文所用圖形為水平方向向右,垂直方向向下),根據(jù)尺寸修改值獲取端點坐標(biāo)值,從而完成圖形的自動重繪(見圖3)。
圖3 圖形自動更新與重繪示意
圖形自動更新和重繪后,房屋圖形的尺寸也隨之發(fā)生變化,那么其面積也必然發(fā)生改變。因此,在完成圖形的自動更新和重繪過后,還需要對面積進行重新解算。本文提出采用基于矢量圖形的輪廓跟蹤算法對重繪過后的房產(chǎn)圖形面積進行自動解算和標(biāo)注(見圖4)。
圖4 輪廓跟蹤算法流程示意
其基本流程為:
(1)以一個閉合圖形的某一線段為起始線段,分別確定輪廓起點和終點。
(2)以輪廓起點為開始點,以順時針方向為跟蹤方向,獲得指向終點的向量1。
(3)將終點作為標(biāo)記點,利用標(biāo)記點去跟蹤n 個后續(xù)點,可獲得n 個由后續(xù)點指向標(biāo)記點的向量2。
(4)分別計算向量1 和向量2 的順時針夾角,得到n 個夾角值,將夾角最大時的向量作為閉合圖形的公共邊,并以向量2 作為下一個標(biāo)記點,再利用這個標(biāo)記點去跟蹤后續(xù)點。
(5)重復(fù)第(3)、(4)步,直到下一個標(biāo)記點為起點時,即可停止跟蹤,得到圖形的輪廓。
(6)最后再以公共邊向量的起點作為下一次輪廓跟蹤的起點,再重復(fù)(2)~(5)步,直到所有的輪廓都跟蹤搜索完畢為止[10]。
選取直線段AB 作為起始線段,A 為起點,B 為終點,記為向量AB,以A 點為輪廓起點開始順時針方向搜索,以終點B 為標(biāo)記點,得到以B 點出發(fā)的三個向量BE、BG、BC、分別計算得到向量AB 與向量BE、BG、BC 之間的順時針夾角,比較得到最大的夾角向量為AB 與BC,那么向量BC 即為閉合圖形的公共邊;隨后,再以C 點為標(biāo)記點,找到以C 點為出發(fā)點的兩個向量CD 和CH,比較兩者與向量BC的順時針夾角大小,得出向量CD 為公共邊;接下來,再以D 為標(biāo)記點,重復(fù)之前的步驟,找到向量DA 為公共邊,從而得到一個閉合輪廓ABCD。以此類推,以B 點最為起始點,可分別找到兩個閉合輪廓BGHC 和BEFG(見圖5),從而完成整個房屋圖形的結(jié)構(gòu)分解,然后采用坐標(biāo)解析法,分別計算每個閉合輪廓的面積:
圖5 基于輪廓跟蹤法的面積解算示意圖
式中,S 表示面積/m2;Xi 表示某一房角點的橫坐標(biāo)/m;Yi 表示某一房角點的縱坐標(biāo)/m。將每個閉合輪廓房角點提取到的坐標(biāo)信息輸入式(1)和式(2),即可得到每幢房屋的面積大小。
以某棟兩單元4 戶型的戶型圖為例,首先對每個房角點進行編號(見圖6)。調(diào)用輪廓跟蹤算法,得到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,然后將每個房角點的坐標(biāo)值輸入到公式(1)中計算得到6 個閉合輪廓的面積,將算法計算得到的輪廓面積與原始面積進行對比,結(jié)果見表1。從表中可以看到,每個閉合輪廓的面積計算結(jié)果與原始標(biāo)注的面積大小基本一致,誤差均小于0.01m2。表明采用輪廓跟蹤算法進行房產(chǎn)圖形的面積解算是合理可行的。
圖6 輪廓跟蹤及面積解算結(jié)果圖
表1 面積解算結(jié)果對比
針對房產(chǎn)外業(yè)測繪效率低、易出錯的問題,建立了基于幾何約束的房產(chǎn)圖形參數(shù)化模型。提出了基于尺寸驅(qū)動的圖形自動更新與重繪算法以及基于輪廓跟蹤的面積求解算法,實現(xiàn)了房產(chǎn)測繪圖形自動更新及面積解算。計算結(jié)果與原始標(biāo)注的面積大小基本一致,誤差均小于0.01m2,表明本文提出的房產(chǎn)測繪圖形自動更新及面積解算方法合理可靠。