当前位置:文档之家› 5800坐标计算程序+方位角计算方法

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

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

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

X+Zcos(F)→X

Y+Zsin(F)→Y

SUB2(子程序名)

G-90→T

(Y-V)cos(T)-(X-U)sin(T)→W

Abs(W)→W:0→Z

LbI 4:Prog"SUB1"

T+QEW(C+WD)→L

(J-Y)cos(L)-(I-X)sin(L)→Z

If Abs(Z)<1E-6:Then 0→Z Prog"SUB1" (J-Y)÷sin(F)→Z

Else W+Z→W:Goto 4:IfEnd

计算器主程序:ZHU-CHENG-XU

Lbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。。。。。。。”?U:

U=1=>Prog”ZS-FS”: 进入公路三维程序

U=2=>Porg”ZS”: 进入坐标正算程序

U=3=>Porg”FS”: 进入坐标反算程序

U=4=>Porg”XY =>SG”: 进入大地坐标转施工坐标程序

…………Goto0:

说明:计算器总的主程序,进入选择各种分支计算程序。1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。。。。。。。。选择错误重新选择。此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.

公路三维部分

正反算选择程序:ZS-FS

Deg: //设置角度模式

20→DimZ: //扩展变量

“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3

If U=1: ThenProg”ZS-XH”:IfEnd: //进入正算循环主程序

IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序

IfU=3:ThenProg”BP-FY”:If End: //进入边坡开挖主程序

正算循环主体程序ZS-XH

“1PT-2SJ”?W://普通计算和设计边距计算选择

“XL-XZ“?U://选择线路1~N

If W=1: Then //运行普通计算模式边踞自由输入

Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距

Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序

If W=2:Then //运行设计计算模式边距按设计输入

Lbi1:”L=”? L://输入桩号

Porg”0。5LUKUAN”: //录入公路加宽后,左右侧设计边距

Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序

正算循环子程序ZS-XH-1

Prog”PM-XL-XZ”: //进入平面线路选择程序对线路线元进行选择

Prog”CHAOXIAN-CL”: //里程超限处理

Prog”GL-ZS”: //进入坐标正算程序

Prog”GL-BZ-ZS”: //进入公路边桩正算程序

Prog”GC-XL-XZ”: //进入高程线路选择程序对线路线元进行选择

Prog”GC”: //进入高程部分提取中桩高程

Prog"CG-XL-XZ": //进入超高数据库提取超高数据

If W=1:ThenProg”B-H”: //普通计算时进入边桩高程部分提取边桩高程

ElseZ[3] →Z: Porg“B-H”://按设计计算时候代入减去半边绿化带后的路基边距,提取边桩高程

Ifend:Prog”ZS-XS”: //进入正算显示程序,提取正算三维结果

反算循环主体程序FS-XH

0→Z:“XL-XZ”?U://选择线路1~N

Lbi0:

“L”?L:“X=”?T:“Y=”?S://输入起算假定桩号,实测X Y

Prog”GL-FS”: /进入公路反算程序

Prog”FS-XS”: //进入反算显示程序

Goto0:

坐标正算程序GL-ZS

.1739274226→I:.3260725774→J:

.0694318442→K:.3300094782→E : //四节点法计算系数录入

1-E→F:1-K→M:

Q+KrO(C+KD) →K: //数据库要用X、Y、Q作为起点坐标方位角

Q+ErO(C+ED) →E: //r是弧度,输入方法FUNCTION 选5

Q+FrO(C+FD) →F:

Q+MrO(C+MD) →M:

X+O(ICos(K)+JCos(E)+JCos(F)+ICos(M)) →X: //计算出X坐标

Y+O(ISin(K)+JSin(E)+JSin(F)+ISin(M)) →Y: //计算出Y坐标

Q+Or(C+D) →Q://计算出算点方位角,O是字母,r是弧度:

边桩坐标计算程序GL-BZ-ZS:

"XJ"?→A:X+Zcos(Q+A) →G: //计算出边桩X坐标

Y+ZSin(Q+A) →M: //计算出边桩Y坐标

公路反算程序GL-FS

Do:Porg”PM-XL-XZ”: //进入平面线路选择程序

Porg”CHAOXIAN-CL”: //里程超限处理程序

Porg”GL-ZS”: //进入公路正算4节点程序

T-X→I:S-Y→J: //试算点与测点X,Y距离差

Pol(I,J):J-Q→J: //方位角转换为接近试算点到测点的值:

Rec(I,J): //计算出X差和Y差(X里程,J边)

L+I→L://修改后的里程

Abs(I) →I: //修改值的绝对值

LpWhile I>0.001: //小于一毫米通过,大于一毫米循环计算

中桩高程计算程序GC

If I-A<0:Then1→H:IfEnd: //开口向上部分赋值

IfI-A=0:ThenGoto1: IfEnd: //无竖曲线部分赋值

IfI-A>0:Then-1→H:IfEnd: //开口向下时赋值

(L-C)I+K+(L-C)^2/(2E)H→I://计算得出竖曲线部分中桩高程

Goto2:Lbi1:

K+(L-C)I→I: //计算得出无竖曲线部分中桩高程

Lbi2:

边桩高程计算程序B-H

(L-C)/(D-C)→P: //计算点占本线元长比例

3P^(2^(S))-2P^(3^(S)) →P: //计算得线性和高次抛物线系数

F+P(T-F)→E://初步计算计算点横坡

If V=1:Then If N= -1:Then //直线和直缓,缓直,曲线左偏时

If Z<0:Then-E→E:

IfE>Z[4]:ThenZ[4]→E: IfEnd : //计算左侧时,横坡大于一般横坡取一般横坡

I+Abs(Z)E→O: IfEnd : //左侧高程

IfZ>0:Then I+ZF→O:IfEnd: Ifend: //右侧高程得数

If N=1:Then IfZ<0:Then I+Abs(Z)E→O:IfEnd: //曲线右偏时,左侧高程得得

IfZ>0:Then-E→E:If E>Z[4]:Then Z[4]→E:IfEnd //右侧高程横坡大于一般横坡,取一般横坡

I+ZE→O:IfEnd: IfEnd: IfEnd: //右侧高程得数

IfV=2:ThenIf Z>0:Then I+ZE→O:IfEnd://圆曲线全超高和S曲线超高渐变部分右侧高程得数

IfZ<0:ThenI-Abs(Z)E→O:IfEnd:IfEnd: // 圆曲线全超高和S曲线超高渐变部分左侧高程得数

设计标准路面宽度子程序CHANG-SHU

12→Z[1]://录入12米为路面半宽度,根据设计修改

1.5→Z[2]://录入1.5米为绿化带半宽,根据设计修改,无绿化带输入0

-0.02 →Z[4]: //录入-0。02为公路一般横坡,根据设计修改

// 注:在以中轴线旋转的超高不考虑绿化带影响的,在常数程序中,绿化带修改为0路面宽度子程序0。5LUKUAN

”Z-1,Y+1”?V: //左右边桩选择

Porg”CHANG-SHU”: //设置标准路面半宽

If V=1:Then Porg”GL-JK”: //右侧时,进入加宽子程序

Z[1]+Z→Z: //计算右册正确公路半宽,

Z-Z[2] →Z[3]:IfEnd://计算右侧减去半边绿化带时计算边桩高程时用的边距

IfV=-1: Then Porg”GL-JK”: //左侧时,进入加宽子程序

-Z[1]-Z→Z: //计算左册正确公路半宽

Z+Z[2] → Z[3]:IfEnd: //计算左侧减去半边绿化带时计算边桩高程时用的边距

公路加宽子程序GL-JK

前点加宽里程A,加宽止点里程B,“加宽缓和段全长C,止点加宽宽度D

本加宽程序欠缺S缓和曲线加宽程序,因为没有遇到过,所以暂时空缺

Porg“JK-XL-XZ”: //进入加宽数据库线路选择程序

If D=1:Then(4((L-A)/(B-A))^3-3*((L-A)/(B-A))^4)*C→Z:IfEnd:

