摘 要:不動產(chǎn)宗地界址的恢復可簡化為根據(jù)四邊形的面積和邊長確定其對角線長度的問題。本文通過研究四邊形對角線長與面積間的關系,建立了求解四邊形對角線長的算法模型。在四邊形四個邊長和面積固定的約束條件下,經(jīng)迭代計算求解對角線長度。根據(jù)已知界址點的坐標用距離交會法計算四邊形的兩個待定點坐標,從而恢復宗地界址。
關鍵詞:宗地界址恢復;四邊形對角線長與面積關系;弦截迭代公式;距離交會
中圖分類號:P 20" 文獻標志碼:A
許多老舊的宗地圖受當時測繪技術條件的限制,只有邊長和面積,沒有坐標,也沒有可參照的地形地物。在新的不動產(chǎn)登記調(diào)查作業(yè)中,要恢復其形狀和界址點坐標的同時,還要保證面積邊長不變,手工調(diào)整難度很大。
任何形狀的宗地在大致確定各界址點位置后,均可將該宗地證載面積減去其他不可調(diào)整的固定部分面積后的剩余面積,歸算到一個四邊形上。在保證四邊形四個邊長一定,面積等于宗地剩余面積的約束條件下,通過迭代計算四邊形對角線長,從而將不穩(wěn)定的四邊形變?yōu)閮蓚€共邊的穩(wěn)定三角形,這樣就穩(wěn)定了該四邊形的形狀。根據(jù)四邊形與宗地其他部分的兩個銜接點坐標,按照距離交會法可以計算其他兩個頂點的坐標,從而恢復老宗地圖的界址點。
1 四邊形對角線長與面積關系
四邊形是一個不穩(wěn)定的圖形,邊長一定的四邊形其面積是無法固定的。固定四邊形的一條對角線后,四邊形就成了兩個共邊的穩(wěn)定三角形,四邊形也變得穩(wěn)定且具有唯一的固定的面積。
圖1為典型四邊形,根據(jù)海倫公式可以求出三角形123和三角形134的面積,這兩個三角形的面積之和便是該四邊形的面積,于是便得出四邊形的面積S與對角線長度d的函數(shù)關系,如公式(1)和公式(2)所示。
(1)
(2)
2 求解角線長度
當四邊形的面積一定時,公式(1)或公式(2)可求出對角線長度d或f。由于公式(1)和公式(2)不是線性方程,因此無法直接求解,須采用迭代法進行計算。
2.1 對角線長度的取值范圍及面積極值
在圖1中,設1、2頂點是固定的已知點,3、4頂點為待定點。當壓縮或拉伸對角線d時,面積S也將隨之變小或變大。
2.1.1 對角線長度的最小值
在圖1的基礎上,使頂點3向頂點1靠近,不斷縮短d。受4個固定邊長的約束,凸四邊形將會壓縮為凹四邊形,面積逐漸變小,較短的邊會向里折疊,最終有2條邊折疊在一條直線上,此時的圖形為一個小三角形加一段回頭線,d壓縮至最小(圖2)。
d的最小值dmin如公式(3)所示。
dmin=max(|d1-d2|,|d3-d4|)" " " " " " " " " " " " "(3)
式中:max()為取最大值函數(shù)。
根據(jù)海倫公式,可求出d最小時的面積,當dmin=|d1-d2|時,如公式(4)所示。
(4)
當dmin=|d3-d4|時,如公式(5)所示。
(5)
同理,計算f的最小值如公式(6)所示。
fmin=max(|d2-d3|,|d4-d1|)" " (6)
當fmin=|d2-d3|時,計算四邊形面積如公式(7)所示。
(7)
當fmin=|d4-d1|時,計算四邊形面積如公式(8)所示。
(8)
注意圖2,這個時候的f已經(jīng)跑到了四邊形的外面,因此這時的f變得沒有意義,就不能再用f去求解四邊形了。對角線d或f必須在四邊形內(nèi)部,當d或f跑到四邊形外面時,使得公式(1)或公式(2)不成立。
在d達到圖2所示的最小值后,若將f變小,則會使d也跑到四邊形的外面,而且這時的四邊形就會自相交,這在圖形的拓撲關系中也是不允許存在的。因此,在后續(xù)的研究中,本文僅考慮d或f在四邊形內(nèi)部時的情形。
2.1.2 對角線長度的最大值
在圖1的基礎上,將頂點3向外拉伸,使其與頂點1的距離增加,d不斷變大。受4個固定邊長的約束,圖形將會逐漸撐開變?yōu)橥顾倪呅?,在該過程中,面積逐漸變大。當變化到4個頂點共圓時,四邊形的面積達到最大極值。此時繼續(xù)拉伸d,四邊形將會變得瘦長,最終2條較短的邊被拉伸為一條直線,圖形變?yōu)橐粋€大三角形,d拉伸最大(圖3)。
此時得到公式(9)。
dmax=min(d1+d2,d3+d4)" " " " " " " " " "(9)
式中:min()為取最小值函數(shù)。
同理,計算f的最大值如公式(10)所示。
fmax=min(d2+d3,d4+d1)" " " " " " " (10)
2.1.3 四邊形面積的最大值
已有研究表明,當四邊形的4個頂點共圓時面積最大[1],最大面積如公式(11)所示。
(11)
如上所述,四邊形面積最大時四個頂點共圓,即為圓內(nèi)接四邊形。根據(jù)圓內(nèi)接四邊形對角互補的性質(zhì)可知,圖1中的∠123與∠341之和為π。設∠123為θ,則∠341為π-θ。設面積最大時1-3對角線長度為dSmax,根據(jù)余弦定理并顧及cos(π-θ)=-cosθ,得出公式(12)和公式(13)。
dS2 max=d12+d22+2·d1·d2·cosθ " " " " " " " " " " " " " " " " (12)
dS2 max=d32+d42-2·d3·d4·cosθ " " " " " " " " " " " " " " " "(13)
解上述方程組可得公式(14)。
(14)
同理可得,計算面積最大時2-4對角線的長度如公式(15)所示。
(15)
2.2 構建迭代模型
2.2.1 S(d)與S(f)函數(shù)曲線的特性分析
由上文可知,當d或f在四邊形內(nèi)部時,將其作為2個三角形的共邊,以此計算四邊形的面積才是有意義的。在觀察對角線d變化過程中發(fā)現(xiàn),d與f是聯(lián)動的關系。在d和f均在四邊形內(nèi)部的區(qū)間內(nèi),d變大f必然變小。反之,f變大d就變小。在該區(qū)間內(nèi),d與f是互替的關系,即求解d與求解f可以得到相同的四邊形。
當d拉伸至最大(大三角形)時,f還有繼續(xù)變小的可能。當d為最大值時(如圖3所示),頂點2繼續(xù)向頂點4靠近,圖形將變形為凹四邊形。f繼續(xù)變小,圖形最終會穩(wěn)定在一個帶回頭線的小三角形上。此時d已經(jīng)在四邊形外且開始變小。在該區(qū)間內(nèi),d失去其意義,根據(jù)f來確定四邊形的形狀。反之,當f拉伸至最大,d仍繼續(xù)變小時,f也失去意義,須根據(jù)d來確定四邊形。這兩個區(qū)間是d與f的互補區(qū)間。典型的四邊形對角線長度與面積關系曲線如圖4所示(為清楚地說明d和f兩個對角線的聯(lián)動關系,將f軸的方向指向了與d相反的左邊)。
結合圖4,總結四邊形的S(d)曲線和S(f)曲線特性,得出以下結論。1)隨著對角線長度的值由小變大,四邊形面積會經(jīng)歷一個由小變大、達到極值后再由大到小的過程。在上升區(qū)間或下降區(qū)間內(nèi)S(d)和S(f)都具有單值屬性,因此在各自的上升區(qū)間或下降區(qū)間內(nèi),給定S就可以迭代出d或f。2)S(d)的下降段(粗虛線部分)與S(f)對應的上升段(細實線部分)是完全等效的,同一個面積值,二者計算的四邊形完全一樣。反之,S(f)的下降段(細虛線部分)與S(d)上升段(粗實線部分)對應部分也是這樣。在上述區(qū)間內(nèi),當面積一定時求解d與f可以得到相同的四邊形,二者可以互替。3)對比圖2與圖3,Sdmin≤Sdmax,Sfmin≤sfmax。即圖4曲線的上升區(qū)間的面積值完全可以涵蓋下降區(qū)間的面積值。
由上述分析可以看出,將S(d)和S(f)的上升段(各自的實線部分)合并在一起而忽略其下降段(各自的虛線部分),就能得到一個完整的曲線圖。當設計程序時,僅考慮S(d)和S(f)的上升段,會使解算模型變得較為簡單。另外,由圖4可以看出,S(d)和S(f)的下降段比較陡,d或f的誤差對S的影響也會較大。因此,僅用S(d)和S(f)上升段的另一個優(yōu)勢可獲得較好的精度。
若Sdmin≤S≤Smax,則可以用S(d)函數(shù)在dmin≤d≤dSmax區(qū)間迭代d的目標值,以此得到四邊形的第一組解。若Sfmin≤S≤Smax,則可以用S(f)函數(shù)在fmin≤f≤fSmax區(qū)間迭代f的目標值,以此得到四邊形的第二組解。若S在Sdmin和Sfmin間,則只能有一組解。
2.2.2 迭代公式
當四邊形邊長和面積確定后,要根據(jù)公式(1)和公式(2)分別迭代1-3對角線長度和2-4對角線長度。
假定對角線長度為x,根據(jù)公式(1)或公式(2)即可得出四邊形面積的計算值S(x)。設四邊形的給定面積為S,則面積殘差為:v(x)=S(x)-S。根據(jù)不動產(chǎn)調(diào)查技術規(guī)程,面積精度為0.01,因此,將面積殘差的容許值ds(面積容差)設定在比其小10倍的0.001。當殘差大于容差時,通過增加或減少x值,再次計算殘差,直至殘差小于或等于容差為止,這樣即可迭代出x的目標值d或f。
實際計算時,采用弦截迭代公式,計算過程如公式(16)所示[2]。
(16)
弦截迭代公式需要兩個初值:x0和x1,這兩個初值均不能超過目標值。v0和v1是根據(jù)兩個初值計算的面積殘差。當?shù)鷇時,x0=dmin,當?shù)鷉時,x0=fmin。x1=x0+dx,其中dx為一微小變化量。
要保證dx引起的面積變化量小于容差。以迭代d為例,由圖1和圖3可以看出,當f最大時,d的變化對面積的影響最大,可表示為ds=dx·fmax,因此取dx=ds/fmax。同理,當?shù)鷉時,dx=ds/dmax。由于設定面積容差值時已經(jīng)留有充分冗余,因此求出的初值不會超過目標值。
2.2.3 迭代過程
以迭代對角線d為例。
確定兩個初值:x0=dmin、x1=x0+dx,其中dx=ds/fmax,ds=0.001。
計算初值的四邊形面積殘差:將d=x0、d=x1 代入式(1),計算d取兩個初值時的四邊形面積S(x0)、S(x1),然后按照殘差公式v(x)=S(x)-S計算四邊形面積的兩個殘差:v0=v(x0)、v1=v(x1)。
將兩個初值x0、x1和兩個殘差v0、v1代入公式(14)計算第一次迭代值x,并按殘差公式計算四邊形面積殘差v。
若vlt;ds或xgt;=dSmax則結束迭代,取d=x;否則x0=x1,v0=v(x0),x1=x,v1=v(x1)重復公式(2)~公式(4)。
3 計算頂點坐標
計算對角線d和f后,根據(jù)頂點1和2的坐標,用距離交會法可求出頂點3和4的坐標。距離交會法可以計算兩個相交圓的交點坐標。以交會頂點3(x,y)為例,已知點1(x1,y1)和點2(x2,y2)到頂點3的距離分別為r1和r2,通過求解兩個圓的聯(lián)立方程即可得到交點坐標(x,y),如公式(17)所示。
(17)
式中:;
r2=(x2-x1)2+(y2-y1)2。
需要說明的是,兩個相交圓將會有兩個交點,其中一個交點與圓心構成的三角形1-2-3為順時針,另一個則為逆時針。宗地圖中的界址點是按順時針進行編號的,因為當對圖1所示的四邊形的頂點和邊長進行編號時也是采用的順時針,所以公式(17)所取的是順時針的那個解(將b反符號后是逆時針的那個解)。
4 計算機程序?qū)崿F(xiàn)過程
計算機程序?qū)崿F(xiàn)過程有以下步驟。1)拾取已定的1、2點坐標,同時反算邊長d1,錄入面積和其他3個邊長。2)根據(jù)四邊形“任意三邊之和大于第四邊”,檢查錄入的邊長數(shù)據(jù)的合理性。若不合理,則終止。3)計算dmin、Sdmin、fmin、Sfmin、Smax、dSmax、fSmax、dmax、fmax,同時求出面積的最小值:Smin=min(Sdmin,Sfmin)。4)根據(jù)面積的上下限,檢查錄入面積數(shù)據(jù)的合理性。若不合理,則終止。5)迭代計算求出d和(或)f。6)根據(jù)距離交會法計算待定頂點坐標。7)在CAD中展繪計算結果。
當解算結果有兩組時,須人工判別最合適的結果。
5 結語
宗地界址恢復作業(yè)時,首先將能夠確定的宗地界址繪制在CAD圖上,其次將剩余面積歸算到一個待定的四邊形上,借助計算 邊長和宗地剩余面積確定待定的兩個頂點,最后恢復所有宗地界址點。
參考文獻
[1]王兵權.論邊長確定的四邊形面積最大值定理[J].中學教研(數(shù)學),2010(9):25-26.
[2]喻文建.數(shù)值分析與算法[M].2版.北京:清華大學出版社,2015.