亚洲 欧洲 日产,国产成a人亚洲精品无码樱花,欧美精产国品一二三产品特点,久久久久久久久久

曲線任意里程中邊樁坐標正反算(CASIO fx-4800P計算器)程序

   2010-05-07 盼盼 40910

一、程序功能
本程序由一個主程序(TYQXJS)和兩個子程——正算子程序(SUB1)、反算子程序(
SUB2)序構成,可以根據曲線段——直線、圓曲線、緩和曲線(完整或非完整型)的線
元要素(起點坐標、起點里程、起點切線方位角、線元長度、起點曲率半徑、止點曲
率半徑)及里程邊距或坐標,對該曲線段范圍內任意里程中邊樁坐標進行正反算。另
外也可以將本程序中核心算法部分的兩個子程序移植到其它相關的程序中,用于對曲
線任意里程中邊樁坐標進行正反算。本程序也可以在CASIO fx-4500P計算器及 CASIO fx-4850P計算器上運行。
特別申明:(1). 適用于弧長小于2倍半徑的各種線元坐標正反算,精度優
于1mm;
(2). 在引用該核心計算部分時,請注明來源。
二、源程序
1.主程序(TYQXJS)
"1.SZ => XY":"2.XY => SZ":N:U"X0":V"Y0":O"S0":G"F0":H"LS":P"R0":R"
RN":Q:C=1÷P:D=(P-R)÷(2HPR):E=180÷π:N=1=>Goto 1:≠>Goto 2Δ←┘
Lbl 1:{SZ}:SZ:W=Abs(S-O):Prog "SUB1":X"XS"=X◢
Y"YS"=Y◢
Goto 1←┘
Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢
Z"Z"=Z◢
Goto 2

2. 正算子程序(SUB1)
A=0.1739274226:B=0.3260725774:K=0.0694318442:L=0.3300094782:F=1-L:
M=1-K:X=U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW
(C+FWD))+Acos(G+QEMW(C+MWD))):Y=V+W(Asin(G+QEKW(C+KWD))+Bsin(G+
QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))):F=G+QEW(C+
WD)+90:X=X+ZcosF:Y=Y+ZsinF

3. 反算子程序(SUB2)
T=G-90:W=Abs((Y-V)cosT-(X-U)sinT):Z=0:Lbl 0:Prog "SUB1":L=T+QEW(C+
WD):Z=(J-Y)cosL-(I-X)sinL:AbsZ<1E-6=>Goto1:≠>W=W+Z:Goto 0Δ←┘
Lbl 1:Z=0:Prog "SUB1":Z=(J-Y)÷sinF

三、使用說明
1、規定
(1) 以道路中線的前進方向(即里程增大的方向)區分左右;當線元往左偏時,
Q=-1;當線元往右偏時,Q=1;當線元為直線時,Q=0。
(2) 當所求點位于中線時,Z=0;當位于中線左鍘時,Z取負值;當位于中線中線右
側時,Z取正值。
(3) 當線元為直線時,其起點、止點的曲率半徑為無窮大,以10的45次代替。
(4) 當線元為圓曲線時,無論其起點、止點與什么線元相接,其曲率半徑均等于圓
弧的半徑。
(5) 當線元為完整緩和曲線時,起點與直線相接時,曲率半徑為無窮大,以10的45
次代替;與圓曲線相接時,曲率半徑等于圓曲線的半徑。止點與直線相接時,曲率半
徑為無窮大,以10的45次代替;與圓曲線相接時,曲率半徑等于圓曲線的半徑。
(6) 當線元為非完整緩和曲線時,起點與直線相接時,曲率半徑等于設計規定的
值;與圓曲線相接時,曲率半徑等于圓曲線的半徑。止點與直線相接時,曲率半徑等
于設計規定的值;與圓曲線相接時,曲率半徑等于圓曲線的半徑。

2、輸入與顯示說明
輸入部分:
1. SZ => XY
2. XY = > SZ
N ?選擇計算方式,輸入1表示進行由里程、邊距計算坐標 ;輸入2表示由坐標反算
里程和邊距。
X0 ?線元起點的X坐標
Y0 ?線元起點的Y坐標
S0 ?線元起點里程
F0 ?線元起點切線方位角
LS ?線元長度
R0 ?線元起點曲率半徑
RN ?線元止點曲率半徑
Q ?線 元左右偏標志(左偏Q=-1,右偏Q=1,直線段Q=0)
S ? 正算時所求點的里程
Z ?正算時所求點距中線的邊距(左側取負,值右側取正值,在中線上取零)
X ?反算時所求點的X坐標
Y ?反算時所求點的Y坐標
顯示部分:
XS=×××正算時,計算得出的所求點的X坐標
YS=×××正算時,計算得出的所求點的Y坐標
S=×××反算時,計算得出的所求點的里程
Z=×××反算時,計算得出的所求點的邊距