// 从小到大加宽

If D=2:Then (4(((B-A)-(L-A))/(B-A))^3-3*(((B-A)-(L-A))/(B-A))^4)*C→Z:IfEnd:

//从大到小加宽,以上两式为参考公式,可根据图纸更改公式

IfD=3:ThenZ=Z:IfEnd: //圆曲线加宽直一样时

IfZ≠0:then”JK=”:Z◢:IfEnd: //存在加宽值时显示加宽值

正算显示ZS-XS

“FWJ”:Q◢//显示计算里程方位角

“ZHONG-X”:X◢//显示中线X坐标

“ZHONG-Y”: Y◢//显示中线Y坐标

“ZHONG-GC”:I◢//显示中桩高程

“B-X”:G◢//显示边桩X坐标

“B-Y”: M◢//显示边桩Y坐标

“B-GC”:O◢//显示边桩高程

反算显示FS-XS

“L”:L◢//显示计算里程

“Z”:J◢//显示计算边距

里程超限CHAOXIAN-CL

If L<A:Th en “L-<<<”;Stop:IfEnd: //小于本路线最小里程提示,退出程序

If L>B: Then”L+>>>”:Stop:IfEnd: //大于本路线最大里程提示,退出程序

边坡放样程序BP-FY

“XL-XZ“?U://线路选择

”S-L”?L:”X=”?T:”Y=”?S: //输入试算桩号和测点X,Y.

T→Z[10]:S→Z[11]:

Porg”PM-XL-XZ”: //对平面线路进行选择

Porg”GL-FS“://进入反算程序,反算测点里程偏距。

If J>0:Then”-----YOU----“◢//显示计算边坡为公路右侧

Else”-----ZUO----“◢Ifend: //显示计算边坡为公路左侧

Porg”0.5lukuan”: //进入设计边距程序

Porg”GC-XL-XZ”: //高程线路选择

Porg”GC”: //对中桩高程进行计算

Porg"CG-XL-XZ" //进入超高数据库提取超高数据

Z[3] →Z://录入减去半个隔离带加上加宽值后的边距

Porg”B-H”: //计算该里程边桩高程

Abs(Z)+Z[2] →Z: //录入设计绿化带

Z[10]→X:Z[11]→Y://坐标变量转换,抛弃中线点XY坐标,以第一测点XY为后步起算数据

Porg”BP-XL-XZ”: //进入边坡数据库,提取要素.

“1,2,3,4-BP”?T ://选择所计算的边坡坡段

Porg”BP-FY-1”: //进入边坡计算子程序1程序

边坡计算子程序1 BP–FY-1

O+CB+EF→A: //计算出边坡底线高程

Abs(Z)+B+D+E→W: //计算中线点距离边坡底线距离

Abs(J)-W→D : //试测点到起坡点平距

VH→C: //马道高差

0→B: //设置边坡底线平距为0

If T=1: //计算第一段边坡

Then Porg”BP-FY-2”:IfEnd: //进入计算子程序2

A+G+C→A: //第二段边坡底线高程

H+GK→B: //第二段边坡底距离第一段起线平距

IfT=2:Then //进入计算第二段边坡

M→G:N→K://第二段边坡数据变成子程序计算的第一边坡数据

Porg”BP-FY-2“:IfEnd: //进入计算子程序2

A+M+C→A://第三段边坡底线高程

B+H+MN→B //第三段边坡底距离第一段起线平距

IfT=3:Then //进入计算第三段边坡

I→G:P→K://第三段边坡数据变成子程序计算的第一边坡数据

Porg”BP-FY-2”:IfEnd: //进入计算子程序2

A+I+C→A: //第四段边坡底线高程

B+H+IP→B://第四段边坡底距离第一段起线平距

IfT=4:Then //进入计算第四段边坡

R→G:S→K://第四段边坡数据变成子程序计算的第一边坡数据

Porg”BP-FY-2”:IfEnd: //进入计算子程序2

边坡计算子程序3 BP-FY-3

If G<0:Then Return:IfEnd:

IfN<A: //如果测点高程小于该层边坡底线高程

Then“++++,SHANG-TIAO”:A-N◢//显示坡度错误,不在本坡段,上几米再次测量或计算低层边坡

Porg"BP-FY":IfEnd: //返回程序重新找点

If N>(A+G): //如果测点高程大于该段边坡定部高程

Then”----,XIA TIAO”: N-A-G◢//显示高程错误,不在本坡段,应在上面坡段,应忘上调整

Porg: BP-FY”: IfEnd: //返回主程序

边坡计算子程序2 BP-FY-2

“GC=”?N://输入测点高程

Porg”BP-FY-3”: //判断测点是否低于该坡段最低高程

Abs(N-A)*K+B-D→E : //计算出正确偏差

If Abs(E)≤0.05:Then //如果测点误差5厘米以内表示成功

”CHENG-GONG,WUCHA=”:E◢//成功后,显示测点误差

Prog”BP-FY”:IfEnd: //返回主程序测下个断面

IfJ>0:ThenE→Z: //右侧录入误差

Else -E →Z: Z→Z[10]: //左侧录入误差

IfEnd:

Porg”GL-BZ-ZS”: //计算下一点坐标

“X=”:G◢“Y”:M◢//显示下一点坐标,进行放样

G→X:M→Y://录入XY坐标,进行下次计算

“GC=”N: //输入测点高程

Abs(N-A)*K+B-(D+E)→C: //计算出正确偏差

If Abs(C)≤0.05:Then //如果测点误差5厘米以内表示成功

”CHENG-GONG,WUCHA=”:C◢//成功后,显示测点误差

Prog”BP-FY”:IfEnd: //返回主程序测下个断面

CE/(E-C) →F: //由上次两点误差推算第三点

IfJ>0:ThenF→Z: //右侧录入误差

Else -F→Z: IfEnd: // 左侧录入误差

Porg”GL-BZ-ZS”: //进行下一点坐标计算

“X=”:G◢“Y=”:M◢//显示下一点坐标,进行放样

G→T:M→S://录入XY坐标,进行下次计算

“NONO” : //本循环未计算出正确点

Porg”BP-FY”: //,使用计算出的坐标,进入下个循环,程序自动把此坐标带入下个循环备注:如果有更多的坡级,大家可以使用增加变量.完全满足大家边坡放样需求

数据库部分

1平曲线数据库

平面线路选择程序PM-XL-XZ

U=1=>Prog”HUO-DA-XIAN”: //进入假定线路活大线。

U=2=>Prog”X2”: //进入路线2

U=3=>prog”X3”: //进入路线3

(P-R)/(2HPR)→D:

L-O→O://正算程序需要补充部分

OD→D:

1/P→C:

(数据库)活大线HUO-DA-XIAN

线路起点里程→A:线路终点里程→B:

If L≤第一线元止点里程:Then 起点X坐标→X:起点Y坐标→Y:

起点半径(左-,右+)→P:止点半径(左-,右+)→R:本线元长度→H:

线元起点桩号→O:起点方位角→Q:Return:IfEnd:

If L≤第二线元止点里程:。。。。。。Return:

。。。。。。

二号线路X2

三号线路X3

2,高程数据库部分

说明:输入部分:L为计算里程,C为起点里程,,I为纵向前坡坡度,A为纵向后坡坡度,E为半径,K为起点高程,

高程线路选择程序GC-XL-XZ

U=1=>Prog”GC1”: //进入线路高程1

U=2=>Prog”GC2”: //进入线路高程2

U=3=>Prog”GC3”: /进入线路高程3

一号线路高程GC1

