曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
- 格式:doc
- 大小:55.50 KB
- 文档页数:2
CASIO fx-4800P计算器程序DA DI——N E (公路弯道坐标计算)K“JD”:R:S“LS”:F“PJ——L-R+”:A“ZH——N”:B“ZH——E”:C“JD——N”:D“JD——E”M“ZH”=K-(R+S2÷(24R))tan(Abs F÷2)-S÷2+S^3÷(2 40R2)▲N“HY”=M+S▲O“QZ”=M+(πRAbs F÷180+S)÷2▲Z[1]“YH”=M+πRAbs F÷180▲Q“HZ”= Z[1]+S▲T=K-M▲L=Q-M▲E=(R+S2÷(24R))÷cos(F÷2)-R▲Lb1 0:{G}:G“ZHUANG HAO”:G<O==>Z=G-M≠=>Z=Q-G:△{U}:U“I——B OUT+IN-”Z<S+0.005==>H=tan-1(24Z2S2R2-Z^6)÷(48Z^3R^3-6Z^4 SR)):V=Z-Z^5÷(40S2R2)+Usin H:W=Z^3÷(6SR)-Z ^ 7÷(336Z^3R^3)-Ucos H:≠=>H=180(Z-S÷2)÷(πR):V=Rsin H+S÷2-S^3÷(240R2)+Usin H:W=R-Rcos H+S2÷(24R)-Ucos H:△F<0==>G<O==>X=V:Y=W:≠=>X=T+Tcos F-Vcos F-Ws in Abs F:Y=Tsin Abs F-Vsin Abs F+Wcos F:△≠=>G<O==>X=V:Y=-W:≠=>X=T+Tcos F-Vcos F-Wsin Abs F:Y=Vsi n Abs F-Tsin Abs F-Wcos F:△△C=A==>D≥B==>P=90:≠=>P=270:△≠=>C<A==>P= tan-1((D-B)÷(C-A))+180:≠=>P= tan-1((D-B)÷(C-A)):△△I“COM——N”=A+√(X2+Y2)cos(P-tan-1(Y÷X))▲J“COM——E”=B+√(X2+Y2)sin(P-tan-1(Y÷X))▲G=G+20Goto 0程序运行输入:JD?——交点桩号R?——圆曲线半径LS?——缓和曲线长度PJ——L-R+?——偏角右偏为正ZH——N?——ZH点N坐标ZH——E?——ZH点E坐标JD——N?——JD点N坐标JD——E?——JD点E坐标输出:ZH= ——ZH点桩号HY= ——HY点桩号QZ= ——QZ点桩号YH= ——YH点桩号HZ= ——HZ点桩号T= ——切线长L= ——曲线长E= ——外矢距再输入:ZHUANG HAO?——输入任一点桩号I——B OUT+IN-?——距中线距离(外侧为正)再输出:COM——N= ——计算出N坐标COM——E= ——计算出E坐标以此循环——再输入——再输出程序中各字母所代表的含义:A——ZH点N坐标B——ZH点E坐标C——JD点N坐标D——JD点E坐标E——外矢距F——偏角(右偏为正)G——弯道内任一点桩号H——弯道内任一点切线角I——计算出的N坐标J——计算出的E坐标K——交点桩号L——曲线长M——ZH点桩号N——HY点桩号O——QZ点桩号P——ZH--JD方位角Q——HZ点桩号R——圆曲线半径S——缓和曲线长度T——切线长U——距中线距离(外侧为正)V——支距W——支距X——弯道内坐标Y——弯道内坐标Z——任一点曲线长度Z[1]——YH点桩号。
曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序一、程序功能本程序由一个主程序(TYQXJS)和两个子程——正算子程序(SUB1)、反算子程序(SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
另外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲线任意里程中边桩坐标进行正反算。
本程序也可以在CASIO fx-4500P计算器及C ASIO 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◢F"FS"=F-90◢Goto 1←┘Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢Goto 22. 正算子程序(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+Q EFW(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+QE W(C+WD)+90:X=X+ZcosF:Y=Y+ZsinF3. 反算子程序(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。
曲线计算公式、程序及算例广西建设职业技术学院测量教研室李向民2007年4月一、圆曲线中桩与边桩坐标计算公式1.根据已知的中线偏角、半径和交点桩号计算切线长T 、曲线长L 及外距E ,以及曲线主点的桩号切线长 2tan αR T = 曲线长180παR L =外 距 )12(sec2cos-=-=ααR R R E切曲差(超距) D = 2T -L 式中α以度为单位。
交点的桩号已由中线丈量得到,根据交点的桩号和曲线测设元素,可计算出各主点的桩号,ZY 桩号 =JD 桩号-TQZ 桩号 = ZY 桩号+2LYZ 桩号 = QZ 桩号+2L为了避免计算中的错误,可用下式进行计算检核:JD 桩号 = YZ 桩号-T +D2.根据已知的两个交点的坐标,计算曲线主点的坐标和细部桩点的坐标(1)计算直圆点(ZY )坐标根据JD 1和JD 2的坐标(x 1 , y 1)、(x 2 , y 2),用坐标反算公式计算第一条切线的方位角α2-1和ZY 点坐标(x ZY , y ZY ),212112arctanx x y y --=-α122122sin cos --+=+=ααT y y T x x ZY ZY(2)计算圆心坐标因ZY 点至圆心方向与切线方向垂直,其方位角为αZY-O =α2-1 ± 90°(左偏角时用“+”,右偏角时用“-”)则圆心坐标(x o , y o )为ozy ZY o o zy ZY o R y y R x x --+=+=ααsin cos(3)计算圆心至各细部点(和主点)的方位角设ZY 点至曲线上某细部里程桩点的弧长为l i ,其所对应的圆心角i β按下式计算得到:πβ180⋅=R l i i 则圆心至各细部点的方位角αi 为αi =(αZY-O +180°)±i β (左偏角时用“-”,右偏角时用“+”)(4)计算各细部点(和主点)的坐标根据圆心至细部点的方位角和半径,可计算细部点坐标io i i o i R y y R x x ααsin cos +=+=(5)计算各桩点边桩坐标设左边桩与中桩之间的垂直距离为D 左,右边桩与中桩之间的垂直距离为D 右,则左边桩的坐标为:io i i o i D R y y D R x x ααsin )(cos )(左左左左±+=±+=(左偏角时用“-”,右偏角时用“+”)右边桩的坐标为:io i i o i D R y y D R x x ααsin )(cos )(右右右右±+=±+=(左偏角时用“+”,右偏角时用“-”)注:可用全站仪按极坐标法测设线路主点和细部中桩,以及边桩;二、圆曲线计算程序(CASIO fx-4800P )“YQS ”文件(主程序,计算圆曲线、直线的中桩坐标、边桩坐标){}{}{}[][][][][][][][]{}{}2▲)90sin()(""▲)90cos()("":1:10:)sin )((:)cos )((:,211▲sin )(""▲cos )("")(180)(,11180sin cos 90sin cos 12""4:212""3:""2:180""1:)2tan(:,31:3:20""Pr :"":"":"":"",,,,2211Goto H H C B AbsH N Y V C B AbsH M X U C C H B K I P N B K I D M HK H K Lb Goto H H Q HZ R N Y V Q HZ R M X U OZ C Q R L O T I K L H K Lb J C J R F N J R E M Z B J B T P F B T D E Z Z YZ Z Z Z QZ Z T I ZY Z RA L Z A R T ZA Z A Lb Goto Goto R R OB og I Y P X D Y Y X X I P D Y X -=++=++=-=≠⇒=⇒≥-+=-+=-=++=++=⨯+=÷=--=+=+=+=⨯-=+=+=+=÷+=-=÷=÷=≠⇒⇒=ππ“OB ”文件 (子程序,计算两点间的坐标方位角)BB Lb Goto W B W B P Y Lb Goto W B Goto D X D X P Y W Lb Goto B B P Y Lb Goto Goto D X =+=≠⇒=⇒>-+=≠⇒⇒>--÷-==≠⇒=⇒>-≠⇒⇒=----:414:360tan :tan 0:314:180tan :30:)()(:214:270:900:11:2:10111注释:R 为圆曲线半径(当算直线时输入0) I 为2JD 桩号1X ,1Y 是1JD 的XY 坐标2X ,2Y 是2JD 的XY 坐标A 为偏角Z :右偏角时Z=1,左偏角Z=-1 K 为待放点桩号H 为边桩距:当为路线左边桩时符号为正,右边桩时符号为负,求中桩时输入0。
卡西欧Casiofx-4800P道路中边桩坐标计算程序程序清单如下:Casio fx-4800P道路中边桩坐标计算程序程序目的:依平曲线要素计算直线、圆曲线、缓和曲线的任意中桩、左、右桩坐标。
程序说明:K0:起始桩号X0:起始X坐标Y0:起始Y坐标ALF:起始方位角R:半径LS:缓和曲线长N:曲线左转N=1,右转N=2K:待求桩号LL、LR:左、右桩距离Q:左、右桩与中线斜交角求得XZ、YZ、XL、YL、XR、YR分别为中桩、左、右桩坐标。
一、直线段文件名:ZX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”:Lbl 0:{K}:X”XZ”=O+(K-L)cosW◢Y”YZ”=P+(K-L)sinW◢{B}:S”XL”=X-B”LL”cos(W+Q) ◢T”YL”=Y-Bsin(W+Q) ◢{C}:U”XR”=X+C”LR”cos(W+Q) ◢V”YR”=Y+Csin(W+Q) ◢Goto 0注:在程序执行过程中,赋给的要素变数的值被固定不变,可对变数(K、LL、LR)赋予不同值,迅速求得所需坐标。
二、圆曲线段文件名:YQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”: Lbl 1:{K}:J=(-1)^N (K-L)÷R×180÷π:D=2Rsin((-1)^N J÷2):X”XZ”=O+Dcos(W+J÷2) ◢Y”YZ”=P+Dsin(W+J÷2) ◢{B}:S”XL”=X-B”LL”cos(W+J+Q) ◢T”YL”=Y-Bsin(W+J+Q) ◢{C}:U”XR”=X+C”LR”cos(W+J+Q) ◢V”YR”=Y+Csin(W+J+Q) ◢Goto 1注:若没有直接HY点方位角,则ALFHY=ALFZH±Ls/2/R×180/π,(左转-,右转+)。
三、缓和曲线文件名:HHQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”: M”LS”:Lbl 3:{K}:I=(-1)^N×(K-L)^2÷M÷R÷6×180÷π:D=(K-L)-(K-L)^5÷90÷(RM)^2:X”XZ”=O+Dcos(W+I)◢Y”YZ”=P+Dsin(W+I) ◢{B}:S”XL”=X-B”LL”cos(W+3I+Q) ◢T”YL”=Y-Bsin(W+3I+Q) ◢{C}:U”XR”=X+C”LR”cos(W+3I+Q) ◢V”YR”=Y+Csin(W+3I+Q) ◢Goto 3注:1、坐标计算方法是根据偏角法原理;2、缓和曲线(ZH~HY或YH~HZ)以ZH(或HZ)为起始点;3、平曲线左转(ZH~HY段N=1,YH~HZ段N=2),曲线右转(ZH~HY段N=2,YH~HZ段N=1)。
可以算任意斜交涵洞轴线的坐标,增加T为斜交角度,规定T为涵轴右侧方向与“线路前进方向切线”之间的夹角,当涵轴与线路正交时,T=90,其他操作与原程序一样;1. 正算子程序(SUB1) [color=Red]A=0.26:B=0.74:K=0.02:L=0.82:F=1-L:M=1-K:X=U+W(Acos(G+57.2958QKW(1/P+KWD))+Bcos(G+57.2958QLW(1/P+LW D))+Bcos(G+57.2958QFW(1/P+FWD))+Acos(G+57.2958QMW(1/P+MWD))):Y=V+W(Asin(G+57.2958QKW(1/ P+KWD))+Bsin(G+57.2958QLW(1/P+LWD))+Bsin(G+57.2958QFW(1/P+FWD))+Asin(G+57.2958QMW (1/P+MWD))):F=G+57.2958QW(1/P+WD)+90:X=X+Zcos(F-90+T):Y=Y+Zsin(F-90+T)2. 反算子程序(SUB2)W=Abs((Y-V)cos(G-90)-(X-U)sin(G-90)):Z=0:Lbl 0:Prog "SUB1":L=(G-90)+5 7.2958QW(1/P+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二.增设数据库程序(SJK主程序)Lb1 4:"1.SZ => XY":"2.XY => SZ":{NS}:S∠下一线元起点里程=>O =本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H =本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Prog“TYQXJS”:Goto0Δ←┘(第一线元数据要素)S∠下一线元起点里程=>O=本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H=本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Goto0Δ←┘(第二线元数据要素)S∠下一线元起点里程=>O=本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H=本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Goto0Δ←┘(第三线元数据要素)。
卡西欧4800坐标正反算通用程序(终极篇)1. 坐标正算主程序(命名为ZBZS)第1行:Lbl 0:{W,T,B}:W”K=”:T”LEN=”:B第2行:Prog “A”第3行:X=D+Tcos(F+B)◢第4行:Y=E+Tsin(F+B)◢第5行:F=F◢第6行:Goto 0K——计算点的里程LEN——计算点到中桩的距离(左负右正)B——取前右夹角为正2. 坐标反算桩号和偏距主程序(命名为ZBFS)第1行:{U,V,K}:U”X1”:V”Y1”: W”K1”第2行:I=0:J=0第3行:Lbl 0:Prog “A”第4行:Pol(U-D,V-E):S=Icos(F-J):W=W+S第5行:Abs(S)>0.0001=>Goto 0△第6行:T=Isin(J-F)第7行:K=W◢第8行:T”LEN”=T◢X1——取样点的X坐标Y1——取样点的Y坐标K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号T——偏距(左负右正)3. 计算坐标子程序(命名为XYF)为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1行:S=W-A:I=(Q-P)÷L第2行:D=D+∫(cos(F+X(2P+XI)×90÷π),0,S,4)第3行:E=E+∫(sin(F+X(2P+XI)×90÷π),0,S,4)第4行:F=F+S(2P+SI)×90÷π4. 数据库(命名为A)第1行:W≤175.191=> GoTo 2△第2行:A=175.191:D=428513.730:E=557954.037:F=92°26′40″:P=0:Q=1/240:L=70.417: W≤A+L =>GoTo 1△第3行:A=245.607: D=428507.298:E=558024.092:F=100°50′59.4″:P=1/240:Q=1/240: L=72.915: W≤A+L =>Goto 1△第4行:A=318.522: D=428482.988:E=558092.538:F=118°15′25.2″:P=1/240:Q=0:L=55.104: W≤A+L =>Goto 1△第5行:A=373.627:D=428453.283:E=558138.912:F=124°50′4.5″0:P=0:Q=-1/180:L=67.222:W≤A+L=>Goto 1△Goto 2第6行:Lbl 1:Prog “XYF”: Goto 3第7行:Lbl 2:D=0:E=0:F=0第8行:Lbl 3A——曲线段起点的里程D——曲线段起点的x坐标E——曲线段起点的y坐标F——曲线段起点的坐标方位角P——曲线段起点的曲率(左负右正)Q——曲线段终点的曲率(左负右正)L——曲线段长度(尽量使用长度,为计算断链方便)说明:(1)正算主程序可以计算一般边桩的坐标,如要计算类似涵洞端墙的坐标需增加两个变量,具体方法参考本程序集中的第1篇辛普生公式的坐标计算通用程序(2)程序规定,左偏曲线曲率(半径倒数)输入负值,右偏曲线曲率输入正值,直线上点曲率输入0。
CASIO 4800计算器程序使用说明一、程序列表:1。
PQX:主程序,计算路线的中边桩坐标。
(1)"L0"--- 输入测段的近似桩号,来调取合适的平曲线要素数据,输入0则默认上次输的平曲线要素。
输入-1可以手工输入交点桩号JL,交点X坐标JX,交点Y坐标JY,I0为前一交点与本交点的直线方位角,J0为本交点的偏角(左负右正),R为圆曲线半径,LS为缓和曲线长度,L1为上一交点的HZ(或YZ)的桩号,L2为下一交点的ZH(或ZY)桩号。
(2)"L"---输入计算点的桩号(3)"JJ"---输入与路线前进方向的右交角(正交为90)(4)"YC"---输入与中桩的距离(左侧为负,右侧为正)注:若JJ和YC中任一个输入为0,则可返回上一级,重新输入桩号计算.若YC输入为-1,可以输入实测点的坐标X和Y来反算与中桩宽度YC,桩号差值DL和该点的近似桩号L.(5)"X,Y"数值1数值2显示计算点的坐标值X,Y(6)"A,D"ddd°mm′ss″数值4显示测站点与放样点的方位角及平距(7)"TMP"---进入自由运算状态,若计算结果为0则退出该状态.该状态会破坏变量I的内容.(8)"YC"---输入-1进入反算桩号模式,程序要求输x,y坐标,若x,y坐标其中任一输入为0则退出该状态.2.LYC程序:两个作用:一是根据实测坐标反算桩号L和与中桩宽度YC, 二是根据输入的三维坐标x,y,z和输入的设计标高SG以及"YC0","HC0","M"来进行边坡放样.(1)"L0"--- 输入测段的近似桩号,(2)"XF","YF","ZF"----输入测点的三维坐标x,y,z若ZF输为0则只反算桩号,若不为0则进行边桩放样.(3)"DL"---反算桩号时显示中间结果桩号差值DL,若DL值过大,可以重新输入测段的近似桩号来计算.(4) "L,YC"---显示桩号L和与中桩距YC(左负右正),存在变量L和O中.(5) "SG:"---输入路基边缘的设计高程(请分清左右),存在变量Z[10]中.(6) TW---显示填挖高度值(负值为挖方高度,正值为填方高度),存在变量C中.(7) "YC0"-路基横断面图上最后一个变坡点与中桩的水平宽度(左右均为正值),存在变量P中.(8)"HC0"---路基横断面图上最后一个变坡点与路基边缘设计标高的高差,挖方平台为正值,填方平台为负值,存在变量Q中.(9) "M="---路基横断面图上最后一级边坡的坡比,存在变量T中.(10) "BL"---显示在实测标高位置的路基设计宽度,存在变量U中.(11)"DB"---显示设计宽度和实测宽度的差值,存在变量J中.若DB为负值,则应往中桩位置移动(宽度减小),若DB为正值,则应往路线外侧移动(宽度增大).3、ZZ子程序---计算中桩坐标以及前进方位角的子程序。
公路曲线中桩边桩坐标fx4800P计算程序在快速发展的公路建设事业中,使用GPS坐标控制系统的高等级公路日渐增多,并且,随着高精度的测量设备的广泛采用,其他等级公路也开始普遍应用坐标控制。
使用坐标控制的公路项目,有着线型流畅、行车速度快而舒适、环境优美等特点,这些都来源于高质量的设计与施工,卡西欧fx-4800p计算器由于其轻便、精度高、易于操作,能够解决设计、施工当中很多的实际困难,因此,倍受公路工程技术人员的青睐。
本人通过在高速公路多年的施工经验,编写了许多公路测量实用程序,如常用的中桩边桩计算程序,匝道坐标计算程序,施工放样程序,换带程序等等。
下面把公路中常用的中桩边桩计算程序介绍给大家,希望本程序能够对公路测量同行有所帮助.。
1 程序清单:LbI 0:Defm 6↙″CURVE MODE″:{M}:M″0:T1=T2,1:T1≠T2″↙M=0=>Goto 7:≠>M=1=>Goto 8:≠>Goto 0⊿⊿↙LbI 7:{ABCDEFGR}↙A″ZHD″:B″HZD″:C″XJD″:D″YJD″:E″ELPHA″:F″PJ:Z(-),Y(+)″:G″L0″:R↙T=(R+G2÷(24R)-G ÷(2688R ))tan(AbsF÷2)+0.5G-G ÷(240R2) ↙U=G:V=T: Goto 1↙LbI 8:{ABCDEFGUTVR}↙A″ZHD″:B″HZD″:C″XJD″:D″YJD″:E″ELPHA″:F″PJ:Z(-),Y(+)″:G″L01″:U″L0 2″:T″T1″:V″T2″: R↙LbI 1:{H}:H″DQD″↙H≥B=>M=1: ≠>H>B-U=>M=2: ≠>H≥A+G=>M=3: ≠>H≥A=>M=4: ≠>HM=5⊿⊿⊿⊿⊿↙M≤2=>L=Abs(H-B): ≠>L=Abs(H-A)⊿↙M=1=>Z[1]=L: ≠>M=2=>Z[1]=√((L-L ÷(40R2U2)+L ÷(3456R U ))2+(L ÷(6RU)- L ÷(336R U )+ L÷(42240R U ))2): ≠>M=3=>Z[1]=√((G-G ÷(40R2)+G ÷(3456R ))2+(G2÷(6R)-G ÷(336R )+G ÷(42240R ))2):≠>M=4=>Z[1]=√((L-L ÷(40R2G2)+L÷(3456R G ))2+ (L ÷(6RG)- L ÷(336R G )+ L÷(42240R G ))2): ≠>M=5=>Z[1]=L⊿⊿⊿⊿⊿↙M≤2=>Z[2]=C+Vcos(E+F): Z[3]=D+Vsin(E+F): ≠>Z[2]=C+Tcos(E+180): Z[3]=D+Tsin(E+180) ⊿↙M=1=>Z[4]=E+F:≠>M=2=>Z[4]=E+F+180:≠>M=5=>Z[4]=E+ 180:≠>Z[4]=E ⊿⊿⊿↙N=F÷AbsF↙M=1=>I=0:≠>M=2=>I=-N(30L2÷(ΠRU)):≠>M=3=>I=N(30G÷(ΠR)):≠>M=4=>I=N(30L2÷(ΠR G)):≠>M=5=>I=0⊿⊿⊿⊿⊿↙Z[4]=Z[4]+I↙Z[5]=Z[2]+Z[1]cosZ[4]↙Z[6]=Z[3]+Z[1]sinZ[4]↙M≠3=>Goto 3⊿↙LbI 2:P=90L÷(ΠR):Q=90(L-G)÷(ΠR)↙Z[5]= Z[5]+2RsinQcos(E+NP)↙Z[6]= Z[6]+2RsinQsin(E+NP)↙LbI 3↙X″X(ZX)″=Z[5]◢Y″Y(ZX)″=Z[6]◢LbI 4↙M=3=>I=90N(2L-G) ÷(ΠR): ≠>I=3I⊿↙M=1=>P=E+F: ≠>M=2=>P=E+F+180: ≠>M=5=>P=E+180: ≠>P=E⊿⊿⊿↙P=P+I-90:Q=P+180↙M=2=>X=P-90: ≠>M=5=>X=P+180: ≠>X=Q-90⊿⊿↙XX=X+360: ≠>X>360=>X=X-360⊿⊿↙X″QXFWJ(Z-Y)″=X◢{SW}:S″SZ ″: W″SY ″:AbsS+AbsW=0=>Goto 1⊿↙M=2=>Goto 5: ≠>M=5=>Goto 5: ≠>Goto 6⊿⊿↙LbI 5:S=-S:W=-W↙LbI 6↙X″X(Z)″=Z[5]+ScosP◢Y″Y(Z)″=Z[6]+SsinP◢X″X(Y)″=Z[5]+WcosQ◢Y″Y(Y)″=Z[6]+WsinQ◢Goto 1↙2 程序参数说明:开始运行程序时选择曲线类型(CURVE MODE),0为等切线曲线,1为不等长切线曲线。
曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
一、程序功能
本程序由一个主程序(TYQXJS)和两个子程——正算子程序(SUB1)、反算子程序(
SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线
元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲
率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
另
外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲
线任意里程中边桩坐标进行正反算。
本程序也可以在CASIO fx-4500P计算器及C ASIO 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◢
F"FS"=F-90◢
Goto 1←┘
Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢。