...卡西欧5800的坐标正反算测量程序,能不能发给小弟,谢谢,我邮箱...
发布网友
发布时间:2024-10-09 12:34
我来回答
共1个回答
热心网友
时间:2024-11-13 22:32
5800坐标正反算
一、程序功能
本程序由 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]( 涵洞中心桩与右边夹角,手工输入,也可以修改成前面加?后变为变量 )
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 ◢
" Y=": Locate 6,4, Y ◢
P rog " 3JS”:Goto 0:
5 .主程序 5: 路基开挖边线及填方坡脚线放样程序(输入大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)
程序名: 5FBX
LbI 0:Norm 2: 18→DimZ:2→F:90→Z[1]:Prog “THB”:Z:D:”M0”?M:M→Z[4]:D→Z[3]:Prog”6GD”:L→Z[6]:If D<0:Then 0.75-L→D:Goto H:Else L-0.75→D:Goto H:IfEnd
LbI H:Prog”H”:H-0.03-Z[4] →Z[5]:Z[6] →L:If Z[5]<0:Then –z[5] →G:Goto W:Else Z[5] →G:Goto T:
LbI W:Prog “W0”:Z[10]+Z[11] →A: If G>A:Then Goto 1:Else If G>Z[10]:Then Goto 2:Else Goto 3:IfEnd:
LbI 1:L+Z[12]+Z[13]+Z[14]+(G-A)×Z[9]+Z[11]×Z[8]+Z[10]×Z[7]:Goto Z:
LbI 2:L+Z[12]+Z[13]+(G-Z[10])×Z[8]+Z[10]×Z[7]:Goto Z:
LbI 3:L+Z[12]+G×Z[7]:Goto z:
LbI T:L+0.5→N:If G>Z[17]:Then (N+Z[18]+(G-Z[17])×Z[16]+Z[17]×Z[15])→S:Goto Z:Else (N+G×Z[15])→S:Goto z:
LbI Z:Z[3]→D:Fix 2:Abs(D)-S→T:” L0=”:L Locate 6,4,T◢
"KM=": Locate 6,4, Z ◢
"D=": Locate 6,4, D ◢
“ TW=”: Locate 6,4,Z[5]◢
Goto 0
6 .主程序 6 :路基标准半幅宽度计算程序 ( 对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至 L)
程序名: 6GD
Prog “G0”Z-C→E:(B-A)×E/S+A→L:L:
7 .坐标计算次程序(THB)
程序名: THB
18→DimZ :"KM" ?Z : Prog "X0"
1÷P→ C: (P-R)÷(2HPR) → S: 180÷π→ E:F =1=>Goto 1 :F =2=>Goto 2←┘
Lbl 1 : ? D: Abs( Z- O) →W : Prog " A " : X :Y:G oto 3
LbI 2: X:Y:X →I :Y →J : Prog "B":O+W →Z :D → D:G oto 3
LbI 3:IF F=1 Then X:Y: Else Z:D
8. 正算子程序 ( A )
程序名: A
0.1184634425→A : 0.2393143352→B : 0.2844444444→N 0.046910077→K : 0.2307653449→L : 0.5→M : U+W(Acos(G+QEKW(C+KW S ))+Bcos(G+QELW(C+LW S ))+Ncos(G+QEMW(C+MW S ))+Bcos(G+QE(1-L)W(C+(1-L)WS))+Acos(G+QE(1-K)W(C+(1-K)WS))) →X :
V+W(Asin(G+QEKW(C+KW S ))+Bsin(G+QELW(C+LW S ))+Nsin(G+QEMW(C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W(C+(1-K)W S ))) →Y :
G+QEW(C+W S )+ Z[1] → Z[2]: X+ D cos (Z[2]) → X: Y+ D sin (Z[2]) → Y
9. 反算子程序 ( B )
程序名: B
G-90→ T: Abs((Y-V)cos(T)-(X-U)sin(T)) → W: 0→ D: Lbl 0 : Prog " A " : T+QEW(C+W S ) → L: (J-Y)cos(L)-(I-X)sin(L)→ D: IF Abs( D )<0.01:Then Goto1 : Else W+ D →W:Goto 0←┘
Lbl 1:0→D : Prog " A " : (J-Y)÷sin( Z[2] ) →D:
10 .高程计算子程序( H )
程序名: H
Prog “S0”:R:T:C:G:I:C-T→F:Z-F→L:C+T→E:G-TI→Q:If T=O:Then Q+LI→H:Goto 0:Else If Z<F:Then Q+LI→H:Goto 0:Else If Z≤E:Then Q+LI+L2÷2÷R→H:Goto 0:
LbI 0:H:If D=0:Then Goto I:Else Prog “I”:H+V→H:Goto I:LbI I:H:I:
11. 高程超高计算程序( I )
程序名: I
Prog”I0”:
W=1=> Goto 0:W=2=>Goto 1:
LbI 0:If L=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×((N-M)×(Z-C)÷L+M)→V:Goto 2:IfEnd:
LbI 1:If L=0:Then Abs(D)×M→V:Goto 2:Else Abs(D)×(((3((Z-C)÷L)2-2((Z-C)÷L)∧(3))×(N-M))+M)→V:Goto 2:IfEnd:
LbI 2:Abs(D)→E:V÷E→I:I(E-K)→V:
12 .数据子程序 ( 附后示例 )
① 程序名: X0 (坐标计算要素程序)
If Z≥25900 And Z≤26615.555:Then 25900→O:11587.421→U:1847.983→V:101 。 09’ 23.1” →G:715.555→H:1×1045→P: 1×1045→R: 0→Q:Goto 0: IfEnd:
If Z≥26615.555 And Z≤26915.555:Then 26615.555→O:11448.97→U:2550.016→V:101 。 09’ 23.1” →G:300→H:1×1045→P: 1800→R:1→Q:Goto 0:IfEnd:
If Z≥26915.555 And Z≤27316.952:Then 26915.555→O:11382.792→U:2842.531→V:105 。 55’ 51.83” →G:401.396→H:1800→P: 1800→R:1→Q:Goto 0:IfEnd:
……
LbI 0:O:U:V:G:H:P:R:Q:
程序字母说明: O- 线元起点桩号; U- 起点 X 坐标; V- 起点 Y 坐标; G- 线元起点桩号切线方位角 ; H-线元长度,P-线元起点曲率半径,R-线元终点曲率半径 ,Q -线元判别 ( 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时, Q=-1 ;当线元往右偏时, Q=1 ;当线元为直线时, Q=0) 。
② 程序名: SO( 高程竖曲线要素子程序 )
If Z≥25900 And Z≤26157.8:Then -200000→R:157.8→T:26000→C:37.1→G:0.01222→I:Goto 0:IfEnd:
If Z≥26157.8 And Z≤27421.915:Then 300000→R:171.915→T:27250→C:32.65→G:-0.00356→I:Goto 0:IfEnd:
If Z≥27421.915 And Z≤27889.029:Then 1000000→R:134.029→T:27755→C:36.64→G:0.0079→I:Goto 0:IfEnd:
……
LbI 0:R:T:G:C:I:
程序字母说明: C- 竖曲线交点桩号; G- 交点桩号高程(未竖曲线调整的); T- 竖曲线切线长; R- 竖曲线半径(分正负:凹曲线为正,凸曲线为负); I -竖曲线前纵坡
③ 程序名: I0 (高程超高参数子程序)
1.5→K:2→W:If D<0:Then Goto L:Else Goto R:IfEnd:
LbI L:If Z≥25900 And Z≤26615.555:Then 0→L:-0.02→M:Goto 0:IfEnd:
If Z≥26615.555 And Z≤26735.555:Then 120→L:26615.555→C:-0.02→M:0.02→N:Goto 0:IfEnd:
If Z≥26735.555 And Z≤26795.555:Then 60→L:26735.555→C:0.02→M:0.04→N:Goto 0:IfEnd
If Z≥26795.555 And Z≤27436.951:Then 0→L:0.04→M: Goto 0:IfEnd
……
LbI R: If Z≥25900 And Z≤26735.555:Then 0→L:-0.02→M: Goto 0:IfEnd
If Z≥26735.555 And Z≤26795.555:Then 60→L:26735.555→C:-0.02→M:-0.04→N:Goto 0:IfEnd
If Z≥26795.555 And Z≤27436.951:Then 0→L:-0.04→M: Goto 0:IfEnd
……
LbI 0 K:W:L:C:M:N:
字程序中字母表示说明:
K -中央分隔带半幅宽(中桩标高至中桩中线距离,无分隔带则为 0 ); W -超高方式参数( W=1 为一般直线方式超高, W=2 为三次抛物线方式超高) ;L -超高渐变段距离(不是渐变段则输入 0 ); C- 超高渐变段起点桩号(不是渐变段,无需输入); M -超高段起点横坡, N- 超高渐变段终点横坡(不是渐变段,无需输入)。
④ 程序名: GO( 路基标准半幅宽度参数子程序 )
If D<0:Then Goto L:Else Goto R:IfEnd:
LbI L:If Z≥25900 And Z≤28110.727:Then Z→C:17.25→A:Goto 0:IfEnd:
If Z≥28110.727 And Z≤28200.727:Then 28110.727→C:17.25→A:21.25→B:90→S:Goto 0:IfEnd
……
LbI R: If Z≥25900 And Z≤27927.478:Then Z→C:17.25→A: Goto 0:IfEnd
If Z≥27927.478 And Z≤28172:Then 27927.478→C:17.25→A:27.031→B:244.522→S:Goto 0:IfEnd
……
LbI 0 C:A:B:S:
字程序中字母表示说明:
C -宽度渐变段起点桩号(不是渐变段 C=Z ); A -宽度渐变段起点宽度 ; B -宽度渐变段终点宽度(不是渐变段,无需输入); S- 宽度渐变段距离(不是渐变段,无需输入)。
⑤ 程序名: WO( 路基填挖边坡参数子程序 )
0.75→Z[7]:1→Z[8]:1.25→Z[9]:10→Z[10]:10→Z[11]:2.6→Z[12]:2→Z[13]:2→Z[14]:
1.5→Z[15]:1.75→Z[16]:8→Z[17]:2→Z[18]
字程序中字母表示说明:
Z[7] -挖方第一阶边坡边率; Z[8] -挖方第二阶边坡边率; Z[9] -挖方第三阶边坡边率; Z[10] -挖方第一阶高度; Z[11] -挖方第二阶高度; Z[12] -挖方路基碎落台及水沟宽度; Z[13] -挖方第二台阶平台宽度; Z[14] -挖方第三台阶平台宽度;
Z[15] -填方第一阶边坡边率; Z[16] -填方第二阶边坡边率 ; Z[17] -填方第一阶高度; Z[18]- 填方第二台阶平台宽度。(注:本程序只做出挖方三个台阶,填方二个台阶,如需增加,先需在程序 THB 和 5FBZ 程序中增加变量。再如一标段有坡率及坡高不一样时,可以照其它参数程序一样,用判别语句。)
三、使用说明
1 、规定
(1) Z“KM” 为所求点桩号,反算时为输入大概桩号
(2) 当所求点位于中线时,D =0 ;当位于中线左铡时,D取负值;当位于中线中线右
侧时,D取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以 10 的 45 次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆
弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半
径为无穷大,以 10 的 45 次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的
值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
2 、输入与显示说明
输入部分:
1. F=1:ZD => XY
2. F=2: XY = > ZD
F ? 选择计算方式,输入 1 表示进行由里程、边距计算坐标;输入 2 表示由坐标反算里程和边距。Z[1]为线元边桩与中线右夹角。
KM?正算时所求点的里程(反算输入大概桩号)
D ?正算时所求点距中线的边距 ( 左侧取负,值右侧取正值,在中线上取零 )
X0 ?反算时所求点的 X 坐标(放样程序中实测 X 坐标)
Y0 ?反算时所求点的 Y 坐标(放样程序中实测 Y 坐标)
显示部分:
L? 涵洞放样程序中涵距中心桩号前后距离 , 前为正 , 后为负 .
M0? 边坡放样程序中原地面标高输入
X=*** 正算时,计算得出的所求点的 X 坐标
Y=*** 正算时,计算得出的所求点的 Y 坐标
FWJ=*** 正算时,计算得出的所求点的至置仪点方位角(在 3JS 程序中应输入 X 、 Y 坐标值于 K 、 L )
S=*** 正算时,计算得出的所求点的至置仪点距离
KM =*** 反算时,计算得出的所求点的里程
D =*** 反算时,计算得出的所求点的边距
H=*** 所求点位置设计路面顶标高
I=*** 所求点位置设计路面横坡
L0=*** 边桩放样程序中实测点至设计边坡点距离,正向内移,