Goto 1:Q=2=>Goto 2Lbl 1:"CE:X"?M:"CE:Y"?F:"JL"?L:"FWJ"?A:Rec(L,A):M+I→C:F+J→DCls"X=":Locate 3,">

坐标正反算程序计算器

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

一、

Lbl 3:"1→ZS,2→FS"?Q

Q=1=>Goto 1:Q=2=>Goto 2

Lbl 1:"CE:X"?M:"CE:Y"?F:"JL"?L:"FWJ"?A:Rec(L,A):M+I→C:F+J→D

Cls

"X=":Locate 3,1,C:"Y=":Locate 3,2,D◢

Goto 3

Lbl 2::"CE:X"?G:"CE:Y"?H:"(HOU)FY:X"?N:"(HOU)FY:Y"?E

Pol(N-G,E-H)

If J<0:Then J+360→Y:Else J→Y:IfEnd

Cls

"FY JL=":Locate 10,1,I:"FY FWJ=":Y◆DMS◢

Goto 3

进入程序运行如下:

1→ZS,2→FS? 输入1为正算,2为反算.

以输入1为例:

CE:X? 测站点X(5796.717)

CE:Y? 测站点Y(5212.569)

JL? 仪器测得的距离(321.889)

FWJ? 仪器测得的方位角(193-41-07)

得到:X=5483.966

Y=5136.414

再按EXE,输2为例:

CE:X? 测站点X(5796.717)

CE:Y? 测站点Y(5212.569)

(HOU)FY:X? 后视或放样的X(5483.966)

(HOU)FY:Y? 后视或放样的Y(5136.414)

得到:FY JL=321.889

FY FWJ=193-41-6.79

二、

Deg : Fix 3 : “XZ→0:YZ→1”?A : If A = 1: Then Goto 1 : IfEnd ↙

If A = 0 : Then “BS→0:XY→1:AND→2:DK→3:L(I)→4 ”?O : IfEnd ↙

If O = 4: Then Goto 1 : IfEnd ↙

If O = 3: Then Prog “F.2 ”: If X= 0 : Then Goto 1 : IfEnd : IfEnd ↙

If O≠1: Then “X1 ”?X : “Y1”?Y : X→Z[11]: Y→Z[12]: “X2 ”?P : “Y2”?Q : Pol( P-X , Q-Y) : If J﹤0 : Then J + 360→J : IfEnd : Cls : “S12= ”: Locate 6 ,1, I : “B12= ”: J ►DMS◣

1→B : IfEnd ↙

If O = 1: Then “XY(0) →0: ≠﹥1”? B: IfEnd ↙

Lbl 1 : If A = 1 And O = 3 :Then Prog “F.2 ”: IfEnd : Prog “Q.1 ”

子程序PPQX (给定综合曲线属性)

“ZQX →0: *** →1: *** →2 ******* ”?C ↙

If C=0: Then 100→Z[98]: n0 →Z[99]: IfEnd ↙

If C=1: Then m1→Z[98]: n1 →Z[99]: IfEnd ↙

If C=2: Then m2→Z[98]: n2 →Z[99]: IfEnd ↙

*******

Prog “PQX ”

其中: mi为第i条综合曲线矩阵变量起始单元,(第1条综合曲线矩阵变量起始单元应自100开始,以便其他程序临时使用100以前的矩阵变量,综合曲线中每一基本单元需8个矩阵存储单元);ni为第i条综合曲线中基本单元数,每增加一个条综合曲线则增加一行If C=*******→Z[99]: IfEnd↙语句。

还应注特别意,原有程序中的矩阵变量定维语句DimZ应取消,只要原有程序中的矩阵变量定维不大于100,原有程序的运行不受影响。

子程序Q . 5 (建立数据库)

Deg : Fix 5 ↙

0→I : “N ”? W : W →Z[99]: “Z[MIN]”? V : V→Z[98]↙

Lbl 1 : “NO.I= ”: I ◣

Lbl C : V + 8 I→G ↙

“→DK ”?A : A→Z[G]↙

“→X ”?B : B→Z[G + 1]↙

“→Y ”?C : C→Z[G +2]↙

“→AT ”?D : D→Z[G +3]↙

“→(-1Y+1) ”?K : K→Z[G +4]↙

“→L ”?E : E→Z[G +5]↙

“→R1 ”?F : F→Z[G +6]↙

“→R2”?O : O→Z[G +7]↙

Lbl 2 : “JX→1: NO→0 : OK→2”? M : If M = 2 : Then Goto 3 : IfEnd : If M = 1: Then Goto C : IfEnd ↙

I + 1→I : Goto 1 ↙

Lbl 3 : “END ”

子程序Q . 6

Lbl 1 : “S ”? W : If W = 0 : Then Goto 2 : IfEnd ↙

I-W→W : Cls : “⊿S= ”: Locate 5 , 1 , W : “BP= ”: J ►DMS◣

Goto 1 ↙

Lbl 2 : Cls : “OK ”

子程序Q.1

If X = 0 And O = 3 : Then Goto 2 : IfEnd ↙

Lbl 1 : Z[98]→I : Z[99]→J : “→DKP ”? S ↙

If S = -1: Then Prog “JH . ZJ ”: Goto 1 : IfEnd ↙(加桥台转轴时)

If S = -2: Then Prog “ZH . 2 ”: Goto 1 : IfEnd ↙(加涵通转轴时)

If S = 0: Then Goto 2 : IfEnd : If S﹤Z[I ]: Then “DKP

Goto 1 : IfEnd : If S > Z[I + 8 J ]: Then “DKP>MAX ”◣

Goto 1 : IfEnd ↙

If O≠4 And B ≠0 : Then “→B ”? V : V : Prog “J ”: T→U : “→(-+)D ÷2 ” ? N : Else 0 →N : IfEnd ↙

Prog “Q.2 ”: Goto 1 ↙

Lbl 2 : “END ”

子程序Q . 2

If O≠3 : Then “→”: IfEnd ↙

0→I : Z[98]+ 8 →M ↙

If S ≥Z[M-8 ]And S ≤Z[M ]:Then Goto 1 : IfEnd ↙

Lbl 2 : I +1 →I : M + 8 →M ↙

If S ≤Z[M ]:Then Goto 1 : Else Goto 2 : IfEnd ↙

Lbl 1 : If O = 3 : Then I →B :IfEnd : M→Z[27]: If O≠4 : Then Prog “Q. 3”: Else “L(I) , I = ”: I ◣

Cls : “MIN = ”: Locate 6 , 1 , Z[Z[98]+8 I ]: “MAX = ”: Locate 6 ,2 , Z[Z[98]+8 I +8]:I→B : IfEnd ↙

子程序Q . 3

If O = 3 And U = 0 : Then B→I : IfEnd ↙

Z[98]+8 I →G ↙

Z[G]→Z ↙

Z[G +1]→Z[1]: Z[G +2]→Z[2]: Z[G +3]→Z[3]↙

Z[3]:Prog “J ”: T→Z[3]↙

Z[G +4]→Z[4]: Z[G +5]→M : 1÷Z[G +6]→Z[5]: 1÷Z[G +7]→Z [6]↙

Z[6]-Z[5]→Z[6]: S-Z→D ↙

If O = 3 : Then 0→N : IfEnd : Prog “Q . 4 ”↙

相关文档
最新文档