四、算例
某匝道的由五段線元(直線+完整緩和曲線+圓曲線+非完整緩和曲線+直線)組
成,各段線元的要素(起點里程S0、起點坐標X0 Y0、起點切線方位角F0、線元長度
LS、起點曲率半徑R0、止點曲率半徑RN、線 元左右偏標志Q)如下:
S0X0Y0F0 LSR0RNQ
500.00019942.83728343.561 125 16 31.00269.256 1E451E45 0
769.25619787.34028563.378 125 16 31.0037.492 1E45221.75-1
806.74819766.56628594.574 120 25 54.07 112.779221.75221.75-1
919.52719736.07228701.893 91 17 30.63 80.285221.759579.228 -1
999.81219744.03828781.659 80 40 50.00 100.0001E451E450
1、正算
(注意:略去計算方式及線元要素輸入,請自行根據所求點所在的線元輸入線元
要素)
S=700Z=-5計算得XS=19831.41785 YS=28509.72590
S=700Z=0 計算得XS=19827.33592 YS=28506.83837
S=700Z= 5計算得XS=19823.25398 YS=28503.95084

S=780Z=-5計算得XS=19785.25749 YS=28575.02270
S=780Z=0 計算得XS=19781.15561 YS=28572.16358
S=780Z= 5計算得XS=19777.05373 YS=28569.30446

S=870Z=-5計算得XS=19747.53609 YS=28654.13091
S=870Z=0 計算得XS=19742.68648 YS=28652.91379
S=870Z= 5計算得XS=19737.83688 YS=28651.69668

S=940Z=-5.123計算得XS=19741. 59118YS=28722.05802
S=940Z=0計算得XS=19736.47687 YS=28722.35642
S=940Z= 3.009計算得XS=19733.47298 YS=28722.53168

2、 反算
X=19831.418 Y=28509.726 計算得S=699.9999974Z= -5 .00018164
X=19827.336 Y=28506.838 計算得S=699.9996493Z= 0.000145136
X=19823.25398 Y=28503.95084計算得S=699.9999985Z= 5.000003137
X=19785.25749 Y=28575.02270計算得S=780.0000035Z= -5 .000001663
X=19781.15561 Y=28572.16358 計算得S=780.0000025Z=- 0.000002979
X=19777.05373 Y=28569.30446 計算得S=780.0000016Z= 4.99999578

X=19747.536 Y=28654.131 計算得S=870.0001137Z= -4.99941049
X=19742.686 Y=28652.914 計算得S=870.0003175Z=- 0.00041814
X=19737.837 Y=28651.697 計算得S=870.0002748Z= 4.999808656

X=19741.5912 Y=28722.0580 計算得S=939.9999786Z= -5.123024937
X=19736.4769 Y=28722.3564 計算得S=939.9999862Z=- 0.000027710
X=19733.4730 Y=28722.5317 計算得S=940.0000238Z= 3.00898694
特別說明:π=3.14151926......

在算例中:
1、K0+500.000~K0+769.256為直線部分;
2、K0+769.256~K0+806.748為完整緩和曲線部分;
3、K0+806.748~K0+919.527為圓曲線部分;
4、K0+919.527~K0+999.812為非完整緩和曲線部分;

A、B是Gauss-Legendre求積公式中的插值系數,K 、L是Gauss-Legendre求積公式中的求積節點,請參看天津大學出版社出版的《數值分析》[翟瑞彩 謝偉松 2000年11月第1版]P.206表6.5中n=3的一行,一看你就清楚明白。

無論是直線、圓曲線,還是完整緩和曲線、非完整緩和曲線,該程序計算結果都完全正確,精度符合要求,編碼簡潔,比起網上那些遮遮掩掩、轉彎抹角、收費或者編碼繁雜的程序好上千倍,值得推薦,應給予獎勵!

如果將“Lbl 1:{SZ}:SZ:W=Abs(S-O):Prog "SUB1":X"XS"=X◢
Y"YS"=Y◢”改為:
“Lbl 1:{SZ}:SZ:W=Abs(S-O):Prog "SUB1":X"XS"=X◢
Y"YS"=Y◢ F"FS"=F-90◢ "
則顯示的FS為相應中線點的切線方位角。



 
舉報收藏 0打賞 0評論 0
 
更多>同類論文
推薦圖文
推薦論文
點擊排行
?
網站首頁  |  隱私政策  |  版權隱私  |  使用協議  |  聯系方式  |  關于我們  |  網站地圖  |  排名推廣  |  廣告服務  |  網站留言  |  RSS訂閱  |  違規舉報

津ICP備20006083號-1

津公網安備 12010502100290號

 
主站蜘蛛池模板: 阳新县| 达尔| 云浮市| 石台县| 永顺县| 阿鲁科尔沁旗| 册亨县| 吐鲁番市| 洪江市| 绥德县| 秦皇岛市| 灯塔市| 禹城市| 团风县| 青海省| 天津市| 乌审旗| 怀柔区| 贵港市| 漠河县| 淳化县| 寿光市| 文安县| 东源县| 财经| 建湖县| 兴宁市| 博乐市| 铁岭市| 丹阳市| 霞浦县| 古田县| 静安区| 渑池县| 鹤壁市| 侯马市| 道孚县| 瑞昌市| 瑞丽市| 南康市| 苍梧县|