2-2-1 路线平面设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章路线平面设计教学内容:(1)程序功能(2)设计资料(3)平面设计计算原理与公式(4)平面设计程序设计方法及流程框图(第2讲)第2章路线平面设计2.1.1程序功能(1)平曲线计算:曲线要素及主点里程桩号计算(2)交点坐标计算(3)保存计算结果2.1.2设计资料平面设计资料:Pmsjzl.dat(用于计算平曲线、交点坐标)计算平曲线:交点桩号(坐标),偏角,半径,缓和曲线长度计算交点坐标:起点方位角,起点坐标(x,y)第一节概述第2章路线平面设计2.1.1程序功能(1)平曲线计算:曲线要素及主点里程桩号计算(2)交点坐标计算(3)保存计算结果2.1.2设计资料平面设计资料:Pmsjzl.dat(用于计算平曲线、交点坐标)计算平曲线:交点桩号(坐标),偏角,半径,缓和曲线长度计算交点坐标:起点方位角,起点坐标(x,y)第一节概述数据结构第1行:起点方位角(FWJ),起点x坐标,起点y坐标第2行:①交点编号,②曲线类型,③交点桩号(数值),④偏角,⑤半径,⑥第一缓和曲线长,⑦第二缓和曲线长第3行:同第2行,下同(1个交点占1行数据示例:85,1000,1000起点,0,4600,0,0,0,01,0,5010.29,53.2706,500,100,1002,0,5791.24,-67.5418,260,150,150……………………(1)数据文件一律采用纯文本格式。数据间用逗号间隔,也可用换行符间隔。(2)计算方位角及交点坐标三个数据为本数据文件的首行,其余一个交点占一行,起点及终点亦各占一行。起、终点为直线时,半径设为0,偏角也为0。行尾不能有逗号或句号。(3)偏角值以度分秒输入,小数点代表度,后跟四为小数表示分秒。其值是有正负号的,正号代表右偏,负号代表左偏。(4)曲线类型:单曲线qxlx=0;回头曲线qxlx=1;卵型曲线qxlx=2。当曲线类型为回头曲线(或虚交点)时,即qxlx=1,则平曲线数据应增加为9个,其数据格式为:num,qxlx,jda,pja_dms,r,Ls,Ls2,jdb,pjb_dms。数据结构说明:数据示例:85,1000,1000起点,0,4600,0,0,0,01,0,5010.29,53.2706,500,100,1002,0,5791.24,-67.5418,260,150,1503,1,6214.61,89.1436,100,70,70,6307.53,92.4236终点,0,7133.67,0,0,0,0第二节计算原理及公式1.平曲线计算2.交点坐标计算2.2.1平曲线计算旋转角圆曲线内移值切线增值切线长曲线长外距校正值RLsRYp24)cos1(202302402cosRLsLsRXq(1)有缓和曲线的道路平曲线几何元素计算(角度以弧度计)qtgpRT2)(LsRLsRL2)2(0RpRE2sec)(β0=Ls/2RJ=2T-L(2)有缓和曲线的道路平曲线主点里程桩号计算由交点里程桩号JD起算:ZH=JD-THY=ZH+LsQZ=ZH+L/2YH=HZ-LsHZ=ZH+L2.2.2交点坐标计算Xn=Xn-1+LJDcosφn-1Yn=Yn-1+LJDsinφn-1式中:Xn——JDn的X坐标(北坐标);Yn——JDn的Y坐标(东坐标);LJD——交点间距(JDn-1到JDn间距);LJD=JDn-JDn-1+Jn-1φn-1——JDn-1的计算方位角;φn=φn-1+ξαnξ——公路转向系数,右偏ξ=1,左偏ξ=-1。第三节程序设计方法及流程框图1.控制窗体设计2.程序设计(1)有缓和曲线的道路平曲线计算程序(2)交点坐标计算程序3.浏览路径窗体设计2.3.1控制窗体设计窗体名:pmjs.frmText1Command1Command2Command3第三节程序设计方法及流程框图点击运行2.3.2程序设计步骤及流程框图(1)有缓和曲线的道路平曲线计算程序(2)交点坐标计算程序打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图PrivateSubCommand1_Click()'平曲线计算EndSubDimpathAsStringpath=pmjs.Text1.Text'打开平面设计资料数据文件Pmsjzl.datOpenpath+\Pmsjzl.datForInputAs#1…………'或OpenPmsjzl.datForInputAs#1'或Openc:\Pmsjzl.datForInputAs#1PrivateSubCommand1_Click()'平曲线计算……EndSubDimpathAsStringpath=pmjs.Text1.Text'打开平面设计资料数据文件Pmsjzl.datOpenpath+\Pmsjzl.datForInputAs#1‘打开平面设计结果数据输出文件zqzbsj.datOpenpath+“\zqzbsj.dat”ForOutputAs#2打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图'读入起点方位角、x坐标、y坐标Input#1,fwj_dms,x,yPrivateSubCommand1_Click()'平曲线计算……EndSubDimpathAsStringpath=pmjs.Text1.Text'打开平面设计资料数据文件Pmsjzl.datOpenpath+\Pmsjzl.datForInputAs#1‘打开平面设计结果数据输出文件zqzbsj.datOpenpath+“\zqzbsj.dat”ForOutputAs#2打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图文件号,应与所打开的文件对应(1~255)。EOF=EndOrFalse‘判断是否文件尾。若非文件尾,继续循环DoWhileNotEOF(1)………Loop'读入起点方位角、x坐标、y坐标Input#1,fwj_dms,x,yDimpathAsStringpath=pmjs.Text1.Text'打开平面设计资料数据文件Pmsjzl.datOpenpath+\Pmsjzl.datForInputAs#1‘打开平面设计结果数据输出文件zqzbsj.datOpenpath+“\zqzbsj.dat”ForOutputAs#2PrivateSubCommand1_Click()'平曲线计算……EndSub打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图PrivateSubCommand1_Click()'平曲线计算DimpathAsStringpath=pmjs.Text1.TextOpenpath+\Pmsjzl.datForInputAs#1Openpath+\zqzbsj.datForOutputAs#2Input#1,fwj_dms,x,yDoWhileNotEOF(1)………Loop…………EndSub'读入平面设计资料Input#1,num,qxlx,jd,pj_dms,r,ls,ls2Ifqxlx=1ThenInput#1,jdb,pjb_dms'回头曲线计算打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图PrivateSubCommand1_Click()'平曲线计算DimpathAsStringpath=pmjs.Text1.TextOpenpath+\Pmsjzl.datForInputAs#1Openpath+\zqzbsj.datForOutputAs#2Input#1,fwj_dms,x,y:fwj=dms_rad(fwj_dms)DoWhileNotEOF(1)Input#1,num,qxlx,jd,pj_dms,r,ls,ls2Ifqxlx=1ThenInput#1,jdb,pjb_dms………LoopEndSub‘识别偏角度分秒(DMS)并转换为弧度(RAD)。‘调用自定义函数Functiondms_rad()pj_rad=dms_rad(Abs(pj_dms))fx=Sgn(pj_dms)‘标定左右偏偏角值有正负号,正值代表右偏。自定义函数Functiondms_rad()功能:识别度分秒(DMS)并转换为弧度(RAD)Functiondms_rad(dms)(例:16.2542)d=Int(dms)m=Int((dms-d)*100)s=(dms-d-m/100)*10000deg=d+m/60+s/3600dms_rad=deg*3.14159/180EndFunction格式:Function函数名称(变量1,变量2,…)(计算程序模块)EndFunction调用方法:a=dms_rad(b)打开平面设计输入、输出文件读入起点方位角、x坐标、y坐标判断是否文件尾读入平面设计资料识别偏角度分秒(DMS)并转换为弧度(RAD)计算p,q及曲线要素T、L、E、J计算曲线主点里程桩号计算结果输出到文件Zqzbsj.dat关闭文件,结束计算NoYes开始平曲线计算程序流程框图圆曲线内移值圆心x坐标值切线长曲线长外距校正值J=2T-LRLsp242232402RLsLsqqtgpRT2)(LsRLsRL2)2(0RpRE2sec)(p=ls*ls/24/rq=ls/2-ls^3/240/r/rt=(r+p)*Tan(pj_rad/2)+ql=pj_rad*r+lse=(r+p)/Cos(pj_rad/2)-rj=2*t-lOpenpath+\Pmsjzl.datForInputAs#1Openpath+\zqzbsj.datForOutputAs#2Input#1,fwj_dms,x,y:fwj=dms_rad(fwj_dms)DoWhileNotEOF(1)Input#1,num,qxlx,jd,pj_dms,r,ls,ls2Ifqxlx=1ThenInput#1,jdb,pjb_dmspj_rad=dms_rad(Abs(pj_dms))fx=Sgn(pj_dms)………Loop'计算p,q及曲线要素T、L、E、JIfr0Thenp=ls*ls/24/rq=ls/2-ls^3/240/r/rt=(r+p)*Tan(pj_r

1 / 35
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功