If L≤该段止点里程:Then(前坡例0。01)→I:(后坡例-0。034)→A:(竖曲线半径)→E:((起点高程)→K:(起点桩号)→C:止点桩号→D:Return:Ifend;

… …

直线段不需要输入半径,直线段的前后坡度I等于E,输入本坡值,

二号线路高程GC2

三号线路高程GC3

3超高数据库

IfU=1:ThenPorg”CG1”:IfEnd: //进入线路1

IfU=2;ThenPorg”CG2”:IfEnd: //进入线路2

IfU=3:ThenProg”CG3”:IfEnd: //进入线路3

超高线路选者程序CG-XL-XZ

N为曲线左右偏区别符号(左-1,右+1),F为起点横坡,T为止点横坡,S为线性渐变和高次渐变的判断要素,取0为线性,取1为高次。V为一般段超高缓和段与全超高和卵型插入缓和段判断要素。直线一般超高缓和段输入1,全超高和S超高缓和段输入2,显示部分:重要约定,在超高缓和段输入超高为公路外侧超高,在全超高平曲线和卵型曲线插入缓和段中,前横坡F和后横坡T都输入右侧横坡。

超高数据库1 CG1

-0.02→F:-0.02→T://录入直线部分一般超高,数据根据设计调整0→S:1→V://录入直线部分计算性质,数据根据设计调整

1→N://1→N:数据不调整,输入以上几段后,直线超高不变段可不再输入数据.

If L≥该段起点里程And L≤该段止点里程:Then(不超高和超高缓和段输入1,单圆曲线全超高和S超高缓和段输入2) →V:(平曲线左右偏区别符号,超高缓和段才输入左-1,右+1)→N:(超高方式选择,0为线性,取1为高次)→S:(起点横坡例-0。02,根据设计值更改)→F:(止点横坡例+0.03,根据设计值更改)→T:起点桩号→C:止点桩号→D:Return:Ifend;

......

超高数据库2 CG2

超高数据库3 CG3

4,加宽数据库

加宽线路选择程序JK-XL-XZ

IfU=1:ThenPorg”JK1”:IfEnd: //进入线路1

IfU=2;ThenPorg”JK2”:IfEnd: //进入线路2

IfU=3:ThenProg”JK3”:IfEnd: //进入线路3

:…….

加宽数据库JK1

A为加宽前里程,B为加宽止点里程,C最大加宽点加宽宽度,D加宽趋势(从前往后输入1从后往前输入2 ,全加宽输入3) Z全加宽宽度(注明,不加宽部分不需要录入数据库,加宽缓和段不输入Z,全加宽不输入C)

1号线路JK1

0→Z: //录入不加宽部分加宽值为0,此句必须输

IfV=(公路左侧-1,公路右侧+1): Then L≥此段起点And L≤此段终点:Then 加宽前里程→A:加宽段止点里程→B:最大加宽点加宽宽度→C:加宽趋势(由小到大1,由大到小2)→D:IfEnd: //此段为加宽缓和段的格式

IfV=(公路左侧-1,公路右侧+1): Then L≥此段起点And L≤此段终点:Then 加宽前里程→A:加宽段止点里程→B:最大加宽点加宽宽度→C:加宽趋势3→D:加宽宽度→ZIfEnd: //此段为全加宽段的格式

2号线路JK2

3号线路JK3

。。。。。。

5,边坡数据库

边坡线路选择程序BP-XL-XZ

IfU=1ThenPorg"BP1":IfEnd: //进入线路1

IfU=2ThenPorg"BP2":IfEnd: //进入线路2

IfU=3ThenProg"BP3":IfEnd: //进入线路3

.........

路肩宽度B 路肩坡度C 边沟宽度D、平台宽度E 平台坡度F 马道宽H 马道坡度V (马道坡度向边坡侧仰为-,向公路侧仰为正)1级边坡高度G1级别边坡坡度K 2级边坡高度M 2级边坡坡度N 3级边坡高度I 3级边坡坡度P 4级边坡高度R 4级边坡坡度S

边坡数据库1 BP1

If J≥(或≤区分路基左右)0:Then If L(里程)<终点桩号And L>起点桩号:Then "1~N": //录入本线元边坡级数,在使用时候可以看到本段边坡级数,而选择计算边坡层

路肩宽度→B:路肩坡度→C:边沟宽度→D:平台宽度→E:平台坡度→F:马道宽度→H:马道坡度→V:1级边坡高度→G:1级别边坡坡度→K :2级边坡高度→M:2级边坡坡度→N :3级边坡高度I:3级边坡坡度P:4级边坡高度R:4级边坡坡度:Return:IfEnd:IfEnd: //约定:所有边坡度正负符号向中线内侧倾斜为+,向外侧倾斜为-。有几层边坡就录入多少边坡数据,只有一层边坡时可不录入马道高宽数据

边坡数据库2 BP2

边坡数据库3 BP3

使用说明:

进入常数子程序更改设计常数

根据数据库说明编写数据库

一,坐标正算方法

普通计算

1,进入主程序ZHU-CHENG-XU

2,选择使用程序,根据大家录入的代码,本程序,选择1

3,选择坐标1,正算,2,反算,3边坡放样,选择1

4,1为普通计算或者2设计计算选者1,选者1

5,线路选择1~N,根据计算路线编号进行选者

6,输入计算里程

7,输入计算边距,左-,右正

8,显示计算点方位角,显示计算点中桩XY,显示中桩高程,显示边桩XY,显示边桩高程

设计计算

1,进入主程序ZHU-CHENG-XU

2,选择使用程序,根据大家录入的代码,本程序,选择1

3,选择坐标1,正算,2,反算,3边坡放样,选择1

4,1为普通计算或者2设计计算选者1,选者2

5,线路选择1~N,根据计算路线编号进行选者

6,输入计算里程

7,输入计算左边桩或者右边桩左侧输入-1,右侧输入+1

8,显示计算点方位角,显示计算点中桩XY,显示中桩高程,显示边桩XY,显示边桩高程

二,坐标反算方法

1,进入主程序ZHU-CHENG-XU

2,选择使用程序,根据大家录入的代码,本程序,选择1

3,选择坐标1,正算,2,反算,3边坡放样,选择2

4,线路选择1~N,根据计算路线编号进行选者

5,输入试算点里程L 可输入任意里程,数据库有数据就好,离真实坐标越近越快

6,输入测点X,Y

7,显示测点里程和边距

三,边坡开口放样与坡脚放样

1,进入主程序ZHU-CHENG-XU

2,选择使用程序,根据大家录入的代码,本程序,选择1

3,选择坐标1,正算,2,反算,3边坡放样,选择3

4,输入试算点里程

5,输入山坡上第一测点X,Y,Z

6,显示本边坡级数,选者计算坡级,如测点高程不在本坡级,程序会提示上多少米或者下多少米重新找点测量。

6,如测点平距误差小于设定值5cm,显示成功语句并自动转换到下个断面从第4步开始,如误差过大自动计算修改值,显示下一点坐标,

7,输入第二测点高程

8,如测点平距误差小于设定值5cm,显示成功语句并自动转换到下个断面从第4步开始,如误差过大自动计算修改值,显示下一点坐标,

8,输入第三测点高程

9,如测点平距误差小于设定值5cm,显示成功语句并自动转换到下个断面从第4步开始,如误差过大自动计算修改值,显示下一点坐标,

10如果以上三点均未找到边坡开口线,程序显示下一点坐标,并显示NONO,并返回第4部,试算点坐标和XY部分不需要修改,只需要如实输入第四测点高程,再次开始循环计算。

直线上的切线方位角不变

缓和曲线的转角=Ls/2/R(弧度)

圆曲线的转角=Lc/R(弧度)

所以,已知起点切线方位角为A(弧度)的情况下

ZH点的切线方位角=A

HY点的切线方位角=A+Ls/2/R

YH点的切线方位角=A+Ls/2/R+Lc/R

HZ点的切线方位角=A+Ls/R+Lc/R,同时应与本交点到下一交点的坐标方位角相等。上式中,Ls为缓和曲线长,Lc为圆曲线长,R为圆曲线半径,曲线左偏时加负号。各主点的坐标相信你如果懂积木法算桩坐标的话应该都可以计算得出,同时记得将HZ 点的坐标计算值和交点法算得的坐标相较以检验。

9楼:公道翁11-1-29 16:42

分两步计算:1、计算曲线要素

P=S2÷(24R);Q=S÷2-S3÷(240R2);T=(P+R)tan|0.5B|+Q;L=πRB÷180+S

ZH(C)=A-T;HY(D)=C+S;YH(H)=C+L-S;HZ(G)=C+L

式中:F----方位角;A----交点桩号;B-----路线偏角(左偏为负,右偏为正),R----半径;S---缓和曲线长

T----切线长;L-----曲线长

2、计算方位角:ZH=F;HY=F+S÷2R;HZ=F+B;YH=HZ-S÷2R;(当F<0时S÷2R为负,大于0时为正)

10楼:明学军11-2-8 20:20

8楼楼主:我用你的计算方法检查我已做过的隧道工,,YH点和HZ点不对啊,H Y点是对的,请你再核实一下,给我回复!谢啦,QQ:764207279

5800计算器程序下载

阅览室馆友我的图书馆 kaixin100 | | 分享

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 反算子程序SUB2 G-90→T (Y-V)cosT-(X-U)sin(T) →W Abs(W)→W:0→Z Lbl6:Prog "SUB1" T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z IF Abs(Z)<1E-6:Then0→Z:Prog "SUB1":(J-Y)÷sin(F)→Z:Else W+Z→W:Goto6:IfEnd 数据库子程序SUB0 Goto 1(线元可输入多条,分离式可在前多加一位,匝道一样。例:左幅为K129+500,右幅输线元参数里程为1129+500,其他不变,前面 1为任意数字,计算机便于区分) Lbl 1:IF S<线元终点里程:Then@@@→O(线元起点里程) :@@@ →U(线元起点X坐标):@@@→V(线元起点Y坐标):@@@→G(线元起点计算方位角):@@@→P(线元起点半径):@@@→R(线元止点半径):@@@→H(线元长度):@@@→Q(线元左、右偏标志,左偏-1,右偏1,直线为0):Return:IfEnd IF S<线元终点里程:Then@@@→O(线元起点里程) :@@@ →U(线元起点X坐标):@@@→V(线元起点Y坐标):@@@→G线元(起点计算方位角):@@@→P(线元起点半径):@@@→R(线元止点半径):@@@→H(线元长度):@@@→Q(线元左、右偏标志,左偏-1,右偏1,直线为0):Return:IfEnd 。。。。。。。。。。。。。。。。。。。。。。。。。。。 一程序功能 本程序由一个主程序(ZBJS)和3个子程——正算子程序(SUB1)、反 算子程序( SUB2) 、数据库子程序(SUB0)构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线 元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲 率半径、止点曲 率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标 进行正反算。另 外也可以将本程序中核心算法部分的两个子程序移植到其它相关的 程序中,用于对曲 线任意里程中边桩坐标进行正反算。本程序也可以在CASIO fx-4500P计算器及CASIO fx-4850P计算器上运行。 二、使用说明

FX5800P计算器坐标正反算程序Word文档

(以下程序是专业人士编写,本店铺不对程序负责,仅供您参考使用。) 卡西欧fx5800p计算器坐标正反算程序

一、程序功能 本程序由 6 个主程序、 5 个次子程序及 5 个参数子程序组成。主要用于公路测量中坐标正反算,设计任意点高程及横坡计算 , 桥涵放样,路基开挖口及填方坡脚线放样。程序坐标计算适应于任何线型 . 二、源程序 1. 主程序 1 :一般放样反算程序(① 正算坐标、放样点至置仪点方位角及距离;② 反算桩号及距中距离 ) 程序名 :1ZD-XY Lb1 0:Norm 2 F=1 : ( 正反算判别, F=1 正算, F=2 反算 , 也可以改 F 前加?,改 F 为变量 ) Z[1]=90 (与路线右边夹角) Prog " THB ": F=1=>Goto 1:F=2=>Goto 2 Lb1 1: F ix 3: "X = ": Locate 6,4, X◢ "Y=": Locate 6,4, Y◢ P rog "3JS”:Goto 0: Lb1 2:Fix 3: "KM=": Locate 6,4, Z◢ "D=": Locate 6,4, D◢ G oto 0 2.主程序2:高程序横坡程序 ( 设计任意点高程及横坡 ) 程序名: 2GC LbI 0:Norm 2 “KM”?Z:?D: Prog”H”:Fix 3:” H=”:Locate 6,4,H◢ “ I=”: Locate 6,4,I◢ Goto 0 3. 主程序 3 :极坐放样计算程序 ( 计算放样点至置仪点方位角及距离 ) 程序名: 3JS X : Y : 1268 .123→K( 置仪点 X 坐标 ) 2243 .545→L (置仪点 Y 坐标,都是手工输入 , 也可以建导线点数据库子程序 , 个人认为太麻烦) Y-L→E : X-K→F : Pol(F,E):IF J<0:Then J+360→J:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:( 不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢ 来直接显示) Fix 4:” FWJ=”: Locate 6,4,J◢( 不习惯小数点后四位为角度显示的,也可以用命令 J◢DMS◢ 来直接显示 ) Fix 3:” S=”:Locate 6,4,I◢ 4 .主程序 4 :涵洞放样程序(由涵中心桩号计算出各涵角坐标、在主程序 3 中输入置仪点坐标后计算放样点至置仪点方位角及距离 ) 程序名: 4JH-XY LbI 0:Norm 2 90→Z[1]( 涵洞中心桩与右边夹角,手工输入,也可以修改成前面加?后变为变量 )

CASIO5800ZXZFS直线正反算坐标计算程序

[原创] CASIO fx-5800P ZXZFS 直线正反算坐标计算程序 原理:采用正余弦定理求待求点垂距进行确定里程和偏距。 公式:tan-1((yb-ya)/(xb-xa)) 、√(xB-xA)2+(yB-yA)2、sinα×D、Q÷tan(α) 说明:该程序适用于计算器 CASIO fx-5800P,针对直线正反算设计,正算可算直线中边桩坐标及其斜交、反算可推算直线距线路中心的里程偏距。 1、DK(QD)? 输入起点里程 2、X(QD)? 输入起点坐标X 3、Y(QD)? 输入起点坐标Y 4、FWJ? 输入计算方位角 5、J? 输入1为正算、输入2为反算 6、JSDK? 输入计算里程 主程序名:ZXZFS Deg:Fix 4↙ "DK(QD)"?A:"X(QD)"?B:"Y(QD)"?C:"FWJ"?F↙ "1=>XY.2=>DK":"J"?W↙ If W=1:Then Goto 1:Else If W=2:Then Goto 2:IfEnd↙ Lb1 1↙ "JSDK"?E:"PJ"?G:"PA"?H↙ "X=":B+(E-A) ×cos(F)+G×cos(F+H)→X◢ "Y=":C+(E-A) ×sin(F)+G×sin(F+H)→Y◢ "ZJD(X)"?S:"ZJD(Y)"?T↙ "PJ=":Pol(X-S,Y-T):I→M◢ "FWJ=":If J<0:Then J+360→N:Else J→N:N▲DMS◢ Goto 1↙ Lb1 2↙ "X="?K:"Y="?L↙ Pol(K-B,L-C):I→D:If J<0:Then J+360→P:Else J→P:IfEnd↙ If F

坐标方位角计算

=(PI()*(1 - SIGN(B3-$B$1) / 2) - ATAN((A3-$A$1) /(B3-$B$1)))*180/PI() Excel 中求方位角公式:a1,b1放起始点坐标 a3,b3放终点坐标。 度分秒格式: =INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()) &"-"& INT( ((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180 /PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/ PI()))*60)&"-"&INT( (((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3- $b$1)))*180/PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3- $b$1)))*180/PI()))*60-INT(((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) / (B3-$b$1)))*180/PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) / (B3-$b$1)))*180/PI()))*60))*600)/10 其中:A1,B1中存放测站坐标,a3,b3放终点坐标。 上面的计算出来的是度分秒格式,也就是字符串格式,不能用来计算,只是用来看的哟! 下面这个简单一点: =INT((PI()*(1-SIGN(C6-C4)/2)-ATAN((B6-B4)/(C6-C4)))*180/PI())*10000+INT(((PI()*(1-S IGN(C6-C4)/2)-ATAN((B6-B4)/(C6-C4)))*180/PI()-INT((PI()*(1-SIGN(C6-C4)/2)-ATAN((B6-B4) /(C6-C4)))*180/PI()))*60)*100+(((PI()*(1-SIGN(C6-C4)/2)-ATAN((B6-B4)/(C6-C4)))*180/PI()-I NT((PI()*(1-SIGN(C6-C4)/2)-ATAN((B6-B4)/(C6-C4)))*180/PI()))-(INT(((PI()*(1-SIGN(C6-C4)/ 2)-ATAN((B6-B4)/(C6-C4)))*180/PI()-INT((PI()*(1-SIGN(C6-C4)/2)-ATAN((B6-B4)/(C6-C4)))*1 80/PI()))*60))/60)*3600 Excel 中求方位角公式:a1,b1放起始点坐标 a3,b3放终点坐标。 求距离公式: =Round(SQRT(POWER((A3-$A$1),2)+POWER((B3-$B$1),2)),3)

