大地坐标转换成施工坐标公式.docx
《大地坐标转换成施工坐标公式.docx》由会员分享,可在线阅读,更多相关《大地坐标转换成施工坐标公式.docx(18页珍藏版)》请在冰豆网上搜索。
![大地坐标转换成施工坐标公式.docx](https://file1.bdocx.com/fileroot1/2023-1/30/d27ed344-9402-4c2f-8f8b-500697de7e59/d27ed344-9402-4c2f-8f8b-500697de7e591.gif)
大地坐标转换成施工坐标公式
大地(高斯平面)坐标系工程坐标系转换
大地坐标系--->工程坐标系?
========================
待转换点为P,大地坐标为:
Xp、Yp?
工程坐标系原点o:
?
大地坐标:
Xo、Yo?
工程坐标:
xo、yo
工程坐标系x轴之大地方位角:
a
dX=Xp-Xo
dY=Yp-Yo
P点转换后之工程坐标为xp、yp:
xp=dX*COS(a)+dY*SIN(a)+xo
yp=-dX*SIN(a)+dY*COS(a)+yo
工程坐标系--->大地坐标系
========================
待转换点为P,工程坐标为:
xp、yp
工程坐标系原点o:
大地坐标:
Xo、Yo
工程坐标:
xo、yo
工程坐标系x轴之大地方位角:
a
dx=xp-xo
dy=yp-yo
P点转换后之工程坐标为xp、yp:
xp=Xo+dx*COS(a)-dy*SIN(a)
yp=Yo+dx*SIN(a)+dy*COS(a)
坐标方位角计算程序
置镜点坐标:
ZX ZY
后视点坐标:
HX HY
方 位 角:
W
两点间距离:
S
Lb1 0←
{A, B, C, D}←
A〝ZX=〞:
B〝ZY=〞:
C〝HX=〞:
D〝HY=〞:
W=tg1((D-B)÷(C-A)):
(D-B)>0=>(C-A)>0=>W=W:
∟∟(D-B)>0=>(C-A)<0=>W=W+180:
∟∟(D-B)<0=>(C-A)<0=>W=W+180:
∟∟(D-B)<0=>(C-A)>0=>W=360+W∟∟W=W◢
S=√((D-B)2+(C-A)2) ◢
Goto 0←
CASIO fx-4500p坐标计算程序
根据坐标计算方位角
W=W+360△W:
“ALF(1~2)=”⇒L1 A“X1=”:
B“Y1=”:
Pol(C“X2”-A,D“Y2”-B:
“S=”▲W<0
直线段坐标计算
L1 X“X(0)”:
Y“Y(0)”:
S“S(0)”:
A“ALF”
L2 Lb1 2
L3 {L}:
L“LX”
L4 M“X(Z)”=X+(L-S)cosA▲
L5 N“Y(Z)”=Y+(L-S)sinA▲
L6 {B}:
B“B(L)”:
Q“Q”
L7 O“X(L)”=M+Bcos(A+Q+180)▲
L8 P“Y(L)”=N+Bsin(A+Q+180)▲
L9 {C}:
C“B(R)”
L10 U“X(R)”=M+Ccos(A+Q)▲
L11 V“Y(R)”=N+Csin(A+Q)▲
L12 Goto 2
园曲线段坐标计算
L1 S“S(0)-Km”:
X“X(0)”:
Y“Y(0)”:
A“ALF”:
R“R”:
K“K(L=1,R=2)”
L2 Lb1 2
L3 {L}:
L“L(X)”
L4 V=180/π×(L-S)/R:
W=V/2
L5 C=A+(-1)K×W:
D=2RsinW:
F=A+(-1)K×V
L6 M“X(Z)”=X+DcosC▲
L7 N“Y(Z)”=Y+DsinC▲
L8 {E}:
E“B(L)”:
Q“Q”
L9 O“X(L)”=M+Ecos(F+Q+180)▲
L10 P“Y(L)”=N+Esin(F+Q+180)▲
L11 {G}:
G“B(R)”
L12 T“X(R)”=M+Gcos(F+Q)▲
L13 U“Y(R)”=N+Gsin(F+Q)▲
L14 Goto 2
正向缓和曲线段坐标计算
L1 S“ZH-Km”:
X“X(ZH)”:
Y“Y(ZH)”:
A“ALF”:
R“R”:
H“LS”:
K“K(L=1,R=2)”
L2 Lb1 2
L3 {L}:
L“L(X)”
L4 D=30(L-S)2/π/R/H:
C=L-S-(L-S)5/90/(R×H)2:
B=A+D(-1)K:
E=A+3D(-1)K
L5 U“X(Z)”=X+CcosB▲
L6 V“Y(Z)”=Y+CsinB▲
L7 {G}:
G“B(L)”:
Q“Q”
L8 F“X(L)”=U+Gcos(E+Q+180)▲
L9 I“Y(L)”=V+Gsin(E+Q+180)▲
L10 {J}:
J“B(R)”
L11 M“X(R)”=U+Jcos(E+Q)▲
L12 N“Y(R)”=V+jsin(E+Q)▲
L13 Goto 2
卵形曲线坐标计算
X=1,D=2)”⇒L1 S“Km-YH”:
E“X(YH)”:
F“Y(YH)”:
G“ALF”:
B“R1”:
D“A”:
K“K(L=1,R=2)”:
Q“R1-R2
L2 Lb1 2
L3 {Z}:
Z“L(X)”
L4 J“L1”=D2/B:
R“RP”=D2B/(D2+(-1)Q(Z-S)B):
L“LP”=D2/R
L5 M=(L-J)-(L5-J5)/40/D4+(L9-J9)/3456/D8
L6 N=(L3-J3)/6/D2-(L7-J7)/336/D6+(L11-J11)/42240/D10
L7 T=G-(-1)Q(-1)K×J2×90/D2/π
L8 X“X(Z)”=E+(-1)QMcosT-(-1)KNsinT▲
L9 Y“Y(Z)”=F+(-1)QMsinT+(-1)KNcosT▲
L10 A“ALF(P)”=G+(-1)K(Z-S)×90×(1/B+1/R)/π
L11 {H}:
H“B(L)”:
U“Q”
L12 W“X(L)”=X+Hcos(A+U+180)▲
L13 V“Y(L)”=Y+Hsin(A+U+180)▲
L14 {C}:
C“B(R)”
L15 I“X(R)”=X+Ccos(A+U)▲
L16 P“Y(R)”=Y+Csin(A+U)▲
L17 Goto 2
公路逐桩坐标计算4800程序
公路逐桩坐标计算程序
(可以计算对称、不对称缓和曲线)
Lb1 0
Z=?
V=?
W=V+2:
Fixm
{K}
Lb1 1
K>Z[W+5Z+4]=>W=W+1:
Goto 1⊿ (判断桩号在哪个交点范围,就是该交点曲线起点至下一交点曲线起点)
S=K-Z[W+5Z+3] (计算该桩号与曲线起点的距离)
R=Z[W+2Z+2]:
L=Z[W+3Z+2]:
E=Z[W+4Z+2] (读取该交点曲线要素R、Ls1 、Ls2)
Pol(Z[W]-Z[W-1],Z[W+Z+2]-Z[W+Z+1]) (计算该交点与下一交点直线方位角)
J<0=>J=J+360⊿
A=J
Pol(Z[W-1]-Z[W-2],Z[W+Z+1]-Z[W+Z]) (计算该交点与上一交点直线方位角)
J<0=>J=J+360⊿
C=A-J:
A=J (计算偏角)
W=V+2=>Goto2⊿ (如果桩号在起点与第一交点曲线起点之间,则转 Lb1 2 )
I=Abs(tan(c÷2))
M=L÷2-L^3÷240R^2:
N=E÷2-E^3÷240R^2
P=L^2÷6R-L^4÷336R^3-R(1-cos(90L÷πR))
Q=E^2÷6R-E^4÷336R^3-R(1-cos(90E÷πR))
D=(P-Q)I÷2 :
F=(P+Q+2R)I÷2
M=F+M-D:
Q=F+N+D
N=πRAbsC÷180+(L+E)÷2
X=Z[W-1]-McosA
Y=Z[W+Z+1]-MsinA
M=Z[W-1]+Qcos(A+C)
V=Z[W+Z+1]+Qsin(A+C)
Q=AbsC÷C
S≤L=>P=0:
Goto3⊿ (如果桩号在第一缓和曲线内,则转 Lb1 3)
S≤N-E=>S=S-L:
Goto4⊿(如果桩号在圆曲线内,则转 Lb1 4)
S≤N=>S=N-S
Q=-Q:
A=A+C-180:
X=M:
Y=V:
L=E:
P=180:
Goto3 ⊿ (如果桩号在第二缓和曲线内,则转 Lb1 3)
P=A+C:
S=S-N:
D=M+ScosP:
F=V+SsinP
Goto6 (如果桩号在直线内,则转 Lb1 6)
Lb1 2
P=A+C
D=Z[W-1]+ScosP
F=Z[W+Z+1]+SsinP:
Goto6
Lb1 3
I=S-S^5÷40R^2÷L^2+S^9÷3456R^4÷L^4
J=Q(S^3÷6RL-S^7÷336R^3÷L^3)
P=P+A+90QS^2÷πRL:
Goto5
Lb1 4
M=90(2S+L)÷πR
I=RsinM+L÷2-L^3÷240R^2
J=Q(L^2÷24R+R(1-cosM))
P=A+QM
Lb1 5
D=X+IcosA-jsinA:
F=Y+JcosA+IsinA
Lb1 6
D″X=″◢ (结果显示X坐标)
F″Y=″◢ (结果显示Y坐标)
P″AT=″◢ (结果显示该桩号方位角)
{BO}:
B″S″O″⊿″ (输入边桩距离,交角)
P=P+O
L″XB″=D+BcosP◢ (结果显示边桩X坐标)
M″YB″=F+BsinP◢ (结果显示边桩Y坐标)
以上是坐标计算程序,括号内是程序计算的大致原理及说明,中间部分为直线、圆曲线、缓和曲线计算的各种公式,大家也知道,书上也有。
该程序是最基本的,如再加几条语句就可以处理断链。
该程序还需变量输入,把整条线路曲线要素一次输入到4800中,就可以计算线路任意中、边桩坐标。
曲线任意里程中边桩坐标正反算(CASIOfx-4800P计算器)程序
曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
一、程序功能
本程序由一个主程序(TYQXjs)和两个子程——正算子程序(SUB1)、反算子程序(
SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线
元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲
率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
另
外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲
线任意里程中边桩坐标进行正反算。
本程序也可以在CASIO fx-4500P计算器及 CASIO fx-4850P计算器上运行。
二、源程序
1.主程序(TYQXjs)
"1.SZ => XY":
"2.XY => SZ":
N:
U"X0":
V"Y0":
O"S0":
G"F0":
H"LS":
P"R0":
R"
RN":
Q:
C=1÷P:
D=(P-R)÷(2HPR):
E=180÷π:
N=1=>Goto 1:
≠>Goto 2Δ←┘
Lbl 1:
{SZ}:
SZ:
W=Abs(S-O):
Prog "SUB1":
X"XS"=X◢
Y"YS"=Y◢
Goto 1←┘
Lbl 2:
{XY}:
XY:
I=X:
J=Y:
Prog "SUB2":
S"S"=O+W◢
Z"Z"=Z◢
Goto 2
2. 正算子程序(SUB1)
M=1-K:
X=U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW
(C+FWD))+Acos(G+QEMW(C+MWD))):
Y=V+W(Asin(G+QEKW(C+KWD))+Bsin(G+
QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))):
F=G+QEW(C+
WD)+90:
X=X+ZcosF:
Y=Y+ZsinF
3. 反算子程序(SUB2)
T=G-90:
W=Abs((Y-V)cosT-(X-U)sinT):
Z=0:
Lbl 0:
Prog "SUB1":
L=T+QEW(C+
WD):
Z=(J-Y)cosL-(I-X)sinL:
AbsZ<1E-6=>Goto1:
≠>W=W+Z:
Goto 0Δ←┘
Lbl 1:
Z=0:
Prog "SUB1":
Z=(J-Y)÷sinF
三、使用说明
1、规定
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,
Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
(2) 当所求点位于中线时,Z=0;当位于中线左铡时,Z取负值;当位于中线中线右
侧时,Z取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆
弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45
次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半
径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的
值;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半径等
于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
2、输入与显示说明
输入部分:
1. SZ => XY
2. XY = > SZ
N ?
选择计算方式,输入1表示进行由里程、边距计算坐标 ;输入2表示由坐标反算
里程和边距。
X0 ?
线元起点的X坐标
Y0 ?
线元起点的Y坐标
S0 ?
线元起点里程
F0 ?
线元起点切线方位角
LS ?
线元长度
R0 ?
线元起点曲率半径
RN ?
线元止点曲率半径
Q ?
线 元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)
S ?
正算时所求点的里程
Z ?
正算时所求点距中线的边距(左侧取负,值右侧取正值,在中线上取零)
X ?
反算时所求点的X坐标
Y ?
反算时所求点的Y坐标
显示部分:
XS=××× 正算时,计算得出的所求点的X坐标
YS=××× 正算时,计算得出的所求点的Y坐标
S=××× 反算时,计算得出的所求点的里程
Z=××× 反算时,计算得出的所求点的边距
四、算例
某匝道的由五段线元(直线+完整缓和曲线+圆曲线+非完整缓和曲线+直线)组
成,各段线元的要素(起点里程S0、起点坐标X0 Y0、起点切线方位角F0、线元长度
LS、起点曲率半径R0、止点曲率半径RN、线 元左右偏标志Q)如下:
S0 X0 Y0 F0 LS R0 RN Q
500.000 19942.837 28343.561 125 16 31.00 269.256 1E45 1E45 0
769.256 19787.340 28563.378 125 16 31.00 37.492 1E45 221.75 -1
806.748 19766.566 28594.574 120 25 54.07 112.779 221.75 221.75 -1
919.527 19736.072 28701.893 91 17 30.63 80.285 221.75 9579.228 -1
999.812 19744.038 28781.659 80 40 50.00 100.000 1E45 1E45 0
1、正算
(注意:
略去计算方式及线元要素输入,请自行根据所求点所在的线元输入线元
要素)
S=700 Z=-5 计算得 XS=19831.41785 YS=28509.72590
S=700 Z=0 计算得 XS=19827.33592 YS=28506.83837
S=700 Z= 5 计算得 XS=19823.25398 YS=28503.95084
S=780 Z=-5 计算得 XS=19785.25749 YS=28575.02270
S=780 Z=0 计算得 XS=19781.15561 YS=28572.16358
S=780 Z= 5 计算得 XS=19777.05373 YS=28569.30446
S=870 Z=-5 计算得 XS=19747.53609 YS=28654.13091
S=870 Z=0 计算得 XS=19742.68648 YS=28652.91379
S=870 Z= 5 计算得 XS=19737.83688 YS=28651.69668
S=940 Z=-5.123 计算得 XS=19741. 59118 YS=28722.05802
S=940 Z=0 计算得 XS=19736.47687 YS=28722.35642
S=940 Z= 3.009 计算得 XS=19733.47298 YS=28722.53168
2、 反算
X=19831.418 Y=28509.726 计算得 S=699.9999974 Z= -5 .00018164
X=19827.336 Y=28506.838 计算得 S=699.9996493 Z= 0.000145136
X=19823.25398 Y=28503.95084 计算得 S=699.9999985 Z= 5.000003137
X=19785.25749 Y=28575.02270 计算得 S=780.0000035 Z= -5 .000001663
X=19781.15561 Y=28572.16358 计算得 S=780.0000025 Z=- 0.000002979
X=19742.686 Y=28652.914 计算得 S=870.0003175 Z=- 0.00041814
X=19736.4769 Y=28722.3564 计算得 S=939.9999862 Z=- 0.000027710
X=19733.4730 Y=28722.5317 计算得 S=940.0000238 Z= 3.00898694
[point=10][/point]
自己写的fx-4800小程序
一、ZBFS(坐标反算)
二、NEXY ,
三、Fixm 。
四、F ,
五、Pol(N-X,E-Y) 。
六、J≥0→J=J 。
七、≠→J≤0→J=J+360 。
八、
九、说明:
“ ,”表示回车符;“ 。
”表示终止符。
一十、
一十一、二、 ZBFS-2(坐标反算)
一十二、NEXY,
一十三、Pol(N-X,E-Y)。
一十四、J≥0→J=J 。
一十五、≠→J≤0→J=J+360 。
一十六、S=I。
一十七、R=J。
一十八、
一十九、说明:
“ ,”表示回车符;“ 。
”表示终止符。
二十、
二十一、三、ZBZS(坐标正算)
二十二、
二十三、SRXY,
二十四、V=X+Rec(S,R),
二十五、W=Y+J,
二十六、N=V。
二十七、E=W
用全站仪测设公路中桩和边桩程序
程序说明:
本程序用于用全站仪测设中桩和边桩,采用坐标变换的方法编制而成,在使用fx-4500计算器时,可直接输入以下程序便可使用;而在使用fx-4800计算器时,见fx-4800程序清单。
注意:
因程序的0(零)和O易混淆,所以字母O用较大的全角符号,零仍用标准字。
程序输入时应连续输入,无空格。
而且输入时文件名需和给出的一样,否则会出现调用文件错误。
变量说明:
<程序运算符定义>
X 输入摆站点的x坐标 C 输入第一个曲线角桩x坐标 I 输入中间曲线角桩的x坐标
Y 输入摆站点的y坐标 D 输入第一个曲线角桩y坐标 J 输入中间曲线角桩的y坐标
E 最后一个曲线角桩x坐标 R 中间曲线半径 L 中间曲线缓和曲线长
F 最后一个曲线角桩y坐标 K 第一个K为中间角桩桩号 S 中间角桩曲线总长,检验用
K 第二个K为要测设的桩号 B 测中桩时输入0,测边桩时输入宽度(左输负值,右输正值)
程 序 清 单
注 释
文件:
F1 文件名:
1
L1
L2
L3
Defm 8
XYCDIJEFRLK:
Fixm:
Z[2]=0:
Prog B
Z[5]=0.5L-L Xy 3/240R2:
Z[3]=Z[5]+(R+L2/24R)Abs tan T┛2:
Z=K-Ans:
S=R Abs Tπ/180+L:
S◢H=Z+Ans:
G=RL:
Prog 2
文件:
F2 文件名:
2
L1
Lbl 0:
Fixm:
{K}
L2
Lbl 6:
{B}:
Norm:
K(-1) Xy Z[2]>(H-L)(-1) Xy Z[2]=>Goto 4⊿Frac Z[2]┛2=0=>Z[6]=Z:
≠>Z[6]=H⊿A=90T/Abs T
L3
B<0=>N=0:
≠>N=1⊿B=Abs B
L4
0=Abs(K-Z[6]:
K(-1) Xy Z[2]>Z[6](-1) Xy Z[2]=>Goto 2⊿Q=Z[3]+0:
Z[4]=B
L5
B≠0=>Prog C⊿Prog D:
P=0
L6
Prog E:
Goto 0
L7
Lbl 2:
0≥L=>Goto 3⊿
L8
Q=Z[3]-0+0 Xy 5/40G2:
Z[4]=0 Xy 3/6G-0 Xy 7/336G Xy