当前位置:文档之家› 5800编程

5800编程

5800编程
5800编程

1坐标反算(ST)

Lb1 1:"X1="?A:"Y1="?B

Lb2 2:"X2="?C:"Y2="?D

"S(1-2)=":POL(C-A,D-B)→S▲

IF J﹥0:Then J→T:Else J+360→T:If End

"T=":T→DMS▲

"K="?K

If K=1:Then Goto1:If End

If K=2:Then Goto2:If End

If K=3:Then C→A:D→B:Goto 2:If End 0

说明:

1、首先输入架站点坐标X0、Y0(O点)。

2、再输入后视点坐标XP、YP(P点)。

3、计算出O―P的边长S和方位角J。

4、当K=1时,重新输入O、P点的坐标。

5、当K=2时,以原O点坐标不变,重新输入新P点坐,计算出边长S和方位角J。

6、当K=3时,以原P点坐标为架站点坐标O(X0、Y0),重新输入新的P点坐标,计算出边长S和方位角J。

2 坐标正算(XY)

LbI 0:"X0="?A:"Y0="?B:

"P(1→Z,2→F)="?P

If P=1:Then Goto2:Else Goto5: If End

LbI 2:"XA="?C:"YA="?D

"S(0-A)=":POL(C-A,D-B)→S▲

IF J﹥0:Then J→F:Else J+360→F:If End

"T(0-A )=":F→DMS▲Goto6

Lb1 5:"T(0-A )="?F

Lb16:"S(0-P )="?S:"E(∠AOP=)"?E

E+F→T:"XP=":A+Rec(S,T) →X▲

"YP=":B+J→Y▲

If T≥360:Then T-360→T: If End

"T(0-P)=":T→DMS▲

"K="?K

If K=1:Then Goto0:If End

If K=2:Then Goto6:If End

If K=3:Then X→A:Y→B:T+180→F:Goto6:If End

说明:

1、首先输入架站点O(X0、Y0)坐标

2、输入判断值P: 当P=1时输入后视点的坐标,计算出到后视点距离"S(0-A)="S和方位角T(0-A )=F;当P=2时直接输入后视点的方位角T(0-A )=F。

3、然后输入测点P的平距边长"S(0-P )="?S,和到测点的夹角C"E(∠AOP=)"?E。

4、计算出P点的坐标P(X、Y)和O―P的方位角"T(0-P)="

5、当K=1时,重复以上步骤。

6、当K=2时,架站点O不变,重新输入另一测点P的边长S和夹角F,计算出P点的坐标和方位。

7、当K=3时,以上一计算点P为架站点,再输入边长和夹角,计算出以支导线形式的坐标和方位。

3 坐标转换(ZH)

"K=1-NO,≠2-Y"?K

If K=1:Then Goto1:Else Goto 2: If End

Lb1 1:"XA="?A:"YA="?B:"XB="?C:"YB=?D:"XI="?E:"YI=?F:"XJ="?G:"YJ="?H

Pol (C-A , D-B) :J→O:Pol (G-E , H-F) :J→U:O-U→T

If T﹤0:Then T+360→T: If End

"X0":A-E×cos(T)+F×sin(T) →M▲

"Y0":B-E×sin(T)- F×cos(T) →N▲

"T0=":T DMS▲Goto 3

Lbl 2:"X0="?M:"Y0="?N:"T0="?T

Lbl 3:"XX="?R:"YY"?V:"P=1→SG,,2→DD"?P

If P=1: Then Goto 4:Else Goto 5:If End

Lbl 4:"X(=":(R-M)×cos(T)+(V-N)×sin(T) →X▲

"Y=":-(R-M)×sin(T)+(V-N)×cos(T) →Y▲Goto 3

Lbl 5:"X=":R×cos(T) -V×sin(T)+M→X▲

"Y=":R×sin(T)+V×cos(T)+N→Y▲Goto 3

说明:

1、输入判断值K:

a: K=1时,输入A、B两点在两坐标系中的各自坐标A(XA,YA)、B(XB,YB)、A(XI,YI)、B(XJ,YJ),计算出施工坐标系的原点坐标在大地坐标系中的坐标值和X 轴的夹角。

b…..K≠1时,直接输入施工坐标系原点在大地坐标系中的坐标(X0,Y0)和X轴的夹角T0。

2、输入计算点坐标(XX,YY)。

3、输入判断值P:

a: P=1时,计算出P点在施工坐标系中的坐标。

b: P≠1时,计算出P点在大地坐标系中的坐标。

4 缓和曲线(HQX)(缓和曲线上和两端直线上的坐标正反算程序)

Lbl 0:"R="?R:"L0="?L:"G(∠YXJ=+ OR -)= -?G