卡西欧5800计算器坐标正反算程序

M = (1.0/Re-1.0/Rs)/Ls; x=∫{cos(Ta + L/Rs + 0.5*M *L*L),0,L}; y=∫{sin(Ta +L/Rs + 0.5*M *L*L),0,L}; a(i)= Ta +L/Rs + 0.5*M *L*L Rs:缓和曲线起点半径 Re:缓和曲线止点半径 Rs,Re (NE坐标系下,右偏为正,左偏为负) Ta:缓和曲线起点的真北方位角 Ls:不完整缓和曲线长度。 此公式为缓和曲线在坐标系下任意位置的通用积分公式,能完全适应缓和曲线左偏、右偏、Rs >Re 、Rs NE”:“2.NE=>SZ”:?Q:?S:Prog“QXJS-SUB0”↙ Lbl 0:Q=1 => Goto1:Q=2 => Goto2:↙ Lbl 1:?Z:?G:Prog“QXJS-SUB1”:“N=”:N◢“E=”:E◢“F=”:F◢Goto4↙ Lbl 2: “N=”:?B: “E=”:?C:B→N: C→E:Prog“QXJS-SUB2”: “S=”:S◢: “Z=”:Z◢: Goto4↙ QXJS-SUB0 数据库子程序 Goto1↙同时保存多个曲线时的指针 Lbl 1 IF S<***(线元终点里程):Then***→A(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→L(线元起点至终点长度): Return:IfEnd↙ IF S<***:Then***→A:***→O:***→U:***→V:***→P:***→R: ***→L: Return:IfEnd↙………………………..为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加一个工程增加一个文件。 QXJS-SUB1 正算子程序 0.5(1÷R-1÷P)÷L→D:S-O→X↙ U+∫(cos(A+(X÷P+DX2)×180÷π,0,X)→N↙ V+∫(sin(A+(X÷P+DX2)×180÷π,0,X)→E↙ A+(X÷P+DX2)×180÷π→F↙ N+Zcos(F+G) →N:E+Zsin(F+G) →E QXJS-SUB2 反算子程序 Lbl 1:0→Z:1→Q:Prog“QXJS-SUB0”: Prog“QXJS-SUB1”↙

104373_坐标方位角计算公式

坐标方位角计算公式(通用) 用极坐标法放样必须计算出测站点(仪器点)到放样点得距离和方位角,才能进行放样。 原计算公式为: S12=sqr( (x2-x1)2+(y2-y1)2)= sqr(△x221+△y221) A12=arcsin((y2-y1)/S12) S12为测站点1至放样点2的距离; A12为测站点1至放样点2的坐标方位角。 x1,y1为测站点坐标; x2,y2为放样点坐标。 按公式A12=arcsin((y2-y1)/S12)计算出的方位角都要进行象限判断后加常数才是真正的方位角。 新计算公式为: A12=arccos(△x21/S12)*sgn(△y21)+360° 式中sgn()为取符号函数,改公式只需加上条件(A12>360°, A12= A12-360°)就可以计算出坐标方位角,不需要进行象限判断。 我的这个公式要更好一些,计算结果就是正确结果: SGN是正负号的函数。括号内的数字大于零SGN()就是+号,反之就是-号。

===================================函数开始=================================== 'jiaodu10(x,splitStr)函数将60进制度转换为10进制度格式.x为度数,splitStr为分隔符号,'如x为43%67%367,则splitStr为"%",参数要用双引号括起来,jiaodu10("x","%") Function jiaodu10(x,splitStr) If InStr(1,x,splitStr) Then Dim s s=Split(x,splitStr) jiaodu10=s(0)+s(1)/60+s(2)/3600 Else jiaodu10="错误" End If End Function '-------------------------------------------------------------------------------- 'jiaodu60(x,splitStr)函数将10进制度转换为60进制度格式,splitStr分隔表示 'x为数字,可以不用双引号括起来,参数splitStr要用双引号括起来iaodu10(12.31313,"-") Function jiaodu60(x,splitStr) Dim fen,miao Fen =Round((fen-Int(fen))*60,0) If miao >= 60 Then miao = miao-60 fen = fen+1 End If jiaodu60=Int(x) & splitStr & Int(fen) & splitStr & miao End Function '-------------------------------------------------------------------------------- 'juli(待算点纵坐标x,待算点横坐标y,测站点纵坐标m,测站点纵坐标n)用于计算距离。 Function juli(x,y,m,n) juli=Math.Spr((x-m)^2+(y-n)^2) End Function '-------------------------------------------------------------------------------- 'jiaodu(x,y,m,n)计算角度 Function jiaodu(x,y,m,n) Dim dx,dy,a,jdu10 dx=x-m dy=y-m a=Math.Abs(Math.Atn(dy/dx) * 180 / 3.14159265) jdu10=0 If (dx > 0) Then If (dy > 0) Then jdu10 = a Else jdu10 = 360-a End If Else If (dy > 0) Then jdu10 = 180-a

卡西欧fx5800计算器缓和曲线编程

1fx-5800P计算器编程 缓和曲线程序 14→DimZ :“ZHK”:?K:?R :? A:?L:? T:? F:“Y+1,Z-1”:?P:“JDX”:?Q:“JDY”:?W:180÷(πR)→Z:0.5L-L^3÷(240R2)→Z[8]:“LZ”:ZL÷2→B:A÷Z+L→Z[13]◢ “ZHK=”:K◢ “HYK=”:K+L→Z[1]◢ “YHK=”:K+ Z[13] -L→Z[2]◢ “HZK=”:K+ Z[13]→Z[3]◢ “ZHX=”:Q+Tcos(F+180)→U◢ “ZHY=”:W+Tsin(F+180)→V◢ “HZX=”:Q+ Tcos(F+PA)→Z[6]◢ “HZY=”:W+ Tsin (F+PA)→Z[7]◢ Lb1 0:“CDZH”:?M If M≤K:Then Goto 6:Else If M≤Z[1] :Then Goto 1:Else If M≤Z[2] :Then Goto 2:Else If M≥Z[3] :Then Goto 7:Else If M≥Z[2] :Then Goto 5:If End:If End:If End:If End:If End Lb1 1:M-K→G:√((G-G^(5)÷(40L2R2)+G^(9)÷(3456R^(4)L^(4)))2+(G^(3)÷(6RL)-G^(7)÷(336R^(3)L^(3)) +G^(11)÷(42240R^(5)L^(5)))2)→D F+PZG2÷(6L)→C:F+PBG2÷L2→H:Goto 3 Lb1 2:M-Z[1]→G:R(1-cos(B+ZG))+L2÷(24R)→Z[9]:√(Z[9]2+(Rsin(B+ZG)+Z[8])2)→D F+Ptg-1(Z[9]÷(Rsin(B+ZG)+Z[8]))→C:F+P(B+ZG)→H Lb1 3 “X=”:U+Dcos(C)→X◢ “Y=”:V+Dsin(C)→Y◢ Lb1 B:“ZBJS1,FY-1”:?J If J>0:Then Goto 4:Else If J〈0:Then Goto A:If End:If End Lb1 4:“ZB”:?S “ZBX”:X+Scos(H-90)◢ “ZBY”:Y+Ssin(H-90)◢ “YB”:?N “YBX”:X+Ncos(H+90)◢

FX5800道路路线测量程序

道路中边桩坐标放样正反算CASIO fx-5800P程序(全线贯通) 编辑 | 删除 | 权限设置 | 更多▼ 设置置顶推荐日志转到私密记事本 转载自王中伟转载于2009年08月12日 17:34 阅读(1) 评论(0) 分类:技术交流权限: 公开 一、前言 本程序是《CASIO fx-5800P计算与道路坐标放样计算》中道路坐标放样计算程序的升级改进版本。原道路坐标放样计算程序只基于道路的单个基本型曲线,有效计算范围仅包括平曲线部分和前后的两条直线段,使用时需要输入平曲线设计参数,无坐标反算桩号功能。 改进后的程序名称为:道路中边桩坐标放样正反算程序(全线贯通),增加了可实现全线贯通的数据库功能和坐标反算桩号功能,主要是: 1.使用道路平面数据库子程序,可将一段或若干段道路的交点法格式平面参数(可容易从直线、曲线及转角表中获得)以数据库子程序形式输入计算器,程序在计算时省却了输入原始数据的麻烦; 2.坐标正算方面,输入桩号即可进行道路的中、边桩坐标计算,若输入了测站坐标,还可同时计算全站仪极坐标放样数据(拨角和平距); 3.坐标反算方面,输入平面坐标,即可计算对应的桩号和距中距离(含左右信息); 4.对于存在断链的道路,可分段分别编写数据库子程序,然后在主程序中添加一个路段选择的功能即可实现(可参照立交匝道程序中匝道的选择)。 程序的特点: 1.可进行中桩坐标的正、反算,程序代码简洁,便于阅读和改写; 2.主程序通过调用数据库子程序,省却了使用时输入平面参数的繁琐; 3.使用数据库子程序,换项目只需改写数据库子程序,程序通用性强。 二、道路示例项目基本资料 基本资料同《CASIO fx-5800P计算与道路坐标放样计算》第6章HY高速公路第2合同段(合同段起止桩号:K4+800~K9+600)。这里摘取直线、曲线及转角表资料如下(若图片不清晰,请参见参见教材P161附录1): .

坐标方位角计算

二 计算坐标与坐标方位角的基本公式 控制测量的主要目的是通过测量和计算求出控制点的坐标,控制点的坐标是根据边长及方位角计算出来的。下面介绍计算坐标与坐标方位角的基本公式,这些公式是矿山测量工中最基本最常用的公式。 一、坐标正算和坐标反算公式 1.坐标正算 根据已知点的坐标和已知点到待定点的坐标方位角、边长计算待定点的坐标,这种计算在测量中称为坐标正算。 如图5—5所示,已知A 点的坐标为A x 、A y ,A 到B 的边长和坐标方位角分别为AB S 和AB α,则待定点B 的坐标为 AB A B AB A B y y y x x x ?+=?+= } (5—1) 式中 AB x ? 、AB y ?——坐标增量。 由图5—5可知 AB AB AB AB AB AB S y S x ααsin cos =?=? } (5—2) 式中 AB S ——水平边长; AB α——坐标方位角。 将式(5-2)代入式(5-1),则有 AB AB A B AB AB A B S y y S x x ααsin cos +=+= }

