资源描述
CASIO fx-5800p交点法计算缓和曲线内任意点计算程序
SpiraL curve(缓和曲线任意点坐标计算)
程序说明:本程序是基于计算对称性缓和曲线而编写的程序,是以交点法为基础,故输入数据多了点。
程序思路:根据曲线的交点数据,进而推算曲线要素,并进行曲线内任意点的坐标计算。
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<Z[3]:Then GoTo 4:IfEnd
If H≥Z[3]And H<Z[4]:Then GoTo A
ELse If H≥Z[4] And H<Z[5]:Then GoTo B
ELse If H≥Z[5] And H≤Z[6]:Then GoTo C :Ifend
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
展开阅读全文