文档介绍:1 / 9
卡西欧5800坐标正反算
主程序
“=>XY”:“=>KD”:”N”?N:”XA”?U:”YA”?V:”DKA”?O:”CA”?G:”LS”?H:”RA”?P:”RB”?R:”Q”?Q:1/P->C:(P-R)/(2*H*P*R)->D:180/∏->E:IF N=1:THEN GOTO 1:ELSE GOTO 2:IFEND
Lbl 1:”DKI”?S:”D”?Z:Abs (S-O)->W:PROG “SUB1”:”XS”:X◢
“YS”:Y◢
GOTO 1
Lbl 2:”X”?X:”Y”?Y:X->I:Y->J:Prog “SUB2”:O+W->S
“S”:S◢
“Z”:Z◢
GOTO 2
子程序“SUB1”
->A:->B:->K:->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+ZCOS(F)->X:Y+ZSIN(F)->Y
2 / 9
子程序“SUB2”
G-90->T:Abs((Y-V)COS(T)-(X-U)SIN(T))->W:0->Z:Lbl0: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:GOTO 0:IFEND
Lbl 1: 0->Z:Prog”SUB1”:(J-Y)/SIN(F)->Z
说明:输入与显示
输入部分:
1. SZ => XY
2. XY = > SZ
N ? 选择计算方式,输入1表示进行由里程、边距计算坐标;输入2 表示由坐标反算里程和边距。
XA ?线元起点的X坐标
YA ?线元起点的Y坐标
DKA ?线元起点里程
CA ?线元起点切线方位角
LS ?线元长度
RA ?线元起点半径(直线上输10的45次方)
RB ?线元止点半径(直线上输10的45次方)
Q ?线元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)
DKI ?正算时所求点的里程
4 / 9
D ?正算时所求点距中线的边距(左侧取负,值右侧取正值,
在中线上取零)
X ?反算时所求点的X坐标
Y ?反算时所求点的Y坐标
显示部分:
XS=××× 正算时,计算得出的所求点的X坐标
YS=××× 正算时,计算得出的所求点的Y坐标
S=××× 反算时,计算得出的所求点的里程
Z=××× 反算时,计算得出的所求点的边距
规定
以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
(2) 当所求点位于中线时,Z=0;当位于