(5—3) 当A 点的坐标A x 、A y 和边长AB S 及其坐标方位角AB α为已知时,就可以用上述公式计算出待定点B 的坐标。式(5—2)是计算坐标增量的基本公式,式(5—3)是计算坐标的基本公式,称为坐标正算公式。 从图5—5可以看出AB x ?是边长AB S 在x 轴上的投影长度, AB y ?是边长AB S 在 y 轴上的投影长度,边长是有向线段,是在 实地由A 量到B 得到的正值。而公式中的坐标方位角可以从0°到360°变化,根据三角函数定义,坐标方位角的正弦值和余弦值就有正负两种 情况,其正负符号取决于坐标方位角所在的象限,如图5—6所示。从式(5—2)知,由于三角函数值的正负决定了坐标增量的正负,其符号归纳成表5—3。

公路测量卡西欧5800万能程序

一、前言本程序是《CASIO fx-5800P计算与道路坐标放样计算》中道路坐标放样计算程序的升级改进版本。原道路坐标放样计算程序只基于道路的单个基本型曲线,有效计算范围仅包括平曲线部分和前后的两条直线段,使用时需要输入平曲线设计参数,无坐标反算桩号功能。改进后的程序名称为:道路中边桩坐标放样正反算程序(全线贯通),增加了可实现全线贯通的数据库功能和坐标反算桩号功能,主要是: 1.使用道路平面数据库子程序,可将一段或若干段道路的交点法格式平面参数(可容易从直线、曲线及转角表中获得)以数据库子程序形式输入计算器,程序在计算时省却了输入原始数据的麻烦; 2.坐标正算方面,输入桩号即可进行道路的中、边桩坐标计算,若输入了测站坐标,还可同时计算全站仪极坐标放样数据(拨角和平距); 3.坐标反算方面,输入平面坐标,即可计算对应的桩号和距中距离(含左右信息); 4.对于存在断链的道路,可分段分别编写数据库子程序,然后在主程序中添加一个路段选择的功能即可实现(可参照立交匝道程序中匝道的选择)。程序的特点: 1.可进行中桩坐标的正、反算,程序代码简洁,便于阅读和改写; 2.主程序通过调用数据库子程序,省却了使用时输入平面参数的繁琐; 3.使用数据库子程序,换项目只需改写数据库子程序,程序通用性强。二、道路示例项目基本资料基本资料同《CASIO fx-5800P计算与道路坐标放样计算》第6章HY高速公路第2合同段(合同段起止桩号: K4+800~K9+600)。这里摘取直线、曲线及转角表资料如下.

