
| CASIO fx-5800p交点法计算缓和曲线内任意点计算程序 |
SpiraL curve(缓和曲线任意点坐标计算) 程序说明:本程序是基于计算对称性缓和曲线而编写的程序,是以交点法为基础,故输入数据多了点。 程序思路:根据曲线的交点数据,进而推算曲线要素,并进行曲线内任意点的坐标计算。 2013年1月6日增加说明:本程序的主旨是在已知交点各要素的前提下,通过内置程序进行推算,从而得出精确的结果,已知要素只需要输入一次,便可以把该交点范围内的包括中桩,任意角度边桩结果推算出来。 LbL 0:Cls 19→DimZ 变量赋值 “INTα(s)=”?F 输入交点坐标方位角 “JD PEG=”?K 输入交点桩号 “INT X(JD)=”?X 输入交点X坐标 “INT Y(JD)=”?Y 输入交点Y坐标 “INT R(s)=”?R 输入缓和曲线半径 “INT L(s)=”?L 输入缓和曲线长 “TURNING ANGLE=”?A 输入转角 “TURNING DIRECTION –L,+R=”?I 输入路线转向:左负右正 I赋值为1 L2÷(24×R)→P L÷2-L3÷(240×R2)→Q 90×L÷(π×R)→B (R+P)Tan(A÷2)+Q→T 计算切线长 R(A-2B)×π÷180→O 计算圆曲线长 R(A-2B)×π÷180+2L→C 计算曲线长 (R+P)÷cos(A÷2)-R→E 计算外距 2T-C→D 计算切曲差 K-T→Z[3] ZH点 Z[3]+L→Z[4] HY点 Z[4]+O→Z[5] YH点 Z[5]+L→Z[6] HZ点 Z[6]-C÷2→Z[7] QZ点 X+Tcos(F+180)→Z[16] ZH点X坐标 Y+TsIn(F+180)→Z[17] ZH点Y坐标 L-L3÷(90R2)→G Z[16]+Gcos(F+30×I×L÷(π×R) )→Z[8] HY点X坐标 Z[17]+Gsin(F+30×I×L÷(π×R)) →Z[9] HY点Y坐标 Z[8]+2Rsin(45×O÷(πR))cos(F+I×45×O÷(π×R)+I×90×L÷(π×R)) →Z[14] QZ点X坐标 Z[9]+2Rsin(45×O÷(πR))sin(F+I×45×O÷(π×R)+I×90×L÷(π×R)) →Z[15] QZ点Y坐标 Z[8]+2Rsin(90×O÷(πR))cos(F+I×90×O÷(π×R)+I×90×L÷(π×R)) →Z[10] YH点X坐标 Z[9]+2Rsin(90×O÷(πR))sin(F+I×90×O÷(π×R)+I×90×L÷(π×R)) →Z[11] YH点Y坐标 X+Tcos(F+I×A)→Z[12] HZ点X坐标 Y+TsIn(F+I×A)→Z[13] HZ点Y坐标 LbL 2 “XIAN SHI QXYS 0→YES,1→NO” →?Z:CLs 显示曲线要素?输入:0→YES,1→NO If Z=0:Then GoTo 3 ELse If Z=1:Then GoTo 4:IfEnd:IfEnd LbL 3 <本段为曲线要素显示结果部分> “QIE XIAN C=”:T▲ “QU XIAN C=”:C▲ “Y QU XIAN=”:O▲ “WAI JU=”:E▲ “QIE QU CHA=”:D▲ “ZH PEG=”:Z[3] ▲ “X(ZH)=”:Z[16] ▲ “Y(ZH)=”:Z[17] ▲ “HY PEG=”:Z[4] ▲ “X(HY)=”:Z[8] ▲ “Y(HY)=”:Z[9] ▲ “QZ PEG=”:Z[7] ▲ “X(QZ)=”:Z[14] ▲ “Y(QZ)=”:Z[15] ▲ “YH PEG=”:Z[5] ▲ “X(YH)=”:Z[10] ▲ “Y(YH)=”:Z[11] ▲ “HZ PEG=”:Z[6] ▲ “X(HZ)=”:Z[12] ▲ “Y(HZ)=”:Z[13] ▲ GoTo 0 LbL 4 <本段为待求点桩号计算部分> “INT P PEG=”?H 输入待求点桩号 If H Ifend : Ifend If H>Z[6]:Then GoTo 4:Ifend LbL A {待求点位于ZH到HY段上时} “PIAN JIAO -L ,+R = ” ? V 输入边桩与路线中心线夹角:左负右正 “PIAN JU = ”? W 边桩与路中法线距离 H–Z[3]→J J–J5 ÷(90×R2×L2)→S Z[16]+S cos(F+30×I×J2÷(π×R×L)→M Z[17]+S sin(F+30×I×J2÷(π×R×L)→N M+W×cos(F+90×I×J2÷(π×R×L +V) →Z[18] N+W×sin(F+90×I×J2÷(π×R×L +v) →Z[19] “ X(p)= ”: Z[18] ▲ “ Y(p)= ”: Z[19] ▲ GoTo 4 LbL B {待求点位于HY到YH段上时} “PIAN JIAO -L ,+R = ” ? V “PIAN JU = ”? W H–Z[4]→J Z[8]+2Rsin(90×J÷(π×R)cos[F+90×I×J÷(π×R)+90×I×L÷(π×R)]→M Z[9]+2Rsin(90×J÷(π×R)sin[F+90×I×J÷(π×R)+90×I×L÷(π×R)]→N M+Wcos(F+90×I×L÷(π×R)+180×I×J÷(π×R)+V) →Z[18] N+Wsin(F+90×I×L÷(π×R)+180×I×J÷(π×R)+V) →Z[19] “X(P)= ”: Z[18] ▲ “Y(P)= ”: Z[19] ▲ GoTo 4 LbL C {待求点位于YH到HZ段时} “PIAN JIAO -L ,+R = ” ?V “PIAN JU = ”? W Z[6] –H →J J–J5÷(90×R2×L2)→S Z[12]+Scos(F+I×A+180-30×I×J2÷(π×R×L)→M Z[13]+Ssin(F+I×A+180-30×I×J2÷(π×R×L)→N M+Wcos(F+I×A-90×I×J2÷(π×R×L)+V) →Z[18] N+Wsin(F+I×A-90×I×J2÷(π×R×L)+V) →Z[19] “X(p)= ”: Z[18] ▲ “Y(p)= ”: Z[19] ▲ GoTo 4 |
