CASIO 9860G SD线元法隧道三维(坐标正反计算、高程)计算程序悬赏分:+62作者:刘工2010-4-31. A(此为主程序)Lbl 0:〝1.LC=>XY〝:〝2.XY=>LC〝:〝3.ZHZL=>GC〝:〝PB=>V=1,2,3〞?→V:If V=1:Then GOTO 1 :IfEnd :If V=2:Then GOTO 2 :IfEnd :If V=3:Then GOTO 3 :Else GOTO 0 :IfEnd:Lbl 3:〝ZH=H〝?→H :〝SDZF=Z〝?→Z:Prog〝ZGCZCX〝:GOTO 0:Lbl 1 :〝ZH=L〝?→L:If L>173000 And L<174661.96:Then GOTO 4 :Else GOTO 0 :IfEnd :Lbl 4:L→L:〝SDZF=Q〝?→Q:〝XLZJ,-Z+Y=Q〝:Q+0.125→Q:Prog 〝ZBQXYS〝:〝JSJD=J〝:90→J▲Prog 〝ZSZB〝:〝X=〝:X ▲ 〝Y=〝:Y▲〝FWJ=O〝:O▼DMS▲L→H:Q-0.125→Z:Prog 〝ZGCZCX〝:GOTO 0:Lbl 2:〝XO=M〝?→M:〝YO=R〝?→R:173300→L:If M>3845505.273 And M<3846506.099And R>499371.832 And R<500352.224 :Then GOTO 5:Else GOTO 2:IfEnd :Lbl 5:0→Q:0→J:Prog 〝ZBFS〝:〝LC=L〝:L ▲〝JL=Q〝:Q▲ 〝SDZJ,-Z+Y=Q〝:Q-0.125→Q ▲L→H:Q→Z:Prog 〝ZGCZCX〝:GOTO 02.正算坐标ZBZS( L-S ) / 4→H:90/π→F:HHF(1/T-1/I)/(K-S)→U:2HF/ I→D:C+4D+16 U→O:O+J→P :C+ D+ U→E:C+2D+4U→W:C+3D+9U→G:A+AbsH/3*(cosC+4(cosG+cosE)+2cosW+cosO)+Qcos P→X :B+AbsH/3*(sinC+4(sinG+sinE)+2sinW+sinO)+Qsin P→Y3.反算坐标:ZBFSLbl 0:Prog 〝ZBQXYS〝:Prog 〝ZBZS〝:O-90→Z:(R-Y)cosZ-(M-X) sinZ→P :L+P→L:If Abs P≥0.001:Then GOTO 0 :Else GOTO 1:IfEnd :Lbl 1: (R-Y)cosO-(M-X) sinO→Q4. 曲线元要素数据库:ZBQXYSIf L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→ T IfEnd :If L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→ T IfEnd :If L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→T IfEnd :If L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→ T IfEnd :If L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→ T IfEnd :……………………………If L≥S And L<K :Then **→ S:**→ A:**→ B:**→ C:**→ I:**→ K:* *→ T IfEnd ┘(注:如有多个曲线元要素继续添加入数据库ZBQXYS中)5 高程计算主程序ZGCZCX (后有修改说明)Lbi1 :〝SCGC=X〝?→X:〝R=M〝:5.98→M:〝CS=N〝:1.603→N:Prog"GC SJK":C-D→F:Abs(RF÷2) →T:R AbsF÷F→R:If H≤B-T :Then 0→K:GOTO 2:IfEnd :If H>B-T And H<B+T :Then H-B+T→K :GOTO 2:IfEnd :If H≥B+T :Then 0→K:D→C:GOTO 2:IfEnd :Lbi 2 :〝XLZG=G〝:A-(B-H)C-K^2÷2R→G▲If Z≥0:Then If X>100 Then 〝YO1XGC=J〝:G+N→J▲〝YGCFSKD=J〝:Abs√(M^2-(X-(G+N))^2) →J▲〝YKDCQ,+C,-Q=J〝:J- Abs (Z+0.000) →J▲〝YSBSJGC=J〝:G+N+√(M^2-(Z+0.000)^2) →J▲〝YGCCQ,C+,Q-=J〝:X-J→J▲Else〝YO1XGC=J〝:G+N→J▲〝YSBSJGC=J〝:G+N+√(M^2-(Z+0.000)^2) →J▲ IfEnd :Else 〝ZO1XGC=J〝:G+N→J▲If X>100 :Then〝ZGCFSKD=J〝:Abs√(M^2-(X-(G+N))^2) →J▲〝ZKDCQ,+C,-Q=J〝:J- Abs (Z+0.000) →J▲〝ZSBSJGC=J〝:G+N+√(M^2-(Z+0.000)^2) →J▲〝ZGCCQ,C+,Q-=J〝:X-J→J▲Else〝ZSBSJGC=J〝:G+N+√(M^2-(Z+0.000)^2) →J ▲IfEnd :IfEnd6高程计算主程序子程序:GCSJKIf H>起点桩号 And H≤第一个竖曲线起点桩号Then 第一竖曲线交点高程→A:第一竖曲线交点桩号→B:第一竖曲线前坡度→C:第一竖曲线后坡度→D:第一竖曲线半径→R:IfEnd:If H>第一竖曲线止点桩号 And H≤第二竖曲线起点桩号Then 第一竖曲线交点高程→A:第一竖曲线交点桩号→B:第一竖曲线前坡度→C:第一竖曲线后坡度→D:第一竖曲线半径→R:IfEnd:If H>第一竖曲线止点桩号 And H≤第二竖曲线起点桩号Then 第一竖曲线交点高程→A:第一竖曲线交点桩号→B:第一竖曲线前坡度→C:第一竖曲线后坡度→D:第一竖曲线半径→R:IfEnd………………………(继续添加要素)说明:第一部分坐标部分(1、2、3、4)V=1进入坐标正算 V=2进入坐标反算V=3进入单独的高程计算当V不等于1、2、3时,则返回程序,要求再次输入V值。
变量说明:S……..起点里程A…..起点X坐标B….起点Y坐标C….起点方位角I ….….起点半径K…..终点里程T .…终点半径L….计算点里程J…输入左右(左-,零,右+)角度Q….中桩到边桩的距离〝SDZJ-Z+Y〝为隧中支距,左〝-〝右〝+〝坐标正算中输入的Z值为线路支距坐标反算中得出的Z值也为线路支距注意:1:计算中桩坐标J D,JL 等于零。
2:这里的方位角是指〝主点作为起点〝的方位角例如:(ZY , YZ , ZH ,QZ, HY , YZ)每个点都是起点所以特别注意3、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,半径=半径*-1;当线元往右偏时,半径=半径;当线元为直线时,半径=以10的45次代替。
(2) 当所求点位于中线时,Q,J=0;当位于中线左侧时,J取负值;当位于中线右侧时,J取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
4、输入与显示说明V=1的时候JL ?正算时所求点距中线的边距(在中线上取零)J ?边桩时左右边桩连线与线路中线的交角线元左右偏标志(左偏J=-1*角度,右偏J=角度,直线段J=0) 角度X=×××正算时,计算得出的所求点的X坐标Y=×××正算时,计算得出的所求点的Y坐标FWJ=*** 计算得出所求点的方位角°′″V=2的时候XO=×××所求点的X坐标YO=×××所求点的Y坐标LC=**** 求点所对应的里程JL=**** 求点到所对应的里程的距离 -5就是左边相反就是右边想知道是否正确V=1 看看坐标是否一致注意:验算的时候不需要改动JL ? J ?[/center]◢说明:第二部分高程部分(5高程计算主程序:SQXBG 6高程计算主程序子程序:S JK)1、A:交坡点高程2、B:交坡点桩号3、C:前坡度(上坡为正,下坡为负)4、D:坡度(上坡为正,下坡为负)5、R:竖曲线半径6、H:待求点桩号7、E:下一竖曲起点桩号8、X〝SCGC〝测点实测高程9、M〝R〝 O1点半径(此处如须计算开挖线加上二衬厚度、沉降量、其他结构层的厚度即可)10、N〝CS〝线路中桩设计高程至O1点的距离11、J〝YO1XGC〝 O1点(圆心点)高程12、J〝YSBSJGC〝根据桩号及支距(正反算程序中)计算得到的测点(设计)高程J〝YGCFSKD〝反算中根据高程反算得到的支距J〝YKDCQ,+C,-Q〝实测高程计算得支距与坐标反算得支距进行对比,得到超欠挖J〝YGCCQ,C+,Q-〝实测高程与坐标反算得到高程进行对比,得到超欠挖13、J〝ZO1XGC〝 O1点(圆心点)高程14、J〝YSBSJGC〝根据桩号及支距(正反算程序中)计算得到的测点(设计)高程J〝ZGCFSKD〝反算中根据高程反算得到的支距J〝ZKDCQ,+C,-Q〝实测高程计算得支距与坐标反算得支距进行对比,得到超欠挖J〝ZGCCQ,C+,Q-〝实测高程与坐标反算得到高程进行对比,得到超欠挖(本人施测的是一公路隧道的上行线,线路中心线至隧道中心线的距离为0.125米,线路中心线在隧道中心线的左侧。
Z〝SDZJ-Z+Y〝为隧中支距,Z+0.125为线路支距。