.

. 三、程序代码 .

. .

. .

5800简单全线坐标计算程序

5800全线任意坐标计算程序 1. 正算主程序(ZHCX) (不运行) 8→DimZ 1÷P→Z[4 ]:(P-R)÷(2HPR)→D: 180÷π→E “Z=”?Z:”YJJ=”?A:Abs(S-O)→W 0.26→Z[1 ]: 0.74→B: 0.02→K: 0.82→Z[3 ]: 1-Z[3 ]→F:1-K→Z[2 ] U+W(Z[1 ]cos(G+QEKW(Z[4 ]+KWD))+Bcos(G+Z[3 ]QEW(Z[4 ]+ Z[3 ]WD))+Bcos(G+QEFW (Z[4 ]+FWD))+ Z[1 ]cos(G+ Z[2 ]QEW(Z[4 ]+ Z[2 ]WD)))→X: V+W(Z[1 ] sin (G+QEKW(Z[4 ]+KWD))+B sin(G+ Z[3 ]QEW(Z[4 ]+ Z[3 ]WD))+B sin(G+QEFW (Z[4 ]+FWD))+ Z[1 ] sin(G+ Z[2 ]QEW(Z[4 ]+ Z[2 ]WD)))→Y: G+QEW(Z[4 ]+WD)→F:X+Zcos(F+A)→X:Y+Zsin(F+A)→Y:If F≧360:Then F-360→F:IfEnd ”X=”:X→X◢ ”Y=”:Y→Y◢ If F﹤0:Then F+360→F:IfEnd ”QX FWJ=”:F▼DMS◢ “C=1=>XX: C=2=>XZ”: ”C=”?C: ”QHJU=”?L: If C=1:Then Goto 1:Else Goto 2: IfEnd 可以计算斜交斜做或斜交正做的桥涵坐标 Lbi 1 X+L cos(F)→X:Y+Lsin(F)→Y: Goto 3 Lbi 2 X+L cos(F+A-90)→X:Y+Lsin(F+A-90)→Y: Goto 3 Lbi 3 “QH-X=”: X →X◢ “QH-Y=”: Y →Y◢ Prog “FY” 2 . 参数子程序(直接运行) M(主线) 一条线路一个名称 “S=”?S If S≦线元终点:Then 线元起点X值→U: 线元起点Y值→V:线元起点切线方位角→G:线元起点桩号→O:线元长度→H:线元起点半径→P:线元终点半径→R:(左偏-1,或右偏 1)→Q:Goto 1:IfEnd … … If S≦线元终点:Then 线元起点X值→U: 线元起点Y值→V:线元起点切线方位角→G:线元起点桩号→O:线元长度→H:线元起点半径→P:线元终点半径→R:(左偏-1,或右偏 1)→Q:Goto 1:IfEnd Lbi 1 Prog “ZBJS” 3. 放样程序(FY)(不运行) “X0=”?M:“Y0=”?N Pol((X-M, Y-N)

Fx5800计算器公路测量程序设计

FX5800计算器测量程序集版 一、程序功能 主要功能:采用交点法方式计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。 新版本优化:1、优化程序语句、2、以复数形式输入变量及做数据库,取消原矩阵数据库;3、修改隧道超欠挖程序为通用形,不受圆心个数限制、4、新增测量资料表计算

二、源程序(绿色为程序名;蓝色为输入计算器内容)紫色为新版改动处(可以根据自己标段情况用相关主程序及子程序,再在0程序中汇总)0.汇总程序(1、坐标计算放样程序(1XY、A、AB、HX、JS、DX、QX、F、XY、X1);2、坐标反算程序(2ZD、A、B、AB、HX、QX、F、ZD、X1);3、高程计算查阅程序(3GC、H、I、QX、S1、I1);4、路基半幅标准宽度查阅程序(4GD、C、QX、G1);5、路基边坡及开挖口放样程序(5BP、 A、B、AB、HX、H、I、C、JS、DX、QX、F、ZD、X1、S1、I1、G1、W1); 6、路基标准距离放样(6FM、A、AB、HX、H、I、JS、DX、QX、F、XY、X1、S1、I1); 7、桥梁锥坡计算放样程序(7ZP、A、AB、HX、C、JS、DX、QX、F、XY、X1、G1); 8、极坐标计算程序(8JS、JS、DS); 9、隧道超欠挖计算程序(A、B、AB、HX、H、I、QX、S、SD、F、ZD、X1、S1、I1、SD1)运行后按1~9数子约半秒,则选择1至9的程序,返回时,在桩号输入-1,返回选择计算类型。输入-2,返回选择线路。 程序名:0(数子0) ClrMat:ClrVar:12→DimZ:Norm 2:Do:"(XY=1,ZD=2 ,GC=3,GD=4,BP=5,FM=6,ZP=7,JS=8,SD=9)===>QING AN 1-9":Getkey→Z[3]:While Z[3]=35:Prog"1XY":WhileEnd:While Z[3]=36:Prog"2ZD":WhileEnd: While Z[3]=37:Prog"3GC":WhileEnd: While Z[3]=21:Prog"4GD":WhileEnd: While Z[3]=22:Prog"5BP":WhileEnd: While Z[3]=23:Prog"6FM":WhileEnd: While Z[3]=31:Prog"7ZP":WhileEnd: While Z[3]=32:Prog"8JS":

卡西欧5800测量坐标计算程序

一.使用说明: 1.规定: (1)以道路中线的前进方向区分线路的左右偏转方向,线路左偏Q=-1,线路右偏Q=1,直线Q=0。 (2)当所求点位于线路中线时,Z=0;当位于左侧时,Z取负值;当位于右侧时,Z取正值。 (3)当线元为直线时,其起终点的曲率半径为无穷大,取10的45次方代替。 (4)当线元为圆曲线时,起终点曲率半径为圆曲线半径。 (5)当线元为缓和曲线时,起终点曲率半径与直线相接取10的45次方代替,与圆曲线相接取圆曲线半径。 2.输入与显示说明: (1)输入部分: N?:选择计算方式,输入1表示由里程边距计算坐标,输入2表示由 坐标计算里程边距。 X0?线元起点X坐标。 Y0?线元起点Y坐标。 S0?线元起点里程。 F0?线元起点切线方位角。 LS?线元长度。 R0?线元起点曲率半径。 RN?线元终点曲率半径。 Q?线元左右偏标志(左偏=-1,右偏=1,直线=0)

S?正算时所求点里程。 Z?正算时所求点距中线边距。位于线路左侧输入负值,在右侧输入正 值。 AR?斜交角度。(为线路右角,在0-180度之间) X?反算时所求点X坐标。 Y?反算时所求点Y坐标。 (2)显示部分: XS=计算结果,所求点X坐标。 YS=计算结果,所求点Y坐标。 FS=计算结果,所求点切线方位角。 S=计算结果,反算时所求点里程 Z=计算结果,反算时所求点边距。 二.程序清单1(用于任意曲线元的坐标计算) 1.主程序(TYQXJS) ″1.SZ=>XY″:″2.XY=>SZ″:?N:″X0″?U:″Y0″?V:″S0″?O: ″F0″?G:″LS″?H:″ R0″?P:″RN″?R:?Q:1÷P→C:(P-R) ÷(2HPR) →D:180÷π→E:If N=1: THEN Goto 1:Else Goto 2:IfEnd:Lbl 1:?S:”D(Z-,Y+)=”?Z:90→T:”O=”?T:Abs(S-O) →W:Prog ″SUB1″:″XS″:X◢″YS″:Y◢″FS″:F◢ Goto 1:Lbl 2:?X:?Y:I→X:J→Y:Prog ″SUB2″:″S″:O+W→S:◢″Z″:Z◢Goto 2 2.正算子程序(SUB1) 0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→

CASIO 5800计算器测量计算程序

CASIO 5800计算器测量计算程序 上上月做这个东西的时候没仔细检查,有好几处输错了的地方,今天把它修改过来。 简要介绍: 1. 新版程序把线元法和交点法已经集成在一个模块中了,用户只需修改JD 程序和ZA程序中的数据部分即可,其余不需作任何的改动。 2. 因为每条路高程计算不尽相同,且比较复杂,现在可利用PC机EXCEL计算好打印成表格带到工地上使用,所以本版程序未对线路高程序进行专门的编程计算,而是利用统计计算模式中来输入桩号(第一列X)及左、右高程(第二、三列Y,Freq),这种输入数据的方式最为直观,易发现错误,也易修改,输入完毕后运行S程序对数据按桩号进行排序,在程序中通过调用GG程序来进行内插计算,SG=-1得左标高,SG=1得右标高(若SG输入0,则可进行一般的线性内插计算)。 3. 在JD程序和XY程序中,先将一个计算单元的数据置入矩阵F中(1行8列或1行9列),这样程序可读性极好。 4.相比原CASIO4850程序操作习惯,作了一点小小的改动,测站坐标存在Z[10],N中,X坐标原存在M中容易被误操作修改,而设计标高存在M中,这样易于修改,因为CASIO5800没有IN,OUT功能,很不方便。 4. 程序利用Z[2]变量值来判断是采用交点法还是线元法模型计算,Z[2]=0为线元法,否则为交点法。 一、PQX程序:计算中边桩坐标及近似的桩号反算,在运行模式直接调用。 ①Z[10]→S:”XO”?S:S→Z[10]:”YO”?N:Prog “AU” ②Lbl 2:?L:Prog “Z”:Prog “E”:1n→O:90→S ③Lbl 4:”JJ”?S:”YC”?O:SO=0 =>Goto 2…原来lbl 后没有标号4的。 ④O=-1 =>Goto 6 ⑤“X,Y”:R+OCos(Z+S)→X▲U+OSin(Z+S)→Y▲Prog “D”:Goto 4 ⑥Lbl 6:Z[7]→X:Z[8]→Y:”XF”?X:”YF”?Y:XY=0 =>Goto 4 ⑦X→Z[7]:Y→Z[8]:Pol(X-R,Y-U+1p):Z+S-J→J:”YC,DL,L”:ICos(J)→O▲ISin( J)→I▲L+I▲Goto 6 二、P程序:在程序中提供一个自由运算的模式。 ①Lbl 1:”TMP”?I:If I≠0:Then “RST”:I▲Goto 1:IfEnd 二、LYC程序:进行桩号反算及边坡放样,在运行模式直接调用。 ①Prog “AU” ②Lbl 1:Z[7]→X: Z[8]→Y: Z[6]→S: ”XF”?X :X→Z[7]:”YF”?Y:Y→Z[8]: ”ZF”?S: S→Z[6] ③Lbl 2:Prog “Z”:Y=U =>Y+1p→Y ④Pol(X-R,Y-U):J-Z→J:Isin(J)→O:Icos(J)→I ⑤If Abs(I)≤0.1:Then Prog “E”:”L,YC”:L+I→L▲O▲Goto 3:IfEnd ⑥If Z[9]≠0:Then Pol(Z[9]-SO,I):πJZ[9]÷180→I:IfEnd ⑦”DL”:I▲L+I→L:Goto 2 ⑧Lbl 3: Z[6]→S:If S=0:Then Goto 1:IfEnd ⑧M→Z ⑨Lbl 4:”SG”?Z:Z→M:If Abs(Z)=1: Then Prog “GG”:Y→Z:If X=1:Then

5800计算器全线坐标计算放样程序(修改第三版)

5800计算器全线坐标计算放样程序(修改第三版) 5800计算器全线坐标计算放样程序(修改版) “XLZBJSCX” ◢ LB1 0 ↙ CLS : FIX 4 : 30→DIM Z ↙ “XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y)0l(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视 方位角) LB1 1 ↙ “K=”?K ◢(计算里程) IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→0 (注:左偏曲线输入-1→0,右偏曲线输入1→0): 偏角→A:半径→R : 第一缓和曲线→Z[6] : 第二缓和曲线 →Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : G0T0 2 : IFEND↙ …………(曲线段分段输入) 补充直线段输入如下 IF K<本段直线终点里程 AND K≥本段直线起点里程:THEN 1→0:本段直线终点里程→Z[2]:终点X→Z[16]:终点Y→Z[11]:方位角→E:G0T0 4:IFEND LB1 2 ↙(曲线要素计算) Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1) Z[7]/2- Z[6]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2) Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1) Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2) π*A*R/180+0.5*( Z[3]+ Z[2])→W ↙(曲线总长) 90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角) 90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略) Z[8]+(R+Z[10])TAN(A/2)-(Z[11]-Z[11] )/SIN A→Z[11]↙ (切线T1) Z[9]+(R+Z[12])TAN(A/2)+(Z[10]-Z[12] )/SIN A→Z[12]↙ (切线T2) B+ Z[12]*C0S (E+180)→ Z[13] ↙(ZH点X) C+ Z[12]*SIN(E+180)→ Z[15] ↙(ZH点Y) Z[1]-S→Z[3] ↙ (ZH点里程) Z[3]+ Z[6]→Z[4] ↙ (HY点里程) Z[1]- Z[7]→Z[5] ↙ (YH点里程) G0T0 3 ↙ LB1 3 ↙(判断里程点与曲线关系) IF K≤Z[3] AND K> Z[2] : THEN G0T0 4 : IFEND ↙ IF K≤Z[4] AND K> Z[3] : THEN G0T0 5 : IFEND ↙ IF K≤Z[5] AND K> Z[4] : THEN G0T0 6 : IFEND ↙