L÷2-L3÷(240R2) →C:L2÷(24R) →P:180L÷(2∏R)→B:

"LL=":(Abs(G)-2B)∏R÷180+2L→S▲

"T=":C+(R+P)tan((Abs(G)÷2) →T▲

"E=":(R+P)÷cos(Abs(G)÷2)-R→I▲

Lbl A:"X(JD)= "?M:"Y(JD)= "?N:

"LK(JD)= "?W:"A(FW(ZH→JD))="?A:

Abs(G)÷G→H:Abs(G÷2) →Q:A+H(90+Q) →K

"ZH=":W-T▲

"HY=":W-T+L▲

"QZ=":W-T+S÷2→Z▲

"YH=":W-T+S-L▲

"HZ=":W-T+S▲

Lbl 8:"X="?X:"Y="?Y:

Abs(G)÷G→H:Abs(G)÷2→Q:

L2÷(24R) →O:90L÷(∏R) →B:L-L3÷(40R2) →C:

(R+O)÷cos(Q) →D:Dsin(Q)+C-Rsin(B) →T

If Y﹤1000:Then Goto 6;If End

Pol (X-M,Y-N) →E:J→F:Rec(I,J-K):

Q-B→Q:J÷Abs(J) →P:Pol(D-I,J)

If Abs(J)﹤Q:Then Z-HJ∏R÷180→E:H(R-I) →F:Goto B:If End

K+(90-Q-B)P→C:Z-PH(Q∏R÷180+L) →D:

T-Rec(E,F-C) →E:HJ→F

If E﹤0:Then D+PHE→E:﹣PHJ→F:GotoB:If End

E→S:

Lbl 9:S-S5÷(40R2L2) →V:﹣PHS3÷(6RL) →C:540C÷(∏S) →U:

Pol (E-V,F-C):Rec(I,J-U):S+I→S

If Abs(I)﹥0.0001:Then Goto 9:If End

D+SPH→E:﹣PJ→F:Goto B

Lbl 6:X-Z→U:Abs(U)÷U→P:Q-B→Q

If Q∏R÷180﹥PU:Then Rec(R-HY,180UHP÷(∏R):

Pol(D-I,J):M+ Rec(I,K-PJ) →E:N+J→F:Goto B:If End

K-PH(90-Q-B) →C:Z+P(Q∏R÷180+L) →D:P(D-X) →U

If U﹤0:Then Pol (T-U,PY):M+Rec(I,C+J) →E:

N+J→F:Goto B:If End

U-U5÷(40R2L2) →O:HPU3÷(6RL) →B:

90U2PH÷(∏RL) →Q:Pol (T-O+PYsin(Q),B+PYcos(Q)):

M+Rec(I,C+J) →E:N+J→F

Lbl B:"X= OR DK=":E▲

"Y= OR PIAN=":F▲ Goto 8

程序说明:

1、首先输入曲线参数R=(圆曲线半径),G=(转向角,左“—”右“+”):L0=(缓和曲线长)。计算输出曲线总长LL,切线长T,外矢距E,切曲差q

2、输入曲线转角点坐标(X(JD)=, Y(JD)=);曲线转角点桩号LK(JD),直缓点至转角点的方位角FW(ZH-JD)。计算输出直缓点桩号ZH=,缓园点桩号HY=,曲中点桩号QZ=,圆缓点桩号YH=,缓直点桩号HZ=。

3、输入待求点的数据X=,Y=:

①、已知该缓和曲线段或相邻两端直线段范围内的任意桩号值和偏离值(偏离值为左是为“-”)。即X=桩号,Y=±偏离值(Y值<1000,即Y值的整数位不能大于四位数)。自动计算出该桩号偏离点的坐标X( Or LK)= ,Y(Or Pian Ju)=

②、已知该缓和曲线段或相邻两端直线段范围内的任意点坐标值X=,Y=,(Y坐标值的输入必须为整数位大于四位数的数据)。自动计算出该点所在的桩号X( Or LK) = ,和偏离中心的位置Y( Or Pian Ju)(Y=负值时表示为左偏离)。

4、重新输入下一点的数据X=,Y=。

(注意:输入坐标时必须为大于四位的数据,偏离值必须为小于四位的数据)。

5 边长交会(BJH)

"XA="?A:"YA="?B:"XB="?A:"YB="?D

Lbl A:"S(AP)= "?E:S(BP)= "?F

Pol (C-A,D-B) →S:J→T

(S2+E2-F2)÷2÷S→P:Abs(√(E2-P2)) →H

A+P×cos(T)-H×sin(T) →M

B+P×sin(T)-H×cos(T) →N

A+P×cos(T)-H×sin(T) →X

B+P×sin(T)+H×cos(T) →Y

Pol (X-A,Y-B):J→U:If T-U﹥0:Then Goto 2:If End

Lbl 2:M→G:N→L:X→Y:Y→W:Goto 3

Lbl 3:"K="?K

If K﹥0:Then Goto 5:Else Goto 6:If End

Lbl 5:"XP=":V▲

"YP=":W▲Goto A

Lbl 6:"XP=":G▲"YP=":L▲ Goto A

说明:

1、输入已知点坐标A(XA,YA)、B(XB,YB),输入待定点至已知点的距离S(AP)、S(BP)。

2、输入判断值K,当K为正值时输出右边点坐标(XP,YP),当K为负值时输出左边点坐标(XP,YP)。

6 方向交会(FXJH)

Lbl 1:"XA"="?A:"YA="?B:"XB="?C:"YB="?D

Pol (C-A,D-B) →S

If J﹤0:Then J+360→T:Else J→T:If End

"S(A-B)= ":S▲

"FW(A-B)= ":T DMS▲

Lbl 2:"X0"="?E:"Y0="?F\

Pol (A-E,B-F) →V:If J﹤0:Then J+360→W:Else J→W:If End

"S(0-A)= ":V▲

"FW(0-P)= ":W DMS▲

Lbl 3:"FW"(0-P)= "?G

G-W→M:1÷tan(M) →Q:W+180-T→N:1÷tan(N) →R:Q+R→U

(AQ+ER-B+F)÷U→X

(BQ+FR+A-E)÷U→Y

Pol (X-A,Y-B) →O:

Pol (X-E,Y-F) →P:

"XP=":X▲"YP=":Y▲

"S(A-P)= ":O▲"S(0-P)= ":P▲Goto 3

7 后方交会(HFJH)

Lbl 1:"XA="?A:"YA="?B:"XB="?C:"YB="?D:"XC="?M:YC="?N

Lbl 2:"E(﹤APB)= "?E:"J(﹤BPC)= "?F

(D-B)÷tan(E)-C+A→Q

(C-A)÷tan(E)+D-B→W

-(N-D)÷tan(F)-M+C→R

-(M-C)÷tan(F)+N-D→T

(Q+R)÷ (W+T) →K

Q-WK→U:-R+TK→O

U÷(1+K2) →P:PK→L:C+P→X:D+L→Y

"XP=":X▲"YP=":Y▲

Pol (A-X,B-Y) :If J﹤0:Then J+360→J:If End

"S(P-A)= ":I▲"FWJ(P-A)= ":J DMS▲

Pol (C-X,D-Y) :If J﹤0:Then J+360→J:If End

"S(P-B)= ":I▲"FWJ(P-B)= ":J DMS▲

Pol (M-X,N-Y) :If J﹤0:Then J+360→J:If End

"S(P-C)= ":I▲"FWJ(P-C)= ":J DMS▲Goto 1

说明:

1、先输入已知点A、B、C的坐标,再输入A-B的夹角E和B-C的夹角F。

2、计算出末知点的坐标X、Y。

3、计算出末知点到各已知点的边长(S)和方位角(J)。

4、输入时必须是面向已知点从左至右输入

8、竖曲线(SQ)

“LK(JD)=”?M:“H(JD)=”?N:“R=”?R:“I1=”?I:“I2”?J

I-J→P:

If P﹥0:Then 1→K:Else -1→K:If End

“T=”:Abs(R×(J-I)÷200)→T▲

“E=”::T2÷2÷R→E▲

LBI 1:“LK=”?L:

If L≤M-T:Then GOTO 6:Else GOTO 2:If End

LBI 2:If L≤M:Then GOTO 7:Else GOTO 3:If End

LBI 3:If L≤M+T:Then GOTO 8:Else GOTO 9:If End

LBI 6:“H=”:(L-M)×I÷100+N→H▲GOTO 1

LBI 7:“H=”:(L-M)×I÷100+N-K×(L-M+T)2÷2÷R→H▲GOTO 1

LBI 8:“H=”:(L-M)×J÷100+N-K×(L-M-T)2÷2÷R→H▲GOTO 1

LBI 9:“H=”:(L-M)×J÷100+N→H▲GOTO 1

说明:

1、输入竖曲线交点(顶点)的桩号LK(JD)=,高程H(JD)=,曲线半径R。.曲线前进方向的第一坡度I1,第二坡度I2(只输入百分值:如5%输入5,-3.5%输入-3.5)

2、输入坡度上(含直坡和竖曲线上的任意点)桩号值。

3、计算出任意桩号的高程值。

相关主题
文本预览
相关文档 最新文档