5800程序线元法全线坐标正方算共10页word资料
5800曲线道路全线坐标正反算(已验证)
CASIO fx-5800P线元法坐标正反算程序V2.0说明:本程序适用于卡西欧计算器 CASIO fx-5800P,可对全线贯通坐标正反算、竖曲线高程计算。
该程序可计算任意线型,包含(直线、圆曲线、缓和曲线、卵形曲线)等,还可以能通过坐标反推该点里程和距中线距离,适用测量员专用。
主程序名:ABCYT第1步Deg:Fix 3:10→DimZ第2步Lbl 3:"1.DK=>XY":"2.XY=>DK":"Q"?W:"K0+"?S:Prog"ABCYTSJ":If P=0:Then 10^(45)→P:IfEnd:If R=0:Then 10^(45)→R:IfEnd第3步1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:If W=1:Then Goto 1:Else Goto2:IfEnd第4步Lbl 1:"E"?Z90=N:Abs(S-O)→W:Prog "ABCYTZ"第5步Cls:"F=":Locate 3,1,F°:"X=":Locate 3,2,X:"Y=":Locate 3,3,Y◢第6步Prog"ABCYTSQX":Cls:"H=":Locate 3,1,H◢第7步1→W:90→N:Goto 3第8步Lbl 2:?X:?Y:X→I:Y→J:Prog"ABCYTF":O+W→S第9步Cls:"K=":Locate 3,1,S:"E=":Locate 3,2,Z◢第10步2→W:Goto 3正算子程序名:ABCYTZ第1步0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L第2步1-L→F:1-K→M第3步U+W×(A×cos(G+Q×E×K×W×(C+K×W×D))+B×cos(G+Q×E×L×W×(C+L×W×D))+B×cos(G+Q×E×F×W×(C+F×W×D))+A×cos(G+Q×E×M×W×(C+M×W×D)))→X第4步V+W×(A×sin(G+Q×E×K×W×(C+K×W×D))+B×sin(G+Q×E×L×W×(C+L×W×D))+B×sin(G+Q×E×F×W×(C+F×W×D))+A×sin(G+Q×E×M×W×(C+M×W×D)))→Y第5步G+Q×E×W×(C+W×D)→F:F+ N→Z[1]第6步X+Z×cos(Z[1])→X:Y+Z×sin(Z[1])→Y反算子程序名:ABCYTF第1步Lbl 2:(S-O)→W:0→Z:Prog "ABCYTZ":F-90→Z[9]:(J-Y)×cos(Z[9])-(I-X)×sin(Z[9])→Z[10]第2步If Abs(Z[10])>0.001:Then S+Z[10]→S:Goto 2:Else Goto 1:IfEnd第3步Lbl 1:(Y-J)÷sin(Z[9])→Z数据库名:ABCYTSJ第1步Goto1第2步Lbl 1:If S<7586.707 Or S>13346.96:Then Cls:Locate 2,2,"PQX":Locate 4,3,"CHAOXIAN":Locate 10,4,"→Stop"◢第3步Stop:IfEnd第4步Lbl 1:IF S<7946.707:Then 98°56′56″→G:7586.707→o:3378605.445→U:453648.704→V:0→P:4500→R:360→H:1→Q:Return:IfEnd第5步Lbl 1:IF S<11766.03:Then 101°14′26″→G:7946.707→o:3378544.714→U:454003.518→V:4500→P:4500→R:3819.323→H:1→Q:Return:IfEnd第6步Lbl 1:IF S<12126.03:Then 149°52′11″→G:11766.03→o:3376389.890→U:457018.324→V:4500→P:0→R:360→H:1→Q:Return:IfEnd第7步Lbl 1:IF S<13346.96:Then 152°09′41.68″→G:12126.03→o:3376073.846→U:457190.654→V:0→P:0→R:1220.93→H:0→Q:Return:IfEnd第n步……………………………………………………数据输入说明:第1步Goto1第2步Lbl 1:If S<本条线路起点里程S>本条线路止点里程Cls:Locate 2,2,"PQX":Locate 4,3,"CHAOXIAN":Locate 10,4,"→Stop"◢第3步Stop:IfEnd第4步Lbl 1:If S<本线元止点里程:Then线元起点切线方位角→G:线元起点桩号→O:线元起点坐标X→U:线元起点坐标Y→V:线元起点半径(直线为0、曲线为半径)→P:线元止点半径(直线为0、曲线为半径)→R:线元长度→H:线元转向(左转为-1、右转为1、直线为0)→Q:Return:IfEnd第n步Lbl 1:每增加一行则为增加一个线元要素。
5800程序
5800程序本程序由3个主程序、5个子程序及3个参数子程序组成。
主要用于公路测量中坐标正反算,设计任意点高程及横坡计算,程序坐标计算使用于任何线型。
一、主程序1、程序名:1ZD-XY(一般放样正反算程序,①正算坐标,放样点至置仪点方位角及距离;②反算桩号及距中线距离)Lbl 0:Norm 2:Deg:“F=”?F:(正反算判断,F=1正算,F=2反算)90→Z[1]:(与路线右边夹角)Prog“THB”:F=1=>Goto 1:F=2=>Goto 2:Lbl 1:Fix 3: “ X=”:Locate 6,4,X◢“ Y=”:Locate6,4,Y◢:Prog“3JS”: Goto 0:Lbl 2: Fix 3: “KM=”:Locate 6,4,Z◢:“ D=”:Locate 6,4,D◢:Goto 02、程序名:2GC(高程、横坡程序,计算任意点高程及横坡)Lbl 0:Norm 2:“KM”?Z:?D:Prog“H” :Fix 3: “ H=”:Locate6,4,H◢“ I=”:Locate6,4,I◢:Goto 03、程序名:3JS(极坐标放样计算程序,计算放样点至置仪点方位角及距离)X:Y:1234,123→K:(置仪点X坐标)4567,456→L:(置仪点Y坐标)Y-L→E:X-K→F:Pol(F,E):Lf J<0:Then J+360→J:IfEnd:“FWJ=”:J▲DMS◢Fix 3: “ S=”: Locate6,4,I◢二、子程序1、程序名:THB(坐标计算子程序)18→DimZ: “KM”?Z: Prog“X0”:1÷P→C:(P-R)÷(2HPR) →S:180÷π→E: F=1=>Goto 1:F=2=>Goto 2:Lbl 1:?D:Abs(Z-O)→W: Prog“A”:X:Y: Goto 3:Lbl 2:?X:?Y:X→I:Y→J: Prog“B”:O+W→Z:D→D: Goto 3:Lbl 3:If F=1:Then X:Y:Else Z:D:IfEnd注:Z为反算的桩号,D为反算的点到中线的距离。
5800计算器全线坐标计算放样正反算程序
5800计算器全线坐标计算放样正反算程序此处无法提供完整的程序,但是可以提供一些关于全线坐标计算放样正反算的基本知识。
全线坐标计算放样是指将一条曲线按照一定比例进行分割,然后计算每个分段的坐标值,最终得到完整曲线上每个点的坐标。
这个过程可以分为正算和反算两部分。
正算是根据曲线的起点、终点以及每个分段的长度,通过数学公式计算出每个分段末点的坐标,最终得到完整曲线上每个点的坐标。
反算则是根据给定的曲线上某个点的坐标,以及曲线起点到该点的距离,计算出该点在曲线上的位置。
在实际工作中,使用计算器进行全线坐标计算放样非常常见。
通常使用的计算器有5800和2000等型号,这些计算器都有相应的程序可以使用。
以下是大致的步骤:
正算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入曲线分段长度以及分段数量;
4. 计算每个分段的末点坐标;
5. 输出所有点的坐标。
反算步骤:
1. 选择“坐标计算放样”功能;
2. 输入曲线的起点坐标和终点坐标;
3. 输入参考点的坐标;
4. 输入参考点到曲线起点的距离;
5. 计算参考点在曲线上的位置;
6. 输出参考点在曲线上的坐标。
全线坐标计算放样是一项非常重要的工程测量工作,也是计算器的常见应用之一。
需要结合具体需求和计算器机型进行操作。
卡西欧5800测量坐标计算程序
一.使用说明:1.规定:(1)以道路中线的前进方向区分线路的左右偏转方向,线路左偏Q=-1,线路右偏Q=1,直线Q=0。
(2)当所求点位于线路中线时,Z=0;当位于左侧时,Z取负值;当位于右侧时,Z取正值。
(3)当线元为直线时,其起终点的曲率半径为无穷大,取10的45次方代替。
(4)当线元为圆曲线时,起终点曲率半径为圆曲线半径。
(5)当线元为缓和曲线时,起终点曲率半径与直线相接取10的45次方代替,与圆曲线相接取圆曲线半径。
2.输入与显示说明:(1)输入部分:N?:选择计算方式,输入1表示由里程边距计算坐标,输入2表示由坐标计算里程边距。
X0?线元起点X坐标。
Y0?线元起点Y坐标。
S0?线元起点里程。
F0?线元起点切线方位角。
LS?线元长度。
R0?线元起点曲率半径。
RN?线元终点曲率半径。
Q?线元左右偏标志(左偏=-1,右偏=1,直线=0)S?正算时所求点里程。
Z?正算时所求点距中线边距。
位于线路左侧输入负值,在右侧输入正值。
AR?斜交角度。
(为线路右角,在0-180度之间)X?反算时所求点X坐标。
Y?反算时所求点Y坐标。
(2)显示部分:XS=计算结果,所求点X坐标。
YS=计算结果,所求点Y坐标。
FS=计算结果,所求点切线方位角。
S=计算结果,反算时所求点里程Z=计算结果,反算时所求点边距。
二.程序清单1(用于任意曲线元的坐标计算)1.主程序(TYQXJS)″1.SZ=>XY″:″2.XY=>SZ″:?N:″X0″?U:″Y0″?V:″S0″?O: ″F0″?G:″LS″?H:″R0″?P:″RN″?R:?Q:1÷P→C:(P-R) ÷(2HPR) →D:180÷π→E:If N=1: THEN Goto 1:Else Goto 2:IfEnd:Lbl 1:?S:”D(Z-,Y+)=”?Z:90→T:”O=”?T:Abs(S-O) →W:Prog ″SUB1″:″XS″:X◢″YS″:Y◢″FS″:F◢Goto 1:Lbl 2:?X:?Y:I→X:J→Y:Prog ″SUB2″:″S″:O+W→S:◢″Z″:Z◢Goto 22.正算子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD) →F:X+Zcos(F+T) →X:Y+Zsin(F+T) →Y3.反算子程序(SUB2)G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T)) →W:0→Z:Lbl 0:Prog ″SUB1″:T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:IF Abs(Z)<1E-6 :Then Goto 1:Else W+Z→W:Goto 0 : IfEnd:Lbl 1:0→Z:Prog ″SUB1″:(J-Y)÷sin(F)→Z 三.用于提前将曲线元要素输入子程序,计算时只输入里程桩号与边距。
5800公路坐标正反算程序(线元法数据输入)
坐标正反算程序程序变量说明:D:选线。
E、F:置仪点坐X、Y。
K:待算点桩号。
B:待算点距离。
Q:待算点与线路交角(以顺时针方向)。
L:线元起点至待算点长度。
O:待算点方位角。
S:线元长度。
U:线元起点半径。
V:线元终点半径。
程序运行内容说明:开机运行程序后,1、进入主程序,选择正算或反算,1为正算,2为反算。
2、选择线路,1为第线。
2为第线。
3为第线等等。
3、如果上一次计算过的话提示是不更新数线路参数,十秒钟不操作更新,按EXE不更新。
如果上一次不是计算现在要计算的线路的话直接更新数据库(数据库更新会倒计时提示)。
3、正算。
提示入入置仪点坐标。
提示输入待算点桩号。
提示输入离中桩距离。
提示输入与线路方向夹角。
结果:坐标X、Y。
距置仪点距离和方位角。
再次提示输入待算点桩号。
反算。
提示输入实测点坐标X、Y。
结果:待算点桩号程距中桩距离。
再次提示输入实测点坐标X、Y。
程序特点:1、输入参数少,只要输入线路起点的桩号、半径、方位角、XY坐标以及各线元的桩号和半径(左+右-直线×1045)即可。
2、调用变量少,本程还有A、G、H、M、N、P、R、W字母变量未使用,可以用于其它程序而不会和本程序产生冲突。
3、数据库独立,更换工程时数据更换方便。
4、界面友好,尽量做到人人都容易上手,操作一学就会。
5、程序尽量运用5800计算器各种指令,使程序速度提高。
并能够起到帮助大家学习5800各指令工作原理,以便更好掌握编程。
5800线元法修正版程序编写(DOC)
1.2版本,添加了遗漏的标点符号,修改了竖曲线与隧道,让隧道测量步骤简化一些。
此程序根据4850线元法程序改编,本人第一次编写程序内容可能有些不尽人意敬请谅解.程序名称不可更改,包括符号,也不要擅自删减子程序,如需更改必须与各子程序相呼应,否则将无法调动程序进行计算。
1~16页为程序说明与应用步骤具体解释,17~26页为程序编写,所有S开头后面有横杠的为各项数据库,如换线路更改数据库即可完成各项计算。
注意:程序编写时有下划线字符为一次性输入字符,不可拆分。
置仪点X坐标输入时必须输入小数,如果无小数将默认调动导线点数据库(例如3843.000那么请输入3843.0001并不影响计算)程序名(0-0)主程序目录(U=1):数据库输入原始数据计算中边桩*(U=2): 数据库输入原始数据反算线外点垂桩距状态(线路任一点坐标反算桩号及偏距)*(U=3):计算平面位置检查记录表(U=4):人工输入原始数据计算中边桩(数据库计算线元方位角)* (U=5):人工输入原始数据推算开挖、填筑桩状态(不常用)(U=6):数据库输入原始数据推算开挖、填筑桩状态*(U=7/7.1):计算斜交斜做涵洞单跨桥、斜交正做涵洞七点放样状态并能避免曲线内单跨桥涵进出水口长度不一致,同时适用于曲线桥扇形布桩的盖梁放样,曲线桥扇形布桩的支座放样。
*(U=8): 数据库输入原始数据计算锥坡放样(U=9): 后方交会(U=10): 数据库输入原始数据求线外两点交路线的桩号与夹角(U=11): 圆心辐射法隧道断面超欠挖(适合各种隧道线型)*(U=12): 手动输入原始数据求多边型面积、亩数*(U=13): 数据库输入原始数据求设计高程(竖曲线)*(U=14): 坐标正反算小程序(U=1)数据库输入原始数据计算中边桩(Y)置仪点X坐标(也可输入导线点编号,输入导线点编号即可使用导线点数据库)(O)置仪点Y坐标(当X坐标输入导线点编号后则此行不显示,因数据库已装入X和Y坐标)(B)步长(步长就是间隔长度,当要计算大量有相同距离间隔且相同中边桩,步长就是好东西了,输入数量每次计算自动加减桩号距离)(Q)所求桩号(计算第二个桩开始Q已经自动加入步长不用手动输入,但仍然会显示给你看,并可修改成别的桩号)(V)中桩到边桩的方位角,即与中桩前进方向方位角的夹角(注意:左转为负数,右转为正数)(D)中桩到边桩的距离(中桩输入0)计算完成会显示四个成果:DMS放样方位角(置仪点与所求桩号的放样方位角)I放样距离(置仪点与所求桩号的放样距离)所求桩号的X坐标所求桩号的Y坐标按—号继续下一步放样计算(U=3)数据库输入原始数据计算中边桩(偏差检测、资料编写)(B)步长(步长就是间隔长度,当要计算大量有相同距离间隔且相同中边桩,步长就是好东西了,输入数量每次计算自动加减桩号距离)(MM)所允许的最大误差(毫米为单位,比如高速的中线最大误差是20MM,就输入20)(Q)所求桩号(计算第二个桩开始Q已经自动加入步长不用手动输入,但仍然会显示给你看,并可修改成别的桩号)(V)中桩到边桩的方位角,即与中桩前进方向方位角的夹角(注意:左转为负数,右转为正数)(D)中桩到边桩的距离(中桩输入0)计算完成会显示四行成果:DMS放样方位角(置仪点与所求桩号的放样方位角)I放样距离(置仪点与所求桩号的放样距离)所求桩号的X坐标所求桩号的Y坐标按(—)号显示偏差检测成果:所求桩号的X坐标所求桩号的Y坐标所求桩号的双轴偏差X轴偏差Y轴偏差按-号下一步计算(U=4)人工输入原始数据计算中边桩(线元角计算)(Y)置仪点X坐标(O)置仪点Y坐标(B)步长(H+)起算点桩号(E)起算点X坐标(F) 起算点Y坐标(A)起算点方位角(+-C)起算点曲率(即为半径分之一,也就是1/半径,直线为0,左转为负,右转为正)(+-Z)终算点曲率(即为半径分之一,也就是1/半径,直线为0,左转为负,右转为正)(G)终算点桩号(Q)所求桩号(既是起算点桩号,因程序内字符转换冲突只好再输入) (V)左右夹角(左转为负,右转为正,中桩输入0)(D)中边桩距离(中桩输入0)计算完成会显示四个成果:(此处可忽略,参照U=1计算成果)计算完成按(AC/on)一次,然后按(EXIT)将内容(Prog 0-0)清除输入字母(R),再按(EXE)显示为线元方位角数字(注:必须用度,分,秒抄记,因为计算结果为百进位,度分秒为60进位)注:此计算成果谨适用于数据库线元角输入(即:数据库曲线段线元角ZH~HY、HY~YH、YH~HZ段)(U=5):人工输入原始数据推算开挖、填筑桩状态(不常用)(Y)置仪点X坐标(O)置仪点Y坐标(H+)起算点桩号(E)起算点X坐标(F) 起算点Y坐标(A)起算点方位角(+-C)起算点曲率(即为半径分之一,也就是1/半径,直线为0,左转为负,右转为正)(+-Z)终算点曲率(同上)(G)终算点桩号(W)实测大地高程(S)变坡点设计高程(I) =变坡点设计高程与实测大地高程之高差(正为填方、负为挖方)(P) 填方或挖方的坡比(若1:0.75则输入0.75填挖坡比全为正)(B)中桩到变坡点的宽度(D)=推算的中桩到开挖、填筑桩距离(D?)采用的中桩到开挖、填筑桩距离(Q)所求开挖、填筑桩号(V)左右夹角(注:只能输入线路右边90和左边-90因为开挖、填筑桩总是垂直的)计算完成显示四个结果:(同U=6显示结果相同,按—号下一步计算)(U=6):数据库输入原始数据推算开挖、填筑桩状态(Y)置仪点X坐标(O)置仪点Y坐标(W)实测大地高程(S)变坡点设计高程(距离地面最近的那个平台或路面高程)(I)=变坡点设计高程与实测大地高程之高差(自动计算所得结果,此处不需输入。
Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序
颜色文字Casio5800交点法与线元法(积木法)匝道坐标正反算放样程序(XUFENG 2011.2.14)本人一直以来想找一个交点法与线元法相结合的坐标正反算程序,在网上找了很久很久,没能找到一个较为满意的,有幸在测量空间看到大歪哥的《Casio5800交点法程序》与《线元法(积木法)匝道坐标正反算放样程序》,根据歪哥意见“需要的自行修改结合XY框架自己修改为数据库反算程序等”,本人不才,采用最笨的办法将两个程序综合了一下,使之能既能进行交点法正反算,又能进行线元法正反算。
在此特别感谢大歪哥!将程序发上来,愿与大家一同交流学习欢迎大家吐口水,只要能进步就行!程序由一个主程序ZBZFS和8个子程序(JS、XY-A、XY-B、JDYS、1、2、3、4)构成,运行时只需运行主程序即可!本程序适用于单交点对称型、不对称型、无缓和曲线单圆曲线型一个交点范围内(含交点前后有直线段时)的曲线要素核对和坐标正反算,手工输入要素,对设计图纸的“直线、曲线转角表”中交点数据进行复核验证,并能对单一线元进行坐标正反算。
1主程序名:ZBZFS(功能:进入计算主程序)65→Dimz↙Deg:Fix 3↙"1.JD ZFS 2. ZHADAO ZFS"? I: I→Z[61]: "1.ZHONG SHU JS 2. JS"? I↙If I=1: Then Goto1: Else Goto2:IfEnd↙LbI 1 :If Z[61]=1: Then Prog"JDYS":Else Cls:"K0"?A:"KN"?L :"X0"?U :"Y0"?V :"F0"?W :"R0"?P :"RN"?Q:"ZX:-1,+1,0"?G:IfEnd↙LbI 2 :Prog"JS"2子程序名:JS(功能:选择正算或反算模式)Cls:"XC"?H:"YC"?Z↙Cls:"1.ZS 2.FS"? I: I=2=>Goto 3↙LbI 1 : Cls: If Z[61]=1: Then"JD ZS KX+XXX"?K :Prog"4": Else "ZHAD AO ZS KX+XXX"?K :IfEnd↙LbI 2: Cls:90→B: Cls:"RJ Or 0 To K"?B:B=0 =>Goto 1:"Z"?T↙Prog "XY-A"↙X+Tcos(M+B)→X↙Y+Tsin(M+B)→Y↙360Frac((M+360)÷360→M↙Pol(X-H,Y-Z : 360Frac((J+360)÷360→J↙2→O: Prog "XY-B":Goto 2↙LbI 3 : Cls: If Z[61]=1: Then"JD FS KN+"?K:"X"?C:"Y"?D:Prog"4":El se Cls: "ZHADAO FS":"X"?C:"Y"?D:IfEnd↙LbI 4 :Prog "XY-A"↙(D-Y)sin(M)+(C-X)cos(M)→H↙If Abs(H)>X10-3 :Then K+H→K:Goto 4:IfEnd↙(D-Y)÷cos(M)→T↙3→O: Prog "XY-B":Goto 3↙3子程序名:XY-A(功能:坐标计算程序)5→N: G(Q-1-P-1)÷Abs(L-A)→F: Abs(K-A)÷N→R: 90R÷π→S:W+(FNR+2GP-1)NS→M:1→E↙U+R÷6×(Cos (W)+Cos (M) +4∑(Cos (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+2∑(Cos (W+((EFR+2GP-1)ES,E,1,(N-1)))→X ↙V+R÷6×(sin (W)+sin (M) +4∑(sin (W+((E+0.5)FR+2GP-1)×(E+0.5)S),E,0,(N-1))+ 2∑(sin (W+((EFR+2GP-1)ES,E,1,(N-1)))→Y↙4子程序名:XY-B(功能:显示正算或反算结果)If O=2:Then↙Cls :"K×××=":"Z=":"X=":"Y=": Locate 6,1, K : Locate 4, 2, T : Locat e 4,3, X : Locate 4,4, Y◢If T=0 :Then Cls :"QF(Z)=": Locate 8,1, M:M▼DMS◢IfEnd↙Cls :"K×××=":"S=": Locate 6,1, K : Locate 4, 2, I :"F=":J:J▼DMS◢IfEnd↙If O=3:Then "X=":"Y=":"K×××=":"Z=": Locate 4,1,C: Locate 4, 2, D : Locate 6,3,K :Locate 4,4,T◢IfEnd:Cls↙5子程序名:4(功能:将交点参数转为线元计算参数)LbI 1: IF Z[48]<0 :Then -1→Z[62] : Else:1→Z[62]:IfEndLbI 2: If K≥Z[57]:Then Z[57]→A :Z[1]→L :Z[23]→U :Z[24]→V : Z[31]→W : 1 0^45→P :10^45→Q : 0→G:IfEnd↙LbI 3:If K≥Z[1]:Then Z[1]→A : Z[2]→L : Z[19]→U : Z[20]→V :Z[29]→W : 10 ^45→P :Z[46]→Q : Z[62]→G: IfEnd↙LbI 4:If K≥Z[2]:Then Z[2]→A : Z[4]→L :Z[25]→U : Z[26]→V :Z[32]→W : Z[4 6]→P : Z[46]→Q : Z[62]→G: IfEnd↙LbI 5:f K≥Z[4]:Then Z[4]→A : Z[5]→L : Z[27]→U :Z[28]→V : Z[33]→W : Z [46]→P : 10^45→Q : Z[62]→G: IfEnd↙LbI 6:If K≥Z[5]:Then Z[5]→A : Z[5]+1000→L :Z[21]→U : Z[22]→V : Z[30]→W :10^45→P : 10^45→Q : 0→G : IfEnd↙6子程序名:JDYS(功能:输入交点要素、显示交点要素及主点坐标)Cls : "BP"?H:H→Z[57]:"K(JD)"?K:K→Z[41] :"X(JD)"?X :X→Z[4 2]:"Y(JD)"?Y:Y →Z[43]:"LS1"?B:B→Z[44] :"LS2"?C:C →Z[45]: ?R:R →Z[46]:"(ZH)FWJ°"?M:M→Z[47] : "α(Z-,Y+)°"?O:O→Z[48] : Z[47]+Z [48]→Z[49]: Prog "1":Prog "2"↙Cls :"T1=":"T2=":"L=":"LY=": Locate 4,1, Z[50] : Locate 4,2, Z[51]: L ocate 4,3, Z[52] : Locate 4,4, Z[53]◢Cls :"E=": Locate 7,1, Z[54]Cls :"K(QD)=": "X=": "Y=": "FWJ="Locate 7,1,Z[57] :Locate 7,2, Z[2 3] :Locate 7,3, Z[24] :Locate 7,4, Z[31] ◢Cls :"K(ZH)=": "X=": "Y=": "FWJ=":Locate 7,1,Z[1] : Locate 7,2, Z [19] :Locate 7,3, Z[20] :Locate 7,4, Z[29]◢Cls : "K(HY)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[2] : Locate 7,2, Z[25] :Locate 7,3, Z[26] :Locate 7,4, Z[32]◢Cls :"K(QZ)=": Locate 7,1,Z[3]◢Cls :"K(YH)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[4] : Locate 7,2, Z[27] :Locate 7,3, Z[28] :Locate 7,4, Z[33]◢Cls :"K(HZ)=": "X=": "Y=": "FWJ=": Locate 7,1,Z[5] : Locate 7,2, Z[21] :Locate 7,3, Z[22] :Locate 7,4, Z[30]◢7子程序名:1(功能:计算交点要素)If Z[48]<0 :Then -1→Z[55] : Else 1→Z[55] : IfEnd : Z[55]* Z[48]→Z[56] ↙Z[44] 2 ÷24÷Z[46]- Z[44]^(4)÷2688÷Z[46] ^(3) →Z[6] ↙Z[45] 2 ÷24÷Z[46]- Z[45]^(4)÷2688÷Z[46] ^(3) →Z[7] ↙Z[44]÷2-Z[44]^(3)÷240÷Z[46]2 →Z[8] ↙Z[45]÷2-Z[45]^(3)÷240÷Z[46]2 →Z[9] ↙Z[8]+(( Z[46]+Z[7]-( Z[46]+Z[6])cos(Z[56]))÷sin(Z[56]))→Z[50]↙Z[9]+(( Z[46]+Z[6]-( Z[46]+Z[7])cos(Z[56]))÷sin(Z[56]))→Z[51]↙Z[46]* Z[56]π÷180+( Z[44]+ Z[45]) ÷2→Z[52]↙Z[46]* Z[56]π÷180-( Z[44]+ Z[45]) ÷2→Z[53]↙(Z[46]+(Z[6]+Z[7])÷2)÷cos(Z[56]÷2)- Z[46]→Z[54]↙Z[41]-Z[50]→Z[1] ↙↙Z[1]+Z[44]→Z[2] ↙↙Z[2]+Z[53]÷2→Z[3]↙Z[1]+Z[52]-Z[45]→Z[4]↙Z[4]+Z[45]→Z[5]↙8子程序名:2(功能:计算主点坐标及切线方位角)Z[42]-Z[50]cos(Z[47])→Z[19]: (直缓坐标)Z[43]-Z[50]sin(Z[47])→Z[20]↙Z[47]→Z : 360Frac((Z+360)÷360→Z[29] (方位角)Z[42]+Z[51]cos(Z[49])→Z[21]: (缓直坐标)Z[43]+Z[51]sin(Z[49])→Z[22]↙Z[49]→Z: 360Frac((Z+360)÷360→Z[30] (方位角)Z[1]-Z[57]→L↙(H→Z[57]为前直线起点桩号)Z[42]-( Z[50]+L)cos(Z[47])→Z[23]↙(前直线起点坐标)Z[43]-( Z[50]+L)sin(Z[47])→Z[24]↙Z[47]→Z : 360Frac((Z+360)÷360→Z[31]↙(方位角)Z[44]→Z[12]:Z[44]→Z[13]:Prog"3"↙Z[4]-Z[1]→L:90(2L-Z[44])÷Z[46]÷π→Z[11]↙Z[46]sin(Z[11])+Z[8]→Z[14]:Z[46](1-cos(Z[11]))+Z[6]→Z[15]↙Z[19]+Z[14]cos(Z[47])-Z[55]Z[15]sin(Z[47])]→Z[27]↙(圆缓点坐标)Z[20]+Z[14]sin(Z[47])+Z[55]Z[15]cos(Z[47])]→Z[28]↙Z[47]+Z[55]Z[11]→Z: 360Frac((Z+360)÷360→Z[33]↙(方位角)Z[2]-Z[1]→L:90(2L-Z[44])÷Z[46]÷π→Z[58]↙Z[46]sin(Z[58])+Z[8]→Z[14]:Z[46](1-cos(Z[58]))+Z[6]→Z[15]↙Z[19]+Z[14]cos(Z[47])-Z[55]Z[15]sin(Z[47])]→Z[25]↙(缓圆点坐标)Z[20]+Z[14]sin(Z[47])+Z[55]Z[15]cos(Z[47])]→Z[26]↙Z[47]+Z[55]Z[58]→Z: 360Frac((Z+360)÷360→Z[32]↙(方位角)9子程序名:3(主点坐标计算辅助程序)If Z[12]=0 :Then 0→Z[14]: 0→Z[15]:Else↙Z[12]- Z[12]^(5)÷40÷(Z[46]*Z[13])2+ Z[12]^(9)÷3456÷(Z[46]*Z[13])^(4) →Z[14]↙Z[12]^(3)÷6÷(Z[46]*Z[13])-Z[12]^(7)÷336÷(Z[46]*Z[13])^(3)+ Z[12]^(11) ÷42240÷(Z[46]*Z[13])^(5)→Z[15] ↙IfEnd↙程序说明:1、进入程序:1.JD ZFS 2. ZHADAO ZFS? 选1为交点法正反算(以后操作均为交点法计算),选2为线元法正反算(以后操作均为线元法计算)2、ZHONG SHU JS 2. JS?选1重输参数,选2直接进入交点法或线元法正反算(参数为已输过的参数)3、参数输入:一、交点法已知数据输入:BP?上一交点ZH桩号K(JD)?交点桩号X(JD)?交点X坐标Y(JD)?交点Y坐标LS1 ?第一缓和曲线长度LS2 ?第二缓和曲线长度R ? 圆曲线半径(ZH)FWJ°?交点前(即前交点至本交点也即ZH点)的正切线方位角α(Z-,Y+)?本交点处线路转角(左转为负,右转为正,度分秒输入)交点法计算要素显示:T1=第一切线长T2=第二切线长L=曲线总长LY=圆曲线长E=曲线外距K(ZH)=直缓点桩号K(HY)=缓圆点桩号K(QZ)=曲中点桩号K(YH)=圆缓点桩号K(HZ)=缓直点桩号二、线元法已知数据输入:K0?KN? R0? RN?F0?X0? Y0?ZX? 分别为线元起点桩号、终点桩号、起点半径、终点半径、起点切线方位角、起点X坐标、起点Y坐标、线元转向。
5800公路全线坐标正反算程序
FX-5800公路全线坐标正反算程序1. 主程序(ZBJS)Lbl 4:"1.SZ => XY":"2.XY => SZ":?N:?S:Prog“SUB0”↙1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:N=1 => Goto1:Goto2↙Lbl 1:? Z:Abs(S-O) →W:Prog "SUB1":F-90→F:Cls↙"XS=":Locate 4,1,X:"YS=":Locate 4,2,Y:“FS=”:F▲DMS◢Goto 4↙Lbl 2:?X:?Y:X→I:Y→J:Prog“SUB2”:O+W→S:Cls ↙“S=”:Locate 4,1,S:“Z=”:Locate 4,2,Z◢Goto 42. 正算子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+L WD))+Bcos(G+ QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+ QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y 2. 反算子程序(SUB2)G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T) ) →W:0→Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:If Abs(Z)<1*10-6:Then Goto 1:Else W+Z→W:Goto0:IfEnd ↙Lbl 1:0→Z:Prog“SUB1”:(J-Y) ÷sin(F) →ZSUB0 数据库子程序Goto1↙同时保存多个曲线时的指针Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q(线元转角,左转为负,右转为正,直线为0):Return:IfEnd↙IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q(线元转角,左转为负,右转为正,直线为0):Return:IfEnd↙……………..坐标正算说明:1:运行主程序ZBJS,选择1.SZ=>XY(正算坐标)2.XY=>反算坐标。
5800程序(线元法全线坐标正方算)
5800程序(线元法全线坐标正方算)本程序比较复杂.测量原理不是很明白的朋友慎用请大家经常关注程序B-H的更新2009,5,10日修改见超高子程序B-H黄色部分,另超高数据库增加在超高缓和段输入超高为公路外侧超高说明2009,5,8日正反算选择程序:ZS-FS 更改小错,详见紫色修改内容2009,4,30日更改如下:把原来的4个子程序分解成5个子程序,解决了一个大的竖曲线不能包含几个超高变化段,另外程序内也有两处改变请看红色区域.本程序经过综合考虑5800的设计缺陷,计算速度较慢故只使用高斯四节点法为计算内核.支持多条线路正反算,中桩,边桩高程计算,超高计算,超高缓和计算,加宽计算,加宽缓和计算,边坡开口线计算,挡土墙坡脚线计算,考虑了中间绿化带的影响,适用与国家高速公路至乡村四级公路计算和放样,路基路面工程可以直接得出中边桩的设计三维坐标,去掉加宽和超高影响的计算困难,边坡和坡脚线计算可直接在边坡上提取坐标带入程序,经过所有设计因素的综合,得出更改边距并显示修改偏差后的坐标.反算速度明显提高,只需要3秒.程序无错,可放心输入,另本程序可以增加隧道超欠挖计算子程序,非常方便,因为每个隧道的断面数据不一样,所以在此没有明确写出,有需要的可以联系我.本人QQ76805071,只为交友.计算器主程序:ZHU-CHENG-XULbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。
”?U:U=1=>Prog”ZS-FS”:进入公路三维程序U=2=>Porg”ZS”:进入坐标正算程序U=3=>Porg”FS”:进入坐标反算程序U=4=>Porg”XY =>SG”:进入大地坐标转施工坐标程序…………Goto0:说明:计算器总的主程序,进入选择各种分支计算程序。
1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。
选择错误重新选择。
此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.公路三维部分正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BP-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U://选择线路1~NIf W=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序If W=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”? L: //输入桩号Porg”0。
卡西欧计算器5800程序
If Z≥26157.8 And Z≤27421.915:Then 300000→R:171.915→T:27250→C:32.65→G:-0.00356→I:Goto 0:IfEnd:
If Z≥26915.555 And Z≤27316.952:Then 26915.555→O:11382.792→U:2842.531→V:105。55’51.83”→G:401.396→H:1800→P: 1800→R:1→Q:Goto 0:IfEnd:
……
LbI 0:O:U:V:G:H:P:R:Q:
程序名:1ZD-XY
Lb1 0:Norm 2
F=1:(正反算判别,F=1正算,F=2反算,也可以改F前加?,改F为变量)
Z[1]=90(与路线右边夹角)
Prog"THB":F=1=>Goto 1:F=2=>Goto 2
Lb1 1:Fix 3:" X=":Locate 6,4,X◢
" Y=":Locate 6,4,Y◢
V+W(Asin(G+QEKW(C+KWS))+Bsin(G+QELW(C+LWS))+Nsin(G+QEMW(C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W(C+(1-K)WS))) →Y:
G+QEW(C+WS)+Z[1]→Z[2]:X+Dcos(Z[2])→X: Y+Dsin(Z[2])→Y
(整理)5800计算器全线坐标计算放样程序.
任意桩号坐标及高程一、程序功能本程序由一个主程序(ZHUCHENXU)和几个子程序——正算子程序(SUB1)、反算子程序(SUB2)、数据库(SUB3)、曲线要数(SUB4,4-1)、边坡放样程序(BIANPO),可以根据直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标及中桩高程,对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序增加变量18→DimZ1.主程序(ZHUCHENXU)"1.SZ → XY,2.XY → SZ,3.SDYX,4. BIANPO "?N:Lbl 1:”ZHUANGHAO=”?S: Prog "SUB3":N≥2=>Goto 2: Abs(S -O)→W:”BIANZHU=”?→Z:Prog "SUB1":Prog"SUB4":“H=”H◢"XS=”:X→X◢"YS=”:Y→Y◢"FS=”:(F-90) →F:F►DMS◢ Goto1 Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:P rog "SUB2": "S=":(O+W) →S◢"Z="Z→Z◢ Z→Z[17] :If N=3:Th en Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:G oto 22.SUB1(正算子程序名)0.1739274226→A:0.3260725774→B 0.0694318442→K:0.330009482→L 1-L→F:1-K→MG+QEKW(C+KWD)→Z[1]G+QELW(C+LWD)→Z[2]G+QEFW(C+FWD)→Z[3]G+QEMW(C+MW D)→Z[4]A×cos(Z[1])→X(剩號可省略) X+Bcos(Z[2])→XX+Bcos(Z[3])→XX+Acos(Z[4])→XU+WX→XAsin(Z[1])→YY+Bsin(Z[2])→YY+Bsin(Z[3])→YY+Asin(Z[4])→YV+WY→YG+QEW(C+WD)+90→FX+Zcos(F)→XY+Zsin(F)→Y3.SUB2(反算子程序名)G-90→T(Y-V)cos(T)-(X-U)sin(T)→WAbs(W)→W:0→ZLbI 4:Prog"SUB1"T+QEW(C+WD)→L(J-Y)cos(L)-(I-X)sin(L)→ZIf Abs(Z)<1E-6:Then 0→Z :Prog"SUB1"(J-Y)÷sin(F)→ZElse W+Z→W:Goto 4:IfEnd注:1E-6即是10的負6次方,亦即是等於0.000001輸入時按SHIFT---log---(-)---64. 数据库(SUB3)If S<226100:Then Cls:Stop: IfEndIf S<226255.833:Then 226100→O:99037.9736→U: 4282.3590→V:201.3266304→G:1045→P:1045→R:253.543→H:0→Q: Goto 1:IfEndIf S>And S<…………If S>236005.651:Then Cls:Stop: IfEndLbl 1: 1÷P→C:(P-R)÷(2HPR) →D:180÷π→E:5、曲线主程序: 1-E.BG(SUB4)Fix 3:Prog”Z.EBG”:R Abs(D-C)/2→T:if D-C>θ :Then 1→W:Else -1→W:ifendif S<A:Then -C→I:Else D→I:ifendAbs (A-S)→Lif L-T>θ:Then Z+IL→H:Else Z+IL+W(T-L)2/2/R→H:"HS=":H◢曲线数据库: Z.EBG(SUB4-1)if S<332.599:Then 0.02793→C:-0.03309→D:1800→R:235→A:32. 7→Z: goto 1:ifendif S>322.599 And K<734.085:Then -0.03309→C:-0.00485→D:60 00→R:460→A:25.254→Z: goto 1:ifend----Lbl 1C—前坡:D—后坡:R—呵呵,都知道是什么!A—变坡点:Z—变坡点设计高O—从设计高程点处垂直向下的距离:N—距设计高程处的平距(若你的设计高程线是路中线的话,请把0.75改为0):J—所求桩号处的横坡.6. 边坡放样程序(BIANPO) (SUB6)“QPDJL=”? → Z[3]: “QPDGD=” : Prog “(SUB4)”:H→ Z[4]◢“PG=” ?→ Z[5]:PTK→Z[6]:“P1=” ? → Z[8]:“P2=”? → Z[9]:“P3=” ? → Z[10] (没有的话就删): Z[7]-Z[4] → Z[11]:If Z[11]〈0 Then AbsZ[11] →Z[11]: “T=”:Z[1 1] ◢Else“W=”:Z[11] ◢IfEnZ[11]÷Z[5] →Z[12]:If Z[12]〈1 Then Z[8]×Z[11] →Z[13]:Else Z[8]×Z[5]+Z[9]×Z[5]×(Z[12]-1)→Z[13]:IfEnd: AbsZ [17]-(Z[13]+Z[6] ×Int (Z[12])+Z[3])→Z[14]:“BP+C-J=”: Z[14] ◢说明:Z[3]= QPDJL ………………起坡点离中桩距离Z[4]=“QPDGD” ……………起坡点设计标高Z[5]=“PG” ………………坡高Z[6]=“PTK” ……………… 平台宽度Z[7]=“DMG” ………………实测地面高度Z[8]=“P1” ………………一级边坡坡度Z[9]=“P2” ………………二级边坡坡度Z[10]=“P3” ……………… 三级边坡坡度(没有的话就删)Z[14]=“BP+C-J=” ………………边坡超欠挖宽度(+表超,-表欠)三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
5800计算器全线坐标计算放样正反算
5800计算器全线坐标计算放样正反算程序主程序坐标正反算程序名称:ZBZFSLB1 A↙Cls : Fix 4 : 30→Dim Z :"0=ZS,1=FS"?Z ↙If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)If Z=1:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=1进入反算里程边桩)Lb1 B ↙“K=”?K :(计算里程)Prog"SJK1 ":Prog”ZBFY” :Goto A↙子程序数据库 SJK1IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O(注:左偏曲线输入-1→O,右偏曲线输入1→O): 半径→R : 曲线偏角→A:第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : Prog”XLZBJSCX”:Return: IFEND↙IF…………Prog”XLZBJSCX”:Return:IFEND(曲线段分段输入)↙补充直线段输入如下(单独直线段)IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E: Z[16]+ (K- Z[3])*COS E→Z[18]:Z[17]+ (K- Z[3])*SIN E→Z[19] : Return:IFEND子程序坐标正算,名称:XLZBJSCXLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[7]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[6]+ Z[7])→Z[25] ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11] )/SIN A→Z[12]↙(切线T1)Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11] )/SIN A→Z[13]↙(切线T2)B+ Z[12]*COS (E+180)→ Z[16] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[17] ↙(ZH点Y)Z[1]- Z[25]→Z[3] ↙(ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)GOTO 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3] AND K> Z[2] : THEN GOTO 4 : IFEND ↙IF K≤Z[4] AND K> Z[3] : THEN GOTO 5 : IFEND ↙IF K≤Z[5] AND K> Z[4] : THEN GOTO 6 : IFEND ↙IF K≤Z[1] AND K> Z[5] : THEN GOTO 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →Z[23] : 0→Z[24] : E→T : GOTO 8↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →Z[23] ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Z[24] ↙90*H^2/( R*π* Z[6]) →T ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→Z[23] ↙R*(1-COS T)+ Z[10]→Z[24] ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^9/(3456*R^4* Z[7]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]COS A+ Z[12]-U*COS A-V*SIN A→Z[23] ↙Z[13]*SIN A-U*SIN A+V*COS A→Z[24]↙IF O>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙GOTO 8 ↙LLb1 8IF O<0 : THEN - Z[24]→Z[24] : IFEND ↙Z[16]+Z[23]*COS E-Z[24]*SIN E→Z[18] ↙Z[17]+Z[23]*SIN E+Z[24]*COS E→Z[19] ↙ReTurn↙子程序反算里程边桩,名称:FSLCBZLb1 1↙"XK="?X:"YK="?Y↙(输入任意测点的XY坐标):“K=”?K (试算里程,任意输入标段内里程点即可,也可以输入大致的估算里程加快速度)↙Lb1 2↙Prog"SJK1 ":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→S ↙If S<0.0001:Then Goto 4:Else Goto 3:Ifend↙Lb1 3↙K+S→K: Prog"SJK1":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→Q↙If Q<0.0001 :Then Q→S: Goto 4:Else IF Q<S: THEN K+Q→K: Goto 2 :Else IF Q>S :THEN K-Q→K:Goto 2:Ifend:Ifend:Ifend↙Lb1 4↙Pol (X-Z[18],Y-Z[19]:"DP(-Z+Y)=":I◢(偏距)(由于该程序不能准确判断边桩左右方向,暂作修改,取消左右边判定)"K=":K+S→K◢(里程)Return↙子程序坐标放样:ZBFYLB1 0 ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y):Pol(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角) “QXJ=” :T◢(计算里程点切线方位角,可以不显示)“XI=” : Z[18] ◢(中线X)“YI=” : Z[19] ◢(中线Y)Pol(Z[18]-M,Z[19]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢(输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[18]+D*COS(T+P) →Z[20] ↙Z[19]+D*SIN(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)Pol(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)Return↙。
CASIO 5800道路坐标计算器程序
CASIO 5800计算器程序一、程序功能:本程序由一个主程序(AK)及两个子程序:坐标正算程序(SUB1)、坐标反算程序(SUB2)平曲线数据库(PQX)构成,可以根据曲线段的组成部分:直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、止点坐标、起点切线方位角、线元长度、起点曲率半径、止点曲率半径、里程、边距或坐标),对该曲线段范围内任意里程中边桩坐标进行正反算。
二、源程序:1、主程序(AK)A排在前面,方便运行程序,不用往下翻页了。
Deg:“0→ZX,1→A,2→B”?Z :“1→JDF,2→XYF”?E:“X(CZ)”?A:“Y”?B 说明:设置角度模式,选择线路0为主线,1为A匝道。
可以自己再增加。
选择计算方法,交点法还是线元法计算坐标,1为交点法,2为线元法。
输入测站坐标,如不需要计算极坐标,即放样的时候需要输入坐标到仪器里面去,则X(CZ)输0,Y不用管可以为任何值,建议把测站坐标输进去,省了放一个点输一次坐标数据到仪器里面去。
只有一条线路可以不需要黄色部分。
“1.Ki→XY,2.XY→Ki”?N:Lbl 0:“Ki”?K:Prog“PQX”IfE=1:Then Prog“JD”:IfEndN=1=>Goto 1:N=2=>Goto 2Lbl 1?LK-O→W:Prog“SUB1”说明:1为正算,即知道桩号和偏距(注意只能计算边桩,不能计算斜交的点,构造物可以通过后面的ZHIXIAN程序计算),2为反算,即知道坐标,求桩号和偏距。
Ki为桩号,正算直接输,反算需要输入附近桩号,第一次计算最好输好桩号之后,把反算出来的桩号再输进去,重新反算下,如果和第一次反算的桩号一样,那就说明反算的桩号正确。
调用平曲线数据库,输入偏距L(偏距左输负数,右输正数),如果选择的是交点法计算,那需要输入是数据库是交点数据,调用正算子程序SUB1。
If A≠0:Then Pol(X-A,Y-B):“JULI=”:I◢J<0=>J+360→J:“FWJ=”:J ▶DMS◢Else “Xi=”:X◢“Yi=”:Y◢“FWJ=”:F ▶DMS◢If End :Goto0说明:正算,如果前面X(CZ)输0,则直接显示X、Y坐标和方位角,否则显示仪器到放样点的距离和方位角。
5800全线贯穿坐标计算程序(简单)
CASIO5800p全线贯通坐标计算简单程序1. 正算主程序(ZHCX) (不运行)“L(-Z,+Y)=”?L:“YJJ=”?W(P-R)÷(2(H-O)PR)→DAbs(K-O)→J4→DimZ0.1184634425→A: 0.2393143352→B: 0.2844444444→Z[4]: 0.0469100770→C:0.2307653449→E:0.5→Z[1 ]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: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:F=G+QJ(1÷P+JD) ×180÷π:X+Lcos(F+W)→X:Y+Lsin(F+W)→Y”X=”:X→X◢”Y=”:Y→Y◢”QX FWJ=”:F◢Prog “FY”2 . 参数子程序(直接运行)M(主线) 一条线路一个名称“DKI=”?KIf K≦线元终点:Then 线元起点X值→I: 线元起点Y值→S:线元起点切线方位角→G:线元起点桩号→O:线元终点桩号→H:线元起点半径→P:线元终点半径→R:(-1,0,1)→Q:Goto 1:IfEnd………If K≦线元终点:Then 线元起点X值→I: 线元起点Y值→S:线元起点切线方位角→G:线元起点桩号→O:线元终点桩号→H:线元起点半径→P:线元终点半径→R:(-1,0,1)→Q:Goto 1:IfEndLbi 1Prog “ZHCX”3. 放样程序(FY)(不运行)“X0=”?M:“Y0=”?NPol(X-M,Y-N)If J≦0:Then J+360→J:IfEnd“FWJ=”:J▲DMS◢“JU-LI=”:I◢说明:一、程序功能及原理1.功能说明:本程序由一个主程序和两个子程——正算主程序(ZH)、参数子程序(M)、放样程序(FY),可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、终点里程、起点曲率半径、止点曲率半径)及里程边距或坐标,对该线元段范围内任意里程中边桩坐标进行正算。
fx-5800p全线坐标正反算带高程计算程序(线元法)
曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序一、程序功能及原理1.功能说明:本程序由一个主程序(TYQXJS)和五个子程——正算子程序(SUB-ZS)、反算子程序(SUB-FS)等构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
本修改版程序既可实现正算全线贯通,亦可实现反算全线贯通。
本程序在CASIO fx-5800P计算器运行。
2.计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。
二、源程序1.主程序(TYQXJS)Deg:fix 3119→DimZ“INPUT(0) Or DATA(Else)”?ILbl 0:“1.SZ=>XY,2.XY=>SZ,3.TF=>CK,4.SD=>FY,5.TW=>FY”?NIf N=1 Or N=5:Then Goto 1Else If N=2 Or N=3 Or N=4:Then Goto 2Else Goto 3IfEnd:IfEndLbl 1:“K(m)=”?SIf S<0:Then Goto 0:IfEnd“JL(m)=”?ZIf Z≠0:Then “ANGLE→R(Deg)=”?M:IfEndIf I=0:Then Prog “DAT1”:Else Prog “DAT2”:IfEndS-O→W:If W<0:Then Goto 0:Else If W>H:Then Goto 0:IfEnd:IfEndProg “SUB-ZS”:Prog “SUB-GC”If Z<0:Then“XL(m)=”:X◢“YL(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse If Z>0:Then “XR(m)=”:X◢“YR(m)=”:Y◢If N=5:Then Prog “SUB-TW”:IfEndElse “X(m)=”:X◢“Y(m)=”:Y◢“Hs(m)=”:L◢“FWJ=”: F►DMS◢IfEnd:IfEndGoto 1Lbl 2:“X(m)=”?X:If X<0:Then Goto 0:IfEnd“Y(m)=”?YIf N=3 Or N=4:Then “H(m)=”?→Z[2]:IfEndX→Z[4]:Y→Z[5]:90→MIf I=0:Then Prog “DAT1”G+QEH(C+HD)→F:1→J:U→Z[8J]:V→Z[8J+1]G-M→A:F-M→B:Prog “SUB-ZX1”:Goto BG+M→A:F+M→B:Prog “SUB-ZX1”:Goto B:IfEnd0→J:Lbl A: Isz JZ[8J+3]-M→A:Z[8(J+1)+3]-M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog“DAT1” :Goto B:IfEndZ[8J+3]+M→A:Z[8(J+1)+3]+M→B:Prog “SUB-ZX1”If Z[6]Z[7]<0:Then J→J:Prog “DAT1” :Goto B:Else Goto A:IfEndLbl B:Prog“SUB-FS”O+W→S:Prog “SUB-GC”“K(m)=”:S◢“Hs(m)=”:L◢“JL(m)=”:Z◢If N=3:Then Prog “WIDE”:IfEndIf N=4:Then Prog “SDFY”:IfEndGoto 2Lbl 3:“TYQXJS→END”2. 正算子程序(SUB-ZS)0.1184634425→A: 0.2393143352→B:0.2844444444→Z[1]:0.0469100770→K:0.2307653449→L:0.5→Z[3]U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Z[1]cos(G+QEZ[3]W(C+Z[3]WD))+Bcos(G+QE(1 -L)W(C+(1-L)WD))+Acos(G+QE(1-K)W(C+(1-K)WD)))→XV+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Z[1]sin(G+QEZ[3]W(C+Z[3]WD))+Bsin(G+QE(1-L)W(C+(1-L)WD))+Asin(G+QE(1-K)W(C+(1-K)WD)))→YG+QEW(C+WD)+M→FX+Zcos(F)→X:Y+Zsin(F)→YF-M→F:If F<0:Then F+360→F:IfEndReturn3. 反算子程序(SUB-FS)G-M→T:Abs((Y-V)cos(T)-(X-U)sin(T))→W:0→ZLbl C:Prog “SUB-ZS”T+QEW(C+WD)→L:(Z[5]-Y)cos(L)-(Z[4]-X)sin(L)→ZIf Abs(Z)<10-6:Then Goto D:Else W+Z→W:Goto C:IfEndLbl D:0→Z:Prog “SUB-ZS”:(Z[5]-Y)÷cos(F)→Z:Return4.高程计算子程序(SUB-GC)Prog “DAT3”0.5RAbs(0.01(E-D))→TIf E>D:Then 1→C:Else -1→C:IfEndIf S<A:Then -0.01D→W:Else 0.01E→W:IfEndAbs(A-S)→LIf L>T:Then B+WL→L:Else B+WL+C(T-L)2÷2÷R→L:IfEndReturn5. 垂距计算子程序(SUB-ZX1)(Z[5]-Z[8J+1])cos(A)-(Z[4]-Z[8J])sin(A)→Z[6](Z[5]-Z[8(J+1)+1])cos(B)-(Z[4]-Z[8(J+1)])sin(B)→Z[7]Return6.曲线元要素数据库:DAT1(两条线路,可扩充为多条线路)If I=0:Then Goto E: Else If I=2:Then Goto F:IfEnd:IfEndJ=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd………………………………………………..Goto HLbl F: J=1=>***→Z[8]:***→Z[9]:***→Z[10]:***→Z[11]:***→Z[12]:***→Z[13]:***→Z[14]:*** →Z[15]:IfEndJ=2=>***→Z[16]:***→Z[17]:***→Z[18]:***→Z[19]:***→Z[20]:***→Z[21]:***→Z[22]:***→Z[23]:IfEndJ=3=>***→Z[24]***→Z[25]:***→Z[26]:***→Z[27]:***→Z[28]:***→Z[29]:***→Z[30]:***→[31]:IfEnd(注:如有多个曲线元要素继续添加入数据库DAT1中)Goto GLbl E:“X0=”?U:“Y0=”?V:“S0=”?O:“F0=”?G:“LS=”?H:“R0=”?P:“RN=”?R:“Q=”?Q Lbl G:1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:Return7.隧道放样子程序:SDFY5.5→A:8.5→B:L+1.5→CIf I=1:Then -1→K:Else 1→K:IfEnd 给左右隧道符号赋值1.25K→F:4.25K→L:7.25K→K 给各圆心距路线的偏距赋值Z[2]-C→D 计算测点至圆心的高差D,If D>A:Then Goto 1:Else If D<0:Then Goto 2:IfEnd:IfEndZ-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W “R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C:E-√(A2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(A2-D2)→L“DL(m)=”:L◢IfEnd:ReturnLbl 1Z-L→E:Abs(E)→E:√(D2+E2)→W:W-A→T: 计算测点至圆心的平距E,实测半径W “R(m)=”:W◢“DR(m)=”:T◢If E≤A:Then D-√(A2-E2)→C“Dh(m)=”:C◢IfEnd:ReturnLbl 2:Abs(D)→D:Abs(Z)→Z:Abs(K)→K:Abs(F)→FIf Z>K:Then Z-F→E:Else Z+K→E:IfEnd√(D2+E2)→W:W-B→T“R(m)=”:W◢“Rc(m)=”:T◢If E≤B:Then D-√(B2-E2)→C:E-√(B2-D2)→L 计算测点水平偏移量L、垂直偏移量C “Dh(m)=”:C◢显示测点垂直偏移量C“DL(m)=”:L◢显示测点水平偏移量LElse E-√(B2-D2)→L“DL(m)=”:L◢显示测点水平偏移量LIfEnd:Return8.曲线元要素判断数据库:DAT2(两条线路,可扩充为多条线路)If I=2:Then Goto A:IfEndIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return .................................Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndLbl AIf S<第一线元终点里程:Then 1→J:Prog “DAT1”:ReturnElse If S<第二线元终点里程:Then 2→J:Prog “DAT1”:ReturnElse If S<第三线元终点里程:Then 3→J:Prog “DAT1”:ReturnElse If S<第四线元终点里程:Then 4→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEndIf S≥第四线元起点里程And S<第五线元终点里程:Then 5→J:Prog “DAT1”:Return Else If S<第n线元里程:Then n→J:Prog “DAT1”:ReturnIfEnd:IfEnd:IfEnd:IfEnd .................................9.高程数据库子程序:DAT3(两条线路,可扩充为多条线路)If I=0:Then Goto A:Else If I=2:Then Goto B:IfEnd:IfEndIf S≤46500:Then 46150→A:361.26→B:40000→R:-0.3→D:-1.2→E:ReturnElse If S≤47200:Then 46800→A:353.46→B:20000→R:-1.2→D:1→E:ReturnElse If S≤48400:Then 47500→A:360.46→B:20000→R:1→D:-1.6→E:ReturnElse If S≤49600:Then 48700→A:341.26→B:10000→R:-1.6→D:2.45→E:Return IfEnd:IfEnd:IfEnd:IfEndIf S>49600 And S≤50300:Then 49840→A:369.19→B:100000→R:2.45→D:2.8→E:Return Else If I=2:Then49800→A:368.21→B:150000→R:2.45→D:2.7→E:ReturnIfEnd:IfEndLbl A:“C PEG(m)=”?→A“C H(m)=”?→B“R(m)=”?→R“I1=”?→D“I2=”?→EReturnLbl B49800→A:368.21→B:150000→K:2.45→D:2.7→E:Return10.填方路基宽度检查子程序(WIDE)“WIDTH CHECK”◢“H→MID(m)=”?→A 起坡点与中桩高差常数“DIST→MID(m)=”?→B 起坡点与中桩距离常数“i=”?→C 路基填筑坡度CAbs(Z[2]-L+A)→DAbs(Z)-B-D→E“DL(m)=”:E◢显示实有宽度与应有宽度之差值Return11.坡口坡脚线坐标计算子程序:SUB-TW“TIANWA LINE”◢“DIST→MID(m)=”?A 起坡点与中桩距离常数“H→MID(m)=”?B 起坡点与中桩高差常数“T(1) Or W(Else)=”?C 填方边坡为1,其它为挖方边坡“i=”?E 填方或挖方边坡坡度Abs(Z)-A→D: DE→KIf C=1:Then L-B-K→W:Else L+B+K→W:IfEnd“JS H(m)=”:W◢计算出应有高程“SC H(m)=”?→D 输入实测高程D-W→T“GC(m)=”:T◢显示实测高程与计算高程的差异Return三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
卡西欧5800公路坐标正反算程序
卡西欧5800公路坐标正反算程序(总19页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除目录一、坐标正算基本公式 (02)二、坐标反算原理 (04)三、高程数据库录入变换 (05)四、计算器程序 (07)01、ZBZS(坐标正算) (07)02、ZBFS(坐标反算) (08)03、GCJF(高程积分) (09)04、PJFY(坡脚放样) (10)05、JFCX(积分程序) (11)06、ZBFY(坐标放样) (11)07、DT(递推) (12)08、HP(横坡) (13)09、LK(路宽) (14)10、SJK1(平面数据库) (14)11、SJK2(纵面数据库) (14)12、SJK3(左路宽度数据库) (15)13、SJK4(右路宽度数据库) (15)14、SJK5(横坡数据库) (16)15、SJK6(下边坡数据库) (16)16、SJK7(左上边坡数据库) (17)17、SJK8(右上边坡数据库) (18)五、后记 (19)CASIO 5800计算器公路工程测量程序一、正算所涉及的计算公式 X R i d XαβBd Y d l d βI图表 1在图1中,A 点为回旋曲线起点,B 点为回旋曲线止点,I 点为所求坐标点。
设:A 点的X 坐标为X A ,Y 坐标为Y A ,A 点的切线方位角为α,A 点的曲率为ρA ,A 点的里程为L A ,B 点的曲率为ρB ,B 点的里程为L B ,I 点的曲率为ρI ,I 点的里程为L I 。
I 点的切线角为β。
由于回旋线上各点曲率半径R i 和该点至曲线起点的距离L 成反比。
故此任意点的曲率为;CL R i i ==1ρ (c 为常数) (1) 由式(1)可知,回旋曲线任意点的曲率按线性变化,由此回旋曲线上里程为L i 点的曲率为;AB A i A B A i L L L L --⨯-+=)(ρρρρ (2) 当曲线右偏时ρB 、ρA 取正值,反之取负值。
5800交点法全线坐标计算程序
我自用的5800交点法全线坐标计算程序,适用于主线(等长完整缓和曲线)全线任意中边桩坐标计算。
特点是输入参数少,方便,一般设计图纸上都有。
一、主程序 ZB1、Lbl 02、”ZHANGHAO”?Z3、Prog ”SJ”(交点参数子程序)4、”BZ”?M5、I-D→Q: J-F→P6、tan-1(P÷Q)→A7、If Q<0:Then A+180→A:IfEnd8、If A<0:Then A+360→A:IfEnd9、H-I→Q:V-J→P10、tan-1(P÷Q)→B11、If Q<0:Then B+180→B:IfEnd12、If B<0:Then B+360→B:IfEnd13、A-B+180→E:1→U14、If E>360:Then E-360→E:IfEnd15、If E<0:Then 360+E→E:IfEnd16、If E<180:Then 180-E→○:IfEnd17、If E>180:Then E-180→○:-1→U:IfEnd18、L÷2-L3÷240÷R2→Q19、L2÷24÷R-L3÷2688÷R3→P20、(R+P)tan(○÷2)+Q→T21、R○∏÷180+L→G22、C-T→N23、Z-N→S24、If S>G:Then Z-N-G+T→S:I+ScosB→X: J+SsinB→Y: B→W:Else If S>G-L:Then G-S→S: S-S5÷40÷R2÷L2→E: S3÷6÷R÷L→K: I+TcosB+Ecos(B+1 80)+UKcos(90+B)→X: J+TsinB+Esin(180+B)+UKsin(90+B)→Y: B-180U S2÷2÷R÷L÷∏→W: Else If S>L:Then Rsin(180(2S-L)÷2÷R÷∏)+Q →E: R(1-cos(180(2S-L)÷2÷R÷∏))+P→K:I-TcosA+EcosA-UKsinA→X: J-TsinA+EsinA+UKcosA→Y: A+180U(S-L)÷R÷∏+180UL÷2÷∏÷R→W: Els e If S>0:Then S-S5÷40÷R2÷L2→E:S3÷6÷R÷L→K:I-TcosA+EcosA-UKsinA →X: J-TsinA+EsinA+UKcosA→Y:A+180US2÷2÷R÷L÷∏→W: Else If S<0:T hen I-(T-S)cosA→X: J-(T-S)sinA→Y: A→W: IfEnd: IfEnd: IfEnd: If End: IfEnd29、X+Mcos(90+W)→X:Y+Msin(90+W)→Y”X”:X◢”Y”:Y◢30、Goto 0二、数据库子程序:SJIf Z<本曲线HZ(或YZ)桩号:Then 本曲线前一交点X坐标→D:本曲线前一交点Y坐标→F:本曲线交点X坐标→I: 本曲线交点Y坐标→J:本曲线后一交点X 坐标→H:本曲线后一交点Y坐标→V:本曲线交点桩号→C:本曲线曲线半径→R:本曲线缓和曲线长度→L:Else If Z<二曲线HZ(或YZ)桩号:Then二曲线前一交点X坐标→D:二曲线前一交点Y坐标→F:二曲线交点X坐标→I:二曲线交点Y 坐标→J:二曲线后一交点X坐标→H:二曲线后一交点Y坐标→V:二曲线交点桩号→C:R=二曲线曲线半径:二曲线缓和曲线长度→L:Else If ………… IfEnd:说明:变量输入:Z=计算点桩号:M=计算桩号边桩距离(左负右正)。
卡西欧5800计算器坐标正反算程序(带详细说明)
卡西欧5800程序完整版"ZS=1,FS=2"?N: 1÷P →C:(P-R)÷(2HPH)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfE nd←┚LbI 1:1 →I:0 →Z:Abs(K-O) →W: Prog"ZS"←┚F-90→F←┚"JJ"?K:"PJ"?L: "ZX=":X+Lcos(F+K) →Z[3]◢"ZY=": Y+Lsin(F+K) →Z[4]◢"QXFWJ=":F DMS◢Abs(Z) →Z:Goto 8←┚LbI 2:"X"?I:"Y"?J: Prog"FS":"FSZH=":O+W→K◢"FSJL=":Z◢Lbl 8正算子程序(ZS)(不运行)1÷P→C:(P-R)÷(2HPR) →D: 180÷π→E←┚0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C +LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+90→F:X+ZcosF→X:Y+ZsinF→Y3反算子程序(FS)(不运行)G-90→T:Abs((Y-V))cos(T)-(X-U)sin(T)→W:0→Z←┚Lbl 0←┚prog"ZS":T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:If Abs(Z)<0.001: Then Goto1:E lse W+Z→W:IfEnd :Goto 0←┚Lbl 1:0→Z:Prog"ZS":(J-Y)÷sinF→ZZX-WN(运行主程序,该程序适用于匝道,对全段完整非对称曲线计算太过麻烦)"CZX"?S(仪站X坐标):"CZY"?W(仪站Y坐标)LbI 0: "K"?K: If K≤126.9(第1条单一曲线的终点下面同上): Then Goto A:Else If K≤176.9 And K>126.9: Then Goto B:Else If K≤259.562 And K>176.9: Then Goto C:Else If K≤309.562 And K >259.562: Then Goto D:IfEnd:IfEnd:IfEnd:IfEnd←┚LbI A:92094.336(起点X坐标)→U:8287.962(起点Y坐标)→V:0起点桩号→O:145°11'54"(方位角)→G:126.9(曲线长度)→H:10^(45) (起点半径)→P:10^(45) (止点半径)→R:+1(路线左右偏,左负右正,直线输0)→Q:Prog "WN":Goto WLbI B:91990.134→U:8360.388→V:126.9→O:145°11'54"→G:50→H:10^(45) →P:150 →R:+1→Q:Pr og "WN":Goto WLbI C:91947.609→U:8386.570→V:176.9→O:154°44'51"→G:82.662→H:150 →P:150 →R:+1→Q:Pr og "WN":Goto WLbI D:91867.101→U:8399.992→V:259.562→O:186°19'19"→G:50→H:150 →P: 10^(45) →R:+1→Q: Prog "WN":Goto WLbI W:"PJ1"?T←┚(该项是只左右边桩再左右偏距,输0为不再左右偏,可以直接出方位角、距离,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前-,后+)If T=0:Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd←┚LbI V:"JJ1"? O←┚(左右边桩再偏夹角,用180°减去路线夹角)"X1=": Z[3]+Tcos(F+N+ O)→U◢"Y1=":Z[4]+Tsin(F+N+ O)→V◢U→Z: V→M: GotoP←┚LbI P:Pol(Z-S,M-W): If J≤0:Then J+360°→J: IfEnd←┚"JL=":I◢(仪站至测点的距离)"FWJ=":J DMS◢(仪站至测点的方位角)Goto0备注:1.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1;当元线往右偏时,Q=1:当元线为直线时,Q=0。
5800计算器公路全线坐标正、反算计算程序
5800计算器公路全线坐标正、反算计算程序正算主程序(ZS)Lb1 0FIX4:?S:?Z:Prog “PM-SJ”:Abs(S-O) → W:Prog "SUB1":"XS=":X◢"YS=":Y◢F-90→F(需要时可以让他显示,不要时不必输入):Prog“SQX-SJ”: Prog“SQX”:“H=”:H◢Goto 0反算主程序(FS)正算子程序(SUB1):(P-R)÷(2HPR) → D:180÷π→ E:0.1739274226→ A:0.3260725774→ B:0.0694318442→ K:0.3300094782→ L:1-L→ F:1-K→ M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+F WD))+Acos(G+QEMW(C+MWD))) → X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+F WD))+Asin(G+QEMW(C+MWD))) → Y:G+QEW(C+WD)+90→ F:X+ZcosF→ X:Y+ZsinF→ Y反算子程序(SUB2):Abs((Y-V)cosT-(X-U)sin(T)) → W:0→ Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cosL-(I-X)sinL → Z:ifAbsZ<1E-6:thenGoto1:ElssW+Z → W:Goto 0:IfEnd←┘:0→ Z:Prog "SUB1":(J-Y)÷sinF→ Z子程序(平面线形数据库)PM-SJ1÷P→ CG-90→TLbl 1ifS ≥500(线元起点里程)AndS<769.256(线元止点里程):Then19942.837 →U (线元起点X坐标):28343.561 →V(线元起点Y坐标):500 →O(线元起点里程):125°16°31°→G(线元起点方位角):269.265 →H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q (线元左右偏标志:左负右正):IfEnd←┘ifS ≥769.256(线元起点里程)AndS<806.748(线元止点里程):Then19787.34 →U (线元起点X坐标):28563.378→V(线元起点Y坐标):769.256→O(线元起点里程):125°16°31°→G(线元起点方位角):37.492→H(线元长度):10^(45)→P(线元起点曲率半径):221.75→R(线元终点曲率半径):-1→Q(线元左右偏标志:左负右正):IfEnd←┘ifS ≥806.748(线元起点里程)AndS<919.527(线元止点里程):Then19766.566→U (线元起点X坐标):28594.574→V(线元起点Y坐标):806.748→O(线元起点里程):120°25°54.07°→G(线元起点方位角):112.779→H(线元长度):221.75→P(线元起点曲率半径):221.75→R(线元终点曲率半径):-1→Q(线元左右偏标志:左负右正):IfEnd←┘ifS ≥919.527(线元起点里程)AndS<999.812(线元止点里程):Then19736.072 →U(线元起点X坐标):28701.893 →V(线元起点Y坐标):919.527→O(线元起点里程):91°17°30.63°→G(线元起点方位角):80.285→H(线元长度):221.75→P(线元起点曲率半径):9579.228→R(线元终点曲率半径):-1→Q (线元左右偏标志:左负右正):IfEnd←┘ifS ≥999.812(线元起点里程):Then19744.038 →U(线元起点X坐标):28781.659→V(线元起点Y坐标):999.812→O(线元起点里程):80°40°50°→G (线元起点方位角):100→H(线元长度):10^(45)→P(线元起点曲率半径):10^(45)→R(线元终点曲率半径):0 →Q(线元左右偏标志:左负右正):IfEnd←┘子程序(竖曲线数据库)SQX-SJifS≤999.812(竖曲线终点里程):then0.0357(前坡度:上坡正下坡负)→E:0.0227(后坡度:上坡正下坡负)→F:600→R(竖曲线半径):780→G(变坡点里程):110→C(变坡点高程):IfEnd←┘子程序(竖曲线计算公式)SQXE-F→J:ifJ>0:then-R→R:ElssR→R:Abs(R*J÷2)→T:IfEnd←┘ifS≤G-T:thenG-S→L:C-LE→H:IfEnd←┘ifS>G-T And S≤G:thenG-S→L:(S+T-G)²÷2÷R→N:C-LE+N → H:IfEnd←┘ifS>G And S≤G+T:then S-G→L:(G +T- S)²÷2÷R→N:C+LF+N → H:IfEnd←┘ifS>G+T :thenS-G→L:C+LF → H:IfEnd←┘三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
5800交点法全线计算程序及其说明
FX5800 计算器交点法正反算程序输入图纸中的整个标段交点要素,输入桩号及距中桩距离正算本标段任意点坐标,及极坐标放样的方位角及距离;由输入大概桩号及实测坐标,反算准确桩号及距中桩距离。
1、主程序程序名:JDF-ZCXLbI 0:7→DimZ:Norm 2:1→A:"ZS=1,FS=2"?A:A=1=>Goto 1:A=2=>Goto 2LbI 1:Z[4] → K:Z[5] →L:“CZ-X”?K:” CZ-Y”?L:K→Z[4]:L→Z[5]:LbI A:Prog"JDF-XLXZ":90→ B: "P-JIAO"?B:B → Z[1] :LbI B: "K"?Z:Z=-1=>Goto0:Z=-2=>Goto A: Prog"JDF-YL-SJK":"P-JU"?D: Prog "JDF-ZS":I+D×COS(Z[2]+Z[1]→X: J+D×Sin(Z[2]+Z[1]→Y: Fix 3:"X=":Locate 6,4,X:"Y=":Locate 6,4,Y:Prog"JDF-JZBFY":Goto BLbI 2:Prog"JDF-XLXZ":"K"?Z:LbI C: Prog"JDF-YL-SJK": "X0"?X:X=-1=>Goto 0:X=-2=>Goto 2: "Y0"?Y:Prog "JDF-FS": Fix3:"KM=":Locate 6,4,Z:"D=":Locate 6,4,D:Goto C2. 交点法正算子程序程序名:JDF-ZSH2÷R÷24-H∧(4)÷2688÷R∧(3)→A:H÷2-H∧(3)÷240÷R2→B:((H2-N2)÷24÷R÷Sin(Abs(P))-((H∧(4)-N∧(4))÷2688÷R∧(3))÷Sin(Abs(P→E:(R+A)tan(Abs(P)÷2)+B -E→T:P÷Abs(P→W:0→M:H→C: (R+N2÷R÷24-N∧(4)÷2688÷R∧(3))tan(Abs(P)÷2)+N÷2-N∧(3)÷240÷R2+E→Z[6]: O-T+ΠR×Abs(P)÷180+H÷2-N÷2→Z[7]:If Z≤O-T:Then Z-O→S:G→Z[2]:Goto 1:IfEnd:If Z≤O-T+H:Then Z-O+T→S:Prog“JDF-HHQX”:G+WK→Z[2]:A-T→A:G→E:Goto2:IfEnd:If Z≤Z[7]: Then 180(Z-O+T-0.5H)÷R÷Π→S : A+R(1-Cos(S))→B:H÷2-H∧(3) ÷240÷R2+Rs in(S)→A:R→M:G+WS→Z[2]: A-T→A:G→E :Goto 2:IfEnd:If Z≤Z[7]+N:Then Z[7]+N-Z→S:Z[6]→T :N→H:Prog “JDF-HHQX”:G+P→E:E-WK→Z[2]:T-A→A:C→H:Goto 2:IfEnd:Z-Z[7]-N+Z[6]→S:G+P→Z[2]:LbI 1:U+Scos(Z[2])→I:V+Ssin(Z[2])→J: Return:LbI 2:U+Acos(E)-WBsin(E→I:V+ASin(E)+WBcos(E)→J3. 交点法缓和段子程序程序名:JDF-HHQXS-S∧(5)÷40÷R2÷H2+S∧(9)÷3456÷R∧(4) ÷H∧(4→A:S∧(3)÷6÷R÷H-S∧(7)÷336÷R∧(3)÷H∧(3)+S∧(11)÷42240÷R∧(5)÷H∧(5→B:90S2÷Π÷R÷H→K:RH÷S→M4. 交点法反算子程序程序名:JDF-FS0→D:Do(语法):Z+D→Z:Prog“JDF-ZS”:Pol(X-I,Y-J+.000000001:J-Z[2]→J:Isin(J→S:Icos(J→D: If M≠0:Then Pol(M-WS,D:JMΠ÷180→D:IfEnd: LpWhile Abs(D)>0.001:Z+D→Z:S→D5.线路选择子程序程序名:JDF-XLXZ1→A:” SHURU=0,SJK =1”?A:A→Z[3]:If A=0:Then ”JDKM”?O:”X”?U:”Y”?V:”FW J”?G:”LS1”?H:“LS2”?N:“ZHUAN-JIAO”?P:“BAN-JIN”?R:IfEnd6.坐标计算参数矩阵调出子程序程序名:JDF-JZMat F[1,1]→O: Mat F[1,2]→U: Mat F[1,3]→V: Mat F[1,4]→G: Mat F[1,5]→H: Mat F[1,6]→N: Mat F[1,7]→P: Mat F[1,8]→R7:极坐放样计算程序(计算放样点至置仪点方位角及距离) 程序名:JDF-JZBFYZ[4]→K:Z[5]→L:Pol(X-K, Y-L+.0000000001): J<0=>J+360→J: Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:Fix 4:” FWJ=”: Locate 6,4,J:Fix 3:” JL=”:Locate 6,4,I◢8.数据子程序程序名:JDF-YL-SJKZ[3]=0=>Return:Z[3]=1=>Goto 1LbI 1If Z≤122269.856:Then [[121656.952, 2603848.019,508351.147, 98°53′22.6″,660,300,41°47′44.1″, 1415.097]]→Mat F: Prog”JDF- JZ”: Return: IfEnd:If Z≤125115.900:Then [[123984.982, 2601974.464, 509885.441, 140°41′06.8″,700,400, -39°31′43.7″,2800.000]]→Mat F: Prog” JDF- JZ”: Return:IfEnd:If Z≤396.166:Then [[213.698, 2600569.493, 514256.323, 238°49′17.1″,107.584,120.474, 64°39′40″, 250]]→Mat F: Prog” JDF- JZ”: Return: IfEnd:说明:If Z ≤交点HZ 点桩号(或者直线段桩号:Then [[交点桩号,交点X 坐标,交点Y 坐标,前交点至止交点方位角,交点前段缓和曲线长度,交点后段缓和曲线长度,交点转角,圆半径]]→Mat F: Prog”JDF- JZ”: Return: IfEnd:注:转角分正负,左偏为负,右偏为正.加粗O 为子母..Z[2]值为所计算点切线方位角。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本程序比较复杂.测量原理不是很明白的朋友慎用请大家经常关注程序B-H的更新2009,5,10日修改见超高子程序B-H黄色部分,另超高数据库增加在超高缓和段输入超高为公路外侧超高说明2009,5,8日正反算选择程序:ZS-FS 更改小错,详见紫色修改内容2009,4,30日更改如下:把原来的4个子程序分解成5个子程序,解决了一个大的竖曲线不能包含几个超高变化段,另外程序内也有两处改变请看红色区域.本程序经过综合考虑5800的设计缺陷,计算速度较慢故只使用高斯四节点法为计算内核.支持多条线路正反算,中桩,边桩高程计算,超高计算,超高缓和计算,加宽计算,加宽缓和计算,边坡开口线计算,挡土墙坡脚线计算,考虑了中间绿化带的影响,适用与国家高速公路至乡村四级公路计算和放样,路基路面工程可以直接得出中边桩的设计三维坐标,去掉加宽和超高影响的计算困难,边坡和坡脚线计算可直接在边坡上提取坐标带入程序,经过所有设计因素的综合,得出更改边距并显示修改偏差后的坐标.反算速度明显提高,只需要3秒.程序无错,可放心输入,另本程序可以增加隧道超欠挖计算子程序,非常方便,因为每个隧道的断面数据不一样,所以在此没有明确写出,有需要的可以联系我.本人QQ76805071,只为交友.计算器主程序:ZHU-CHENG-XULbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。
”?U:U=1=>Prog”ZS-FS”:进入公路三维程序U=2=>Porg”ZS”:进入坐标正算程序U=3=>Porg”FS”:进入坐标反算程序U=4=>Porg”XY =>SG”:进入大地坐标转施工坐标程序…………Goto0:说明:计算器总的主程序,进入选择各种分支计算程序。
1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。
选择错误重新选择。
此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.公路三维部分正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BP-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U://选择线路1~NIf W=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序If W=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”? L: //输入桩号Porg”0。
5LUKUAN”://录入公路加宽后,左右侧设计边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序正算循环子程序ZS-XH-1Prog”PM-XL-XZ”: //进入平面线路选择程序对线路线元进行选择Prog”CHAOXIAN-CL”: //里程超限处理Prog”GL-ZS”: //进入坐标正算程序Prog”GL-BZ-ZS”: //进入公路边桩正算程序Prog”GC-XL-XZ”: //进入高程线路选择程序对线路线元进行选择Prog”GC”://进入高程部分提取中桩高程Prog"CG-XL-XZ": //进入超高数据库提取超高数据If W=1:ThenProg”B-H”://普通计算时进入边桩高程部分提取边桩高程ElseZ[3] →Z: Porg“B-H”://按设计计算时候代入减去半边绿化带后的路基边距,提取边桩高程Ifend:Prog”ZS-XS”: //进入正算显示程序,提取正算三维结果反算循环主体程序FS-XH0→Z:“XL-XZ”?U://选择线路 1~NLbi0:“L”?L:“X=”?T:“Y=”?S: //输入起算假定桩号,实测X YProg”GL-FS”: /进入公路反算程序Prog”FS-XS”: //进入反算显示程序Goto0:坐标正算程序GL-ZS.1739274226→I:.3260725774→J:.0694318442→K:.3300094782→E ://四节点法计算系数录入1-E→F:1-K→M:Q+KrO(C+KD) →K: //数据库要用X、Y、Q作为起点坐标方位角Q+ErO(C+ED) →E: //r是弧度,输入方法FUNCTION 选5Q+FrO(C+FD) →F:Q+MrO(C+MD) →M:X+O(ICos(K)+JCos(E)+JCos(F)+ICos(M)) →X://计算出X坐标Y+O(ISin(K)+JSin(E)+JSin(F)+ISin(M)) →Y: //计算出Y坐标Q+Or(C+D) →Q: //计算出算点方位角,O是字母,r是弧度:边桩坐标计算程序GL-BZ-ZS:"XJ"?→A:X+Zcos(Q+A) →G: //计算出边桩X坐标Y+ZSin(Q+A) →M: //计算出边桩Y坐标公路反算程序GL-FSDo:Porg”PM-XL-XZ”://进入平面线路选择程序Porg”CHAOXIAN-CL”://里程超限处理程序Porg”GL-ZS”: //进入公路正算4节点程序T-X→I:S-Y→J: //试算点与测点X,Y距离差Pol(I,J):J-Q→J://方位角转换为接近试算点到测点的值:Rec(I,J): //计算出X差和Y差(X里程,J边)L+I→L://修改后的里程Abs(I) →I://修改值的绝对值LpWhile I>0.001: //小于一毫米通过,大于一毫米循环计算中桩高程计算程序GCIf I-A<0:Then1→H:IfEnd://开口向上部分赋值IfI-A=0:ThenGoto1: IfEnd: //无竖曲线部分赋值IfI-A>0:Then-1→H:IfEnd://开口向下时赋值(L-C)I+K+(L-C)^2/(2E)H→I://计算得出竖曲线部分中桩高程Goto2:Lbi1:K+(L-C)I→I://计算得出无竖曲线部分中桩高程Lbi2:边桩高程计算程序B-H(L-C)/(D-C)→P: //计算点占本线元长比例3P^(2^(S))-2P^(3^(S)) →P: //计算得线性和高次抛物线系数F+P(T-F)→E: //初步计算计算点横坡If V=1:Then If N= -1:Then //直线和直缓,缓直,曲线左偏时If Z<0:Then-E→E:IfE>Z[4]:ThenZ[4]→E: IfEnd : //计算左侧时,横坡大于一般横坡取一般横坡I+Abs(Z)E→O: IfEnd : //左侧高程IfZ>0:Then I+ZF→O:IfEnd: Ifend: //右侧高程得数If N=1:Then IfZ<0:T hen I+Abs(Z)E→O:IfEnd: //曲线右偏时,左侧高程得得IfZ>0:Then-E→E:If E>Z[4]:Then Z[4]→E:IfEnd //右侧高程横坡大于一般横坡,取一般横坡I+ZE→O:IfEnd: IfEnd: IfEnd: //右侧高程得数IfV=2:ThenIf Z>0:Then I+ZE→O:IfEnd://圆曲线全超高和S曲线超高渐变部分右侧高程得数IfZ<0:ThenI-Abs(Z)E→O:IfEnd:IfEnd: // 圆曲线全超高和S曲线超高渐变部分左侧高程得数设计标准路面宽度子程序 CHANG-SHU12→Z[1]://录入12米为路面半宽度,根据设计修改1.5→Z[2]: //录入1.5米为绿化带半宽,根据设计修改,无绿化带输入0 -0.02 →Z[4]: //录入-0。
02为公路一般横坡,根据设计修改// 注:在以中轴线旋转的超高不考虑绿化带影响的,在常数程序中,绿化带修改为0路面宽度子程序 0。
5LUKUAN”Z-1,Y+1”?V: //左右边桩选择Porg”CHANG-SHU”: //设置标准路面半宽If V=1:Then Porg”GL-JK”: //右侧时,进入加宽子程序Z[1]+Z→Z://计算右册正确公路半宽,Z-Z[2] →Z[3]:IfEnd://计算右侧减去半边绿化带时计算边桩高程时用的边距IfV=-1: Then Porg”GL-JK”: //左侧时,进入加宽子程序-Z[1]-Z→Z: //计算左册正确公路半宽Z+Z[2] → Z[3]:IfEnd: //计算左侧减去半边绿化带时计算边桩高程时用的边距公路加宽子程序GL-JK前点加宽里程A,加宽止点里程B,“加宽缓和段全长C,止点加宽宽度D本加宽程序欠缺S缓和曲线加宽程序,因为没有遇到过,所以暂时空缺Porg“JK-XL-XZ”://进入加宽数据库线路选择程序If D=1:Then(4((L-A)/(B-A))^3-3*((L-A)/(B-A))^4)*C→Z:IfEnd:// 从小到大加宽If D=2:Then (4(((B-A)-(L-A))/(B-A))^3-3*(((B-A)-(L-A))/(B-A))^4)*C→Z:IfEnd: //从大到小加宽,以上两式为参考公式,可根据图纸更改公式IfD=3:ThenZ=Z:IfEnd: //圆曲线加宽直一样时IfZ≠0:then”JK=”:Z◢:IfEnd: //存在加宽值时显示加宽值正算显示ZS-XS“FWJ”:Q◢ //显示计算里程方位角“ZHONG-X”:X◢ //显示中线X坐标“ZHONG-Y”: Y◢//显示中线Y坐标“ZHONG-GC”:I◢//显示中桩高程“B-X”:G◢//显示边桩X坐标“B-Y”: M◢ //显示边桩Y坐标“B-GC”:O◢//显示边桩高程反算显示FS-XS“L”:L◢ //显示计算里程“Z”:J◢//显示计算边距里程超限CHAOXIAN-CLIf L<A:Then “L-<<<”;Stop:IfEnd: //小于本路线最小里程提示,退出程序If L>B: Then”L+>>>”:Stop:IfEnd: //大于本路线最大里程提示,退出程序边坡放样程序BP-FY“XL-XZ“?U: //线路选择”S-L”?L:”X=”?T:”Y=”?S: //输入试算桩号和测点X,Y.T→Z[10]:S→Z[11]:Porg”PM-XL-XZ”://对平面线路进行选择Porg”GL-FS“://进入反算程序,反算测点里程偏距。