5800卡西欧计算器程序大全

FX5800计算器公路测量常用程序集 一、程序功能 本程序由6个主程序、5个次子程序及5个参数子程序组成。主要用于公路测量中坐标正反算,设计任意点高程及横坡计算,桥涵放样,路基开挖口及填方坡脚线放样。程序坐标计算适应于任何线型. 二、源程序 1.主程序1:一般放样反算程序(①正算坐标、放样点至置仪点方位角及距离;②反算桩号及距中距离) 程序名:1ZD-XY Lb1 0:Norm 2 F=1:(正反算判别,F=1正算,F=2反算,也可以改F前加?,改F为变量) Z[1]=90(与路线右边夹角) Prog"THB":F=1=>Goto 1:F=2=>Goto 2 Lb1 1:Fix 3:"X=":Locate 6,4,X◢ "Y=":Locate 6,4,Y◢ Prog"3JS”:Goto 0: Lb1 2:Fix 3:"KM=":Locate 6,4,Z◢ "D=":Locate 6,4,D◢ Goto 0 2.主程序2:高程序横坡程序(设计任意点高程及横坡) 程序名:2GC LbI 0:Norm 2 “KM”?Z:?D: Prog”H”:Fix 3:”H=”:Locate 6,4,H◢ “I=”: Locate 6,4,I◢ Goto 0 3.主程序3:极坐放样计算程序(计算放样点至置仪点方位角及距离) 程序名:3JS X:Y: 1268.123→K(置仪点X坐标) 2243.545→L(置仪点Y坐标,都是手工输入,也可以建导线点数据库子程序,个人认为太麻烦) Y-L→E:X-K→F:Pol(F,E):IF J<0:Then J+360→J:Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J)) →J:(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示) Fix 4:” FWJ=”: Locate 6,4,J◢(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示) Fix 3:”S=”:Locate 6,4,I◢ 4.主程序4:涵洞放样程序(由涵中心桩号计算出各涵角坐标、在主程序3中输入置仪点坐标后计算放样点至置仪点方位角及距离) 程序名:4JH-XY LbI 0:Norm 2 90→Z[1](涵洞中心桩与右边夹角,手工输入,也可以修改成前面加?后变为变量) 1→F:Prog”THB”:?L: Z[2]-Z[1] →E:X+Lcos(E) →X:Y+Lsin(E) →Y:Fix 3: "X=":Locate 6,4,X◢

