1. 正算主程序 程序名: XLZBZB
LbI 1:“K”?K :“L(-Z +Y)” ?L:90→M :(注:此处若给M赋值,则可计算斜角。M是指图纸上的斜交右角)
Prog“DAT” :(P - R)÷(2(H-O)PR)→D↙ (注:↙表示按EXE键即可)
Abs(K-O)→J:Prog“SUB1” ↙(注:↙表示按EXE键即可)
“X=” : X ◢
“Y=” :Y ◢
Goto 1 ↙ (注:↙表示按EXE键即可)
2. XLZBZB
使用说明:K? 正算时所求点的里程: L(-Z+Y) 正算时所求点距该里程中线的边距(左侧取负值,右侧取正值,在中线上取零(即数字0))
3. 正算子程序 程序名:SUB1
4→DimZ ↙ (注:↙表示按EXE键即可)
0.1184634425→A: 0.2393143352→B: 0.2844444444→Z[4]: 0.0469100770→C: 0.2307653449→E: 0.5→Z[1] ↙ (注:↙表示按EXE键即可)
I+J(Acos(G+QCJ(1÷P+CJD)×180÷π)+Bcos(G+QEJ(1÷P+EJD) ×180÷π)+Z[4]cos(G+QZ[1]J(1÷P+Z[1]JD) ×180÷π)+Bcos(G+Q(1-E)J(1÷P+(1-E)JD) ×180÷π)+Acos(G+Q(1-C)J(1÷P+(1-C)JD) ×180÷π)) →X ↙ (注:↙表示按EXE键即可)
S+J(Asin(G+QCJ(1÷P+CJD)×180÷π)+Bsin(G+QEJ(1÷P+EJD) ×180÷π)+Z[4]sin(G+QZ[1]J(1÷P+Z[1]JD) ×180÷π)+Bsin(G+Q(1-E)J(1÷P+(1-E)JD) ×180÷π)+Asin(G+Q(1-C)J(1÷P+(1-C)JD) ×180÷π)) →Y ↙(注:↙表示按EXE键即可)
G+QJ(1÷P+JD) ×180÷π+M →F: X+LcosF →X: Y+LsinF→Y ↙ (注:↙表示按EXE键即可,π表示3.141592653)
4. 曲线元要素数据库 程序名:DAT
If K<本段曲线终点桩号: Then 本段线元起点的X坐标→I: 本段线元起点的Y坐标→S: 本段线元起点里程→O: 本段线元起点切线方位角→G: 本段线元终点里程→H: 本段线元起点曲率半径→P: 本段线元终点曲率半径→R: 本段线元左右偏标志→Q: Eise If K< 二段曲线终点桩号: Then 二段线元起点的X坐标→I:二段线元起点的Y坐标→S:二段线元起点里程→余滑O:二段线元起点切竖高腊线方位角→G: 二段线元终点里程→H: 二段线元起点曲率半径→P: 二段线元终点曲率半径→R: 二段线元左右偏标志→Q:…………………
(注:如有多个曲线元要素,还要继续添加到数据库DAT中)
I= 线元起点的X坐标: S= 线元起点的Y坐标: O= 线念念元起点里程:
G= 线元起点切线方位角: H= 线元终点里程P= 线元起点曲率半径
R= 线元终点曲率半径 Q= 线元左右偏标志(注: 左偏为-1, 右偏为+1 )
(注:如有多个曲线元要素,还要继续添加到数据库DAT中,曲率半径直径输入半径值)
5. 坐标反算 程序名: ZBFS
LBI 0:“X1=”?X:“Y1=”?Y:“X2=”?A:“Y2=”?B◢
POL(A-X,B-Y):J〈0
=〉J+360→J◢
“I=”:I◢
“J=”:J▲DMS ◢
Goto 0 ↙(注:↙表示按EXE键即可)
6. 任意多边形的面积 程序名: RYDBX S
0→S :?A :?B :?C :?D ↙(注:↙表示按EXE键即可)
Lbl 1: “X”?→X : “Y” ?→Y ↙(注:↙表示按EXE键即可)
0→I:0→J : P0l(C-A , D-B) : I→G : J→H :
P0l(X-A , Y-B) : X→C : Y→D : I→K : J→N :
“M=”:0.5GKsin(Abs(N-H))→M ↙(注:↙表示按EXE键即可)
“S=”:S+M→S ▲ 平方米
“U=”:S÷666.667→U ▲ 亩
Goto 1
(注:0表示数字零)
说明:点位必须按顺序输入成封闭形图型!
A B C D 为第一,二两点坐标(常量),X Y……为第三,四,五,六点坐标(变量)。
例:X1=10.000 , Y1=20.000
X2=500.000 , Y2=600.000
X3=700.000 , Y3=400.000 三角形面积 107000M2 160.50亩
X4=800.000 , Y4=300.000 四边形面积 160500M2 240.75亩
X5=650.000 , Y5=100.000 五边形面积 218500M2 327.75亩
X6=550.000 , Y6=50.000 六边形面积 230500M2 345.75亩
说明:
一、程序功能及原理
1.功能说明:
本程序由两个主程序——正算主程序(GSZS)、反算主程序(GSFS)和两个子程——正算子程序(SUB1)、线元数据库(DAT-M)构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、终点里程、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。本程序可以在CASIO fx-4800P计算器及 CASIO fx-4850P计算器上运行。由于加入了数据库(DAT-M),可实现坐标正反算的全线贯通。
组合程序5可实现M线的正算贯通,组合程序7可实现M线的反算贯通,组合程序6可实现坐标计算到放样一体化。
2.计算原理:
利用Gauss-Legendre 5点通用公式计算线路中边桩坐标并计算放样数据。
利用待求点至线元起点切线作垂线,逐次迭代趋近原理反算里程及边距。
二、使用说明
1、规定
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q= -1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
(2) 当所求点位于中线时,L=0;当位于中线左侧时,L取负值;当位于中线右侧时,L取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大,以10的45次代替; (6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
(7)曲线元要素数据库(DAT-M)可根据线型不同分为各个线元段输入到DAT-M中,即分为直线段、缓和曲线、圆曲线等。
(8)正算时可仅输入里程和边距及右交角可实现全线计算,但反算时只能通过首先输入里程K值读取数据库DAT-M,计算器自动将里程K所在线元数据赋给反算主程序GSFS进行试算,试算出的里程和边距须带入正算主程序GSZS中计算坐标,若坐标吻合则反算正确。
2、输入与显示说明
(1)输入部分:
X0 ?线元起点的X坐标 (在“DAT-M”程序中对应为I)
Y0 ?线元起点的Y坐标(在“DAT-M”程序中对应为S)
K0 ?线元起点里程(在“DAT-M”程序中对应为O)
F0 ?线元起点切线方位角(在“DAT-M”程序中对应为G)
KN ?线元终点里程(在“DAT-M”程序中对应为H)
R0 ?线元起点曲率半径(在“DAT-M”程序中对应为P)
RN ?线元止点曲率半径(在“DAT-M”程序中对应为R)
Q ? 线 元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0) (在“DAT-M”程序中对应为Q)
K ? 正算时所求点的里程
L ? 正算时所求点距中线的边距(左侧取负值,右侧取正值,在中线上取零)
ANG?正算边桩时左右边桩连线与线路中线的右交角
X ? 反算时所求点的X坐标
Y ? 反算时所求点的Y坐标
M ? 斜交右角
线元要素数据库中K≥O=>K<H=>中的O和H分别为该段线元起点里程和终点里程
A、 B、Z[4] 是Gauss-Legendre求积公式中的插值系数
C 、E、Z[1] 是Gauss-Legendre求积公式中的求积节点
(2)显示部分:
X=×××正算时,计算得出的所求点的X坐标
Y=×××正算时,计算得出的所求点的Y坐标
K=×××反算时,计算得出的所求点的里程
L=×××反算时,计算得出的所求点的边距
三、算例
某匝道的由五段线元(直线+完整缓和曲线+圆曲线+非完整缓和曲线+直线)组成,各段线元的要素(起点里程S0、起点坐标X0 Y0、起点切线方位角F0、线元长度LS、起点曲率半径R0、止点曲率半径RN、线元左右偏标志Q)如下:
S0 X0 Y0 F0 LSR0 RNQ
500.00019942.83728343.561 125 16 31.00269.256 1E45 1E45 0
769.25619787.34028563.378 125 16 31.00 37.492 1E45 221.75-1
806.74819766.56628594.574 120 25 54.07 112.779221.75 221.75 -1
919.52719736.07228701.893 91 17 30.63 80.285 221.75 9579.228-1
999.81219744.03828781.659 80 40 50.00 100.000 1E451E45 0
(注:该算例中线元要素Ls为程序修改前须输入的线元长度,程序修改后改为输入线元终点里程KN)
一、已知座标,求平距和方位角(座标反算): 公告轮式: D=√(Xp-Xo)2+(Yp-Yo)2 α=arctg(Yp-Yo)/(Xp-Xo) 程序:“A”?→A:“B”?→B:Lbl 0:“X”?→X:“Y”?→Y:(X-A)→M:(Y-B)→N:“D=”:√(M2+N2 )⊿ tan-1(N/M) →C:If M<0:Then “Q=”:180+C →Q ⊿ Else If N>0: Then “Q=”:C→Q ⊿ Else “Q=”:360+C→Q ⊿ If End : If End : Goto 0 说明:(A,B)为测站点坐标,(X,Y)为所求点坐标。输出:D为平距,Q为方位角。二、已知直线的坐标方位角Q和直线起点坐标(Xo,Yo),求直线上任一点的中桩坐标(X, Y),左右边桩坐标(XL,YL)、(XR,YR): 公式:X =Xo+LcosQ Y=Yo+LsinQ程序:“C”?→C:“D”?→D:“Q”?→Q:“Z”?→Z:“U”?→U:“T”?→T:“V”?→V:Lbl 1: “L”?→L:Abs(L-Z)→W:“X=”:C+W*cos(Q)→X ⊿“Y=”: D+W*sin(Q)→Y ⊿ If U≤0:Then Goto1:Else “XL=”:X+U*cos(Q-V)→A ⊿“YL=”:Y+U*sin(Q-V)→B⊿“XR=”:X+T*cos(Q+V)→E⊿“YR=”:Y+T*sin(Q+V)→F⊿ Goto 1 说明:(C,D)为直线起点坐标,Q为直线方位角,Z为起点桩号,L为所求坐标点桩号。“U”为左边距,“T”为右边距,“V”为偏角;U=0时不算边桩坐标。输出:(X,Y)为中桩坐标,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。三、已知圆曲线起点坐标(U,V),切线方位角Q,桩号Z和圆半径R,求圆曲袜旅信线上桩号为 L的点中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR): 公式: ψ=90L/(лR) (偏角公式) C=2Rsin ψ (对应弧的弦长公式) 弦的方位角:Q=Qo±ψ (曲线左转时为“-”)程序:“U”?→U:“V”?→V:“Q”?→Q:“R”?→R:“Z”?→Z:“W=-1,1”:?→W:“ZJ=”:?→Z[1]:“YJ=”:?→Z[2]:“PIAN JIAO”:?→T:Lbl 2:“L”?→L:180*(L-Z)/(2π*R)→J:R*2sin(J)→K:If W=-1:Then “X=”:U+K*cos (Q-J)→X⊿ “Y=”:V+K*sin(Q-J)→Y ⊿“Q=”:Q-180*(L-Z)/(πR)→O⊿ Else If W=1:Then“X=”:U+K*cos(Q+J)→X⊿“Y=”:V+K*sin(Q+J)→Y ⊿ “Q=”:Q+180*(L-Z)/(πR)→O⊿ IfEnd:IfEnd:T=0=>Goto 2:“XL=”:X+Z[1]*cos(O-T)→F⊿“YL=”:Y+Z[1]*sin(O-T)→P ⊿“XR=”:X+Z[2]*cos(O+T)⊿“YR=”:Y+Z[2]*sin(O+T) ⊿ Goto 2 说明:W=-1时曲线左转, W=1时曲线右转。“ZJ=”为左边距,“YJ=”为右边距,“PIAN JIAO”为偏角,偏角输0时不算边桩坐标。输出:(X,Y)为中桩坐标,“Q=”为所求点方位角,镇液(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。四、已知直缓点坐标(M,N)、方位角Q、桩号Z,缓和曲线全长S和连接圆半径R,求缓和曲线上任一点(桩号为L)的中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR): 公式: θ=30L2/(πRLs) C=L-L5/(90R2Ls2) α=α±90Ls2/(πA2)程序:“M”?→M:“N”?→N:“R”→R:“A”?→A:“S”?→S:“Z”?→Z:“Q”?→Q:“W=-1,1”:?→W:“ZJ=”?→Z[1]:“YJ=”?→Z[2]:“PIAN JIAO”:?→ T:Lbl 3:“L”?→L:Abs (L-Z)→H:30*H2/(πRS)→D:H-H5/(90R2S2)→C:If W=-1:Then “X=”:M+C*cos(Q-D)→X⊿“Y=”:N+C*sin(Q-D)→Y ⊿ A =0 =>Goto 3:“Q=”:Q-90H/(πA)→E ⊿ Else If W=1:Then “X=”:M+C*cos(Q+D)→X⊿“Y=”:N+C*sin(Q+D)→Y ⊿ A=0 =>Goto 3:“Q=”:Q+90*H/(πA)→E ⊿IfEnd:IfEnd:T=0=>Goto 3:“XL=”:X+Z[1]*cos(E-T)⊿“YL=”:Y+Z[1]*sin(E-T) ⊿“XR=”:X+Z[2]*cos(E+T)⊿“YR=”: Y+Z[2]*sin(E+T)⊿ Goto 3说明:“A”为缓和曲线参数,W=-1时曲线左转, W=1时曲线右转。“ZJ=”为左边距,“YJ=”为右边距,“PIAN JIAO”为偏角,偏角输0时不算边桩坐标。输出:(X,Y)为中桩坐标,“Q=”为所求点方位角,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。五、已知卵形曲线(即非完整缓和曲线)大圆半径R,小圆半径r,缓和曲线参数A,以大圆的圆缓点为起点,其坐标为(C,D),其方位角为Q,其桩号为Z,求桩号为L的点的中桩坐标(X,Y),左、右边桩坐标(XL,YL)、(XR,YR)。公式:偏角:θ=arctg[(Yp-Yo)/(Xp-Xo)]-90LR/(πR)Xj=Lj-Lj5/(40A4)+Lj9/3456A8-…… , Yj=Lj3/(6A2)-Lj7/(336A6)+Lj11/(42240A10)-…… Lj=A/Rj(Rj为曲率半径) S=√(Xp-Xo)2+(Yp-Yo)2(弦长公式)α=Q±θ(弦线方位角公式) Xp=Xo+S *cosα , Yp=Yo+sinα程序:“A”?→A:“C”?→C:“D”?→D:“R”?→R:“Q”?→Q:“Z”?→Z:“W=-1,1”?→W:A /R→J:J-J5/(40*A4)+J9/(3456*A8)→E:J3/(6*A2)-J7/(336*A6)+J11/(42240*A10)→F:90*J/(πR)→B:“ZJ=”?→Z[1]:“YJ=”?→Z[2]:“PIAN JIAO”:?→T:Lbl 4:“L”?→L: J+Abs(L-Z)→S:S-S5/(40*A4)+S9/(3456*A8)→M:S3/(6*A2)-S7/(336*A6)+S11/(42240*A10)→N:Abs(M-E)→G:Abs(N-F)→H:√(G2+H2)→K:arctg(H/G)→I:If I<0:Then I+360→U:Else I→U: IfEnd: If W=-1:Then Q-(U-B)→V:“X=”:C+K*cos(V)→X⊿“Y=”:D+K*sin(V)→Y ⊿“Q=”:Q-90*S2/(πA2)-90*J2/(πA2) →O ⊿ Else If W=1:Then Q+(U- B)→V:“X=”:C+K*cos(V)→X⊿“Y=”:D+K*sin(V)→Y⊿“Q=”: Q+90*S2/(πA2)-90*J2/(πA2) →O ⊿IfEnd:IfEnd:T=0=>Goto 4:“XL=”:X+Z[1]*cos (O-T)⊿“YL=”:Y+Z[1]*sin(O-T) ⊿“XR=”:X+Z[2]*cos(O+T)⊿“YR=”:Y+Z[2]* sin(O+T)⊿ Goto 4说明:“A”为缓和曲线参数,W=-1时曲线左转, W=1时曲线右转。“ZJ=”为左边距,“YJ=”为右边距,“PIAN JIAO”为偏角,偏角输0时不计算边桩坐标。输出:(X,Y)为中桩坐标,“Q=”为所求点方位角,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。六、竖曲线计算 公式:H=X2/(2R)程序:“A”?→A:“H”?→H:“D”?→D:“T”?→T:“R”?→R:“I1”?→U:“I2”?→V:“K(ZHONG-DIAN)”:D+T→B ⊿“LY=”:B-A→E ⊿ Lbl 6:“K”?→K:V>U=>1→G:V<U=>-1→G:If K≤A: Then D-K→L:H-LU→P:IfEnd:If K>A And K<D: Then K-A→L:H-U(D-K)+GL2/(2R)→P: IfEnd:If K>D And K<B:Then B-K→L:H+V(K-D)+GL2/(2*R)→P:IfEnd:If K≥B: Then K-D→L:“H(SHEJI)=”:P ⊿ Goto 6说明:“A”为竖曲线起点桩号,“H”为起点高程,“D”为交点桩号,“T”为切线长,“R”为竖曲线半径,“I1”、“I2”为第一、二坡度。输出:“H(SHEJI)=”为设计高程。注意的是:计算范围不能超出到下一个竖曲线范围内。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)