5800坐标计算程序+方位角计算方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.主程序TYQXJS

Defm10:Lbl 0: “1.LC=>XY”: “2.XY=>LC”: {V}:V=1=>GOTO 1: ≠> GOTO 2 △

Lbl 1: {DZG}:D:Z”JL=”:G”J=”:Z=0=>G=0:△Prog “QXYS”: Prog “ZSZB” : ”X=”:X ◢”Y=”:Y◢J>360=>J=J-360:△J<0=>J=J+360:△"FWJ=":J→DMS◢

{HU}:H“XC”:U“YC”:I=0:J=0:Pol(X-H,Y-U):J<0=>J=J+360:△“FW=”:J→DMS◢

“S=”:I◢

Prog “SQX”←┘

GOTO 0←┘

Lbl 2: D=***:Z=0:G=0:{MI}:M”XO”:I”YO”: Prog “FSZB”:”D=”:D ◢”JL=”:Z◢Prog “SQX”←┘

GOTO 0←┘

D=有效里程即线路起点里程

2. 正算坐标ZSZB

N=5:P=(1\E-1\R)÷Abs(K-F):Q=Abs(D-F)÷N:S=90Q÷π:J=C+(NPQ+2\R)NS:L=1←┘

X=A+Q÷6×(Cos C+Cos J +4∑(Cos (C+((L+0.5)PQ+2\R)×(L+.5)S),L,0,(N-1))+2∑(Cos (C+((LPQ+2\R)LS,L,1,(N-1)))+ZCos(J+G):←┘

Y=B+Q÷6×(Sin C+Sin J +4∑(Sin (C+((L+0.5)PQ+2\R)×(L+.5)S),L,0,(N-1))+2∑(Sin (C+((LPQ+2\R)LS,L,1,(N-1)))+Z Sin(J+G):←┘

3. 反算坐标:FSZB

Lbl 0:Prog “QXYS” :Prog “ZSZB”:O=J-90:←┘

P= (I-Y)cosO-(M-X) sinO :D=D+P:←┘

AbsP≥0.001=> GOTO 0 :≠> GOTO 1 △←┘

Lbl 1: Z= (I-Y)cosJ-(M-X) sinJ: ←┘

4. 《SQX》高程计算子程序

Prog“SB”:W=Z[1]-Z[2]:W>0=>Z[6]=-1:≠>Z[6]=1△Z[3]:T“T”=Abs(Z[3]W/2) :E“E”=T^2÷2Z[3]:C=D-Z[4]:D≦Z[4]=>Z[7]=Z[1]:≠>Z[7]=Z[2]△Z[5]:AbsC≦T=> “H0”: Z[8]=Z[5]+CZ[7]+Z[6](T- Abs C)^2÷2Z[3] ◢≠> “H0”: Z[8]=Z[5]+CZ[7]

5、曲线元要素数据库:QXYS◢

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△←┘

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△←┘

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△←┘

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△←┘

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△┘

……………………………

D≥F=>D<K=> F=**:A=**:B=**:C=**:R=**:K=**E=**△△←┘

(注:如有多个曲线元要素继续添加入数据库QXYS中)

6、《SB》竖曲线数据库

D≥竖曲线起点里程=>Z[1]=?:Z[2]=?:Z[3]=?:Z[4]=?:Z[5]=?△

D≥?=>Z[1]=?:Z[2]=?:Z[3]=?:…………△

TYQXJS(主程序名)

LbI 0:4→Dimz:Cls

"1.SZ→XY"

"2.XY→SZ"?→N:Cls

"XO"?U: "YO"?V: "SO"?O:"FO"?G: "LS"?H: "RO"?P:"RN"?R:?Q

1÷P→C:(P-R)÷(2HPR) →D:180÷π→E

N=2=>Goto 2

LbI 1:Cls:?S

S=0=>Goto 0 (注:當S輸入0時,程序會由LbI 0開始重新運行)

Z:Abs(S-O)→W

Prog"SUB1":Cls

"XS=":X◢

"YS=":Y◢

"FS=":F-90 ?DMS◢

Goto 1

LbI 2:Cls:?X

X=0=>Goto 0 (注:當X輸入0時,程序由會LbI 0開始重新運行)

Y:X→I:Y→J

Prog"SUB2":O+W→S:Cls

"S=":S◢

"Z=":Z◢

Goto 2

注:紅色部可以不要,亦可以要,它的作用是將S或X輸入0時,程序會重新由頭開始運行,(即是可以計算下段線元)

SUB1(子程序名)

0.1739274226→A:0.3260725774→B

0.0694318442→K:0.330009482→L

1-L→F:1-K→M

G+QEKW(C+KWD)→Z[1]

G+QELW(C+LWD)→Z[2]

G+QEFW(C+FWD)→Z[3]

G+QEMW(C+MWD)→Z[4]

A×cos(Z[1])→X (剩號可省略)

X+Bcos(Z[2])→X

X+Bcos(Z[3])→X

X+Acos(Z[4])→X

U+WX→X

Asin(Z[1])→Y

Y+Bsin(Z[2])→Y

Y+Bsin(Z[3])→Y

Y+Asin(Z[4])→Y

V+WY→Y

G+QEW(C+WD)+90→F

相关文档
最新文档