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)
算CASIO4800 QXZB可计算不等缓和曲线、圆曲线上的任意中、边桩坐标:
该程序适用于计算器 CASIO fx-4800P,可计算与线路中心成任意夹角的缓和曲线、圆曲线中、边桩坐标及待测点方位角和距离。
1、DK(JD)?输入交点桩号
2、X(JD)? 输入交点坐标X
3、Y(JD)? 输入交点坐标Y
4、T1? 输入第一切线长(如果只有一条切线两者都输入一致)
5、T2? 输入第二切线长(如果只有一条切线两者都输入一致)
6、FWJ?输入直线方位角(ZH→JD)
7、A? 输入转角:左转为负,右转为正
8、R? 输入圆曲线半径
9、LS1?输入第一缓和曲线长(如果只有一条缓和曲线两者都输入一致)
10、LY?输入圆曲线长(L-LS1-LS2)
11、LS2?输入第二缓和曲线长(如果只有一条缓和曲线两者都输入一致)
12、X(ZJD)?输入置镜点坐标X
13、Y(ZJD)?输入置镜点坐标Y
14、JSDK?输入前视点里程
15、PL?输入偏距
16、PA?输入偏角
说明:本程序适用于计算器 CASIO fx-5800P,可计算:第一夹直线段、第一缓和曲线段、圆曲线段、第二缓和曲线段、第二夹直线段的线路中、边桩坐标及切线方位角,反算里程和偏距。数据库名:YTGoto 1Lbl 1:If Z<10000:Then 3378226.731→U:456053.721→V:3373351.385→N:458628.379→E:9557.84→D:2040→R:260→S:280→T:-14°18ˊ10″→A:Return:IfEndLbl 1:If Z<………………………………………………………………………………………………………………Lbl 1:If Z<本交点HZ里程或下个交点ZH里程:Then 前交点坐标X→U:前交点坐标Y→V:本交点坐标X→N:本交点坐标Y→E:交点里程→D:曲线半径→R:第一缓和曲线长→S:第二缓和曲线长→T:转角→A:Return:IfEndLbl 1每增加一行则为增加一个交点要素,……表示下一个交点要素。注:1、◢ 为显示指令。2、 ↙为回车(EXE)标识。3、()括号内为注解不用输入。计算参数:1=>XY2=>DK
J? 2(输入1表示调用数据库,输入2表示手动输入数据)
1、QJD(X)=? 3378226.731(前交点坐标X)
2、QJD(Y)=? 456053.721(前交点坐标Y)
3、JD(X)=? 3373351.385(本交点坐标X)
4、JD(Y)=? 458628.379(本交点坐标Y)
5、JD(DK)=? 9557.84(本交点里程)
6、R=? 2040(曲线半径)
7、LS1?= 260(第一缓和曲线长)
8、LS2?= 280(第二缓和曲线长)
9、α?= -14°18ˊ10″(转角)
10、JSDK?= 9500(计算里程)
11、W?= 10(偏距:左为负,有为正数)
12、α?= 90(偏角)
………………………………
13、FWJ=146°34ˊ4.38″(切线方位角)
14、X= 3373402.498(计算结果坐标X)
15、Y= 458602.6783(计算结果坐标Y)
16、ZH=09+170.838,X=3373693.598,Y=458447.6569,FWJ=152°9′41.68″
17、HY=09+430.838,X=3373466.361,Y=458573.9060,FWJ=148°30′37.36″
18、QZ=09+550.461,X=3373366.244,Y=458639.3431,FWJ=145°9′2.25″
19、HY=09+670.084,X=3373270.134,Y=458710.5365,FWJ=141°47′27.15″
20、HZ=09+950.084,X=3373058.317,Y=458893.5689,FWJ=137°51′31.68″资料地址: https://skydrive.live.com/?cid=23F98B07A5CC3A18&id=23F98B07A5CC3A18%213143
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)