吳 坤 李 繼
(林同棪國際工程咨詢(中國)有限公司,401121,重慶//第一作者,高級工程師)
線路里程、偏距與坐標互算在軌道交通設(shè)計中經(jīng)常遇到。線路專業(yè)經(jīng)常需要把線路中心線周邊一系列點提供給地勘單位進行鉆孔勘探。待勘點由建筑、結(jié)構(gòu)等專業(yè)確定。由于建筑、結(jié)構(gòu)等專業(yè)制圖比例并非1∶1 000,且不一定在原位制圖,所以只能將待勘點以里程、偏距的形式提供給線路專業(yè)。而在線路敷設(shè)前期,地勘單位無法以里程、偏距放樣,線路專業(yè)需將待勘點信息轉(zhuǎn)化成坐標,以便勘探定位。同理,地勘單位返回的勘探結(jié)果以坐標表示點信息,線路專業(yè)需將其轉(zhuǎn)化為里程、偏距形式反饋給各專業(yè)。
傳統(tǒng)做法是線路專業(yè)將各專業(yè)提供的待勘點里程偏距信息繪制于圖紙上,然后再一一查詢坐標,填寫表格;對于地勘單位返回的勘測結(jié)果,處理方式類似。線路專業(yè)需將待測點繪制在圖紙上,然后量出對應(yīng)的里程、偏距,填寫表格。此過程工作量十分巨大,且極易出錯。而國內(nèi)主流軌道交通線路設(shè)計軟件均無線路里程、偏距與坐標互算功能。因此,十分有必要開發(fā)一款線路里程、偏距與坐標互算的軟件。
通過程序互算里程、偏距與坐標,無法借助于圖形進行直觀判斷,傳統(tǒng)基于圖形的測量算法無法應(yīng)用。本文結(jié)合軌道交通線路基本知識,借助解析幾何手段和微分思想,著重研究線路里程、偏距與坐標互算的計算機算法。
無論已知線路里程、偏距計算點坐標還是已知點坐標計算里程、偏距,都必須已知線路數(shù)據(jù)。所謂線路數(shù)據(jù)是指線路的起點坐標、終點坐標、各交點坐標、各曲線半徑、緩和曲線長和斷鏈信息等。本文討論的所有內(nèi)容均建立在線路數(shù)據(jù)已知的基礎(chǔ)上。
線路還原是指通過已有的線路信息:起點坐標、終點坐標、交點坐標、曲線半徑、緩和曲線長、斷鏈等線路信息,計算出線路上每個直緩(或直圓)點、緩直(或圓直)點的坐標和里程。這樣,線路被分成若干段,每一段只包含單一的直線或曲線,方便后面進行里程和偏距的計算。計算方法可以查找道路勘測設(shè)計相關(guān)的書籍,這里不作討論。
線路已分成單純的直線或曲線段,為了計算方便且精確,首先判斷點的投影在線路的哪一段直線或曲線上。
如圖1所示,圖中有一個待求點P和線路的3個直線段,分別是A段、B段、C段。P′為P點在線路上的投影。為了判斷P點投影所在位置,用待求點P為頂點,3個直線段分別為對邊做三角形,判斷P點投影落在其中某一直線段上,圖1中,P點投影落在B段直線上,則∠B1、∠B2均為銳角。
圖1 待求點投影位置判斷圖(直線段)
用計算機計算時,先判斷待求點是否落在線路直線段上。如果找到待求點投影落在某一直線段上,即終止計算,進行下一步計算。如果待求點投影沒有落在直線段上,繼續(xù)判斷待求點投影是否落在曲線段上。
如圖2所示,圖中有待求點P和線路的2段曲線,分別是曲線M和曲線N。為確定待求點在哪一段曲線上,用待求點為頂點,以曲線為對邊做扇形。計算扇形半徑與曲線兩端點處切線所形成的夾角,即圖中的∠A2′與∠B1′。待求點投影落在A段直線和曲線M的交界位置時,∠A2=∠A2′=90°,待求點投影離開A段直線稍向曲線M移動微小距離d,都會導致∠A2′<90°。同理,待求點投影離開B段直線稍向曲線M移動微小距離d′,都會導致∠B1′<90°。由此可知,待求點投影落在某一段曲線上的充要條件是:該點與曲線形成的扇形半徑與曲線兩端點處切線所形成夾角為銳角。
圖2 待求點投影位置判斷圖(曲線段)
需要說明的是,當待求點投影剛好落在直線與曲線的交點上時,既可以認為該投影落在直線上,也可以認為該點投影落在曲線上。為方便計算,本文將投影認定為落在直線段上。
如果待求點投影落在直線段上,可以利用該點與直線段圍成的三角形求解。如圖3所示,三角形的3個頂點分別為:待求點P以及B1、B2,其中B1為緩直點(或圓直點),B2為直緩點(或直圓點)。此兩點的坐標已經(jīng)在線路還原步驟中計算得出。利用余弦定理和射影定理,可以求解投影點P′距B1緩直點(或圓直點)的距離D和線段PP′的長度L,B1緩直點(或圓直點)的里程加上D即為待求點投影的里程,L即為待求點偏距。
如果待求點投影落在第n個曲線段上,需要先把曲線離散成散點,并計算出每一個點的坐標。離散精度根據(jù)工程需要設(shè)置,一般取1.0 mm或0.5 mm,精度設(shè)為d。曲線上各點坐標的計算方法成熟,此處不贅述。分別計算曲線離散點與待求點的距離,距離最小的曲線離散點即是待求點的投影點,最小距離即是待求點的偏距。設(shè)該離散點的順序號為i,曲線起點里程為直緩點(或直圓點),則待求點投影的里程可以表示為:直緩點里程+id(或直圓點里程+id)。
以某條1 km長的曲線為例,按1 mm為精度離散,離散點有1×106個,離散點坐標全部按雙精度形存儲,其占用內(nèi)存為2×1×106×8字節(jié),約15.2 M,在計算機硬件突飛猛進的今天,15.2M的內(nèi)存對計算機運行不會造成明顯影響。
圖3 偏距和投影里程計算圖
當待求點投影落在直線段時,可以利用線路與某一基準線的夾角來判斷待求點在線路的左側(cè)或右側(cè),如圖4所示。
圖4 待求點位置判定圖(直線段)
圖5 待求點位置判定圖(曲線段)
已知里程與偏距計算該點坐標比較容易,除了知道待求點的里程與偏距外,還需要判斷待求點處于線路前進方向的左側(cè)還是右側(cè)。
線路還原的方法與作用同前文,此處不再贅述。
首先判斷待求點投影在線路的直線段還是曲線段上,以便采取不同的計算方法。由于里程已知,通過待求點里程與直緩(直圓)、緩直(圓直)點的相對位置,即可輕松判斷待求點投影位置。設(shè)待求點里程為H,若緩直點里程Hhz n(圓直點里程Hyz n) 當待求點投影P′落在直線上時,設(shè)該段線路前一個交點的交點號為n。利用交點n的曲線末端點緩直點(或圓直點)和交點n+1曲線起端點直緩點(或直圓點)的坐標,求出線路前進方向與X軸正向夾角α,角度范圍0~2π。具體求法參考平面解析幾何,不在此文討論范圍。 偏距已知,設(shè)為L。角α取值范圍不同,待求點位于線路左、右側(cè)不同,待求點坐標表達式則不同。設(shè)投影點坐標為P′(x′,y′),待求點坐標為P(x,y),則有如表1所示的坐標關(guān)系表達式。 表1 待求點坐標表達式 化簡表1中表達式,可得通用表達式,見表2。 表2 待求點通用坐標表達式 當待求點投影P′落在曲線上,其計算理論與已知坐標求里程和偏距時,與待求點投影P′落在直線上的計算理論相類似,不再贅述。 若線路中含有斷鏈,計算里程、偏距和坐標時要受到斷鏈影響。斷鏈主要有長鏈和短鏈兩種。斷前里程大于斷后里程時為長鏈,斷前里程小于斷后里程時為短鏈。其中長鏈具有重復里程。 當線路中存在斷鏈時,計算必須加入斷鏈信息。斷鏈主要信息為斷前里程與斷后里程。為方便計算機計算,可在錄入斷鏈的同時錄入斷鏈所處的交點區(qū)間。一般情況下,斷鏈全在直線上,且斷鏈影響范圍內(nèi)不會再出現(xiàn)斷鏈時,此處可以不考慮斷鏈在曲線上和斷鏈重疊的情況。當線路中存在長鏈時,若是已知里程、偏距求坐標的待求點剛好在斷鏈影響范圍內(nèi),則該待求點里程存在兩種可能性。錄入已知條件時,需要錄入該待求點里程是否為長鏈的重復里程。 首先不考慮斷鏈,用第1節(jié)介紹的方法求出里程與偏距,其中只有里程受到斷鏈影響。設(shè)不考慮斷鏈求出的里程為H,最終里程為Ht,H所處的直線段前一個交點為交點n。把里程H與交點n以前的所有斷鏈長度做代數(shù)和,求出H′。若H′所處直線段無斷鏈,則H′=Ht;若H′所處直線段有斷鏈,需再判斷H′是否在本段直線上的斷鏈的影響范圍內(nèi)。若在,與斷鏈長度做代數(shù)和得出Ht;若不在,H′=Ht。設(shè)斷前里程為Dq,斷后里程為Dh,可得以下公式: 式中: Dqi——第i個斷鏈的斷前里程; Dhi——第i個斷鏈的斷后里程; Dqn——第n個斷鏈的斷前里程; Dhn——第n個斷鏈的斷后里程。 首先,不考慮該已知里程H為長鏈重復里程,求出真實里程H′。若該點是長鏈重復里程,在H′基礎(chǔ)上加上長鏈長度即為真實里程。 通過上文的研究,得出線路里程、偏距與坐標互算的新算法。此算法脫離了圖形,采用了全數(shù)字計算方式,使得計算機實現(xiàn)成為可能。 基于研究成果,筆者以VC++為例,實現(xiàn)了線路里程、偏距與坐標互算程序。該程序可以實現(xiàn)里程、偏距與坐標的互算,支持Excel導入基本數(shù)據(jù)和計算結(jié)果導出Excel。經(jīng)大量工程驗證,該程序完全滿足工程精度要求,且大大提高了工作效率。以筆者曾經(jīng)就職的設(shè)計院為例,該程序可以在10 min內(nèi)完成原來1~2 d的工作,深受好評。 圖6和圖7展示了程序界面與計算成果。 圖6 程序界面 圖7 計算成果輸出2.3 待求點坐標計算
3 斷鏈的處理
3.1 斷鏈數(shù)據(jù)信息
3.2 基于待求點坐標計算線路里程與偏距時的斷鏈處理
3.3 基于待求點里程與偏距計算該點坐標時的斷鏈處理
4 成果應(yīng)用