计算坐标与坐标方位角的基本公式

二 计算坐标与坐标方位角的基本公式 控制测量的主要目的是通过测量和计算求出控制点的坐标,控制点的坐标是根据边长及方位角计算出来的。下面介绍计算坐标与坐标方位角的基本公式,这些公式是矿山测量工中最基本最常用的公式。 一、坐标正算和坐标反算公式 1.坐标正算 根据已知点的坐标和已知点到待定点的坐标方位角、边长计算待定点的坐标,这种计算在测量中称为坐标正算。 如图5—5所示,已知A 点的坐标为A x 、A y ,A 到B 的边长和坐标方位角分别为AB S 和 AB α,则待定点B 的坐标为 AB A B AB A B y y y x x x ?+=?+= } (5—1) 式中 AB x ? 、AB y ?——坐标增量。 由图5—5可知 AB AB AB AB AB AB S y S x ααsin cos =?=? } (5—2) 式中 AB S ——水平边长; AB α——坐标方位角。 将式(5-2)代入式(5-1),则有 AB AB A B AB AB A B S y y S x x ααsin cos +=+= } (5—3) 当A 点的坐标A x 、A y 和边长AB S 及其坐标方位角AB α为已知时,就可以用上述公式计算出待定点B 的坐标。式(5—2)是计算坐标增量的基本公式,式(5—3)是计算坐标的基本公式,称为坐标正算公式。 从图5—5可以看出AB x ?是边长AB S 在x 轴上的投影长度,AB y ?是边长AB S 在y 轴上的投影长度,边长是有向线段,是在实地由A 量到B 得到的正值。而公式中的坐标方位角可以从0°到360°变化,根据三角函数定义,坐标方位角的正弦值和余弦值就有正负两种 情况,其正负符号取决于坐标方位角所在的象限,如图5—6所示。从式(5—2)知,由于

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