Casio5800线元法.doc_第1页
Casio5800线元法.doc_第2页
Casio5800线元法.doc_第3页
Casio5800线元法.doc_第4页
Casio5800线元法.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Casio5800线元法(积木法)匝道坐标正反算放样程序 (歪哥版权 2009)本程序由一个主程序2.XY和两个子程序(XY-A、XY-B)构成及各个线路的线元矩阵数据库(如P.Z、P.A等)组成,运行时只需运行主程序即可!本程序采用复化辛普森公式为核心,采用积木法线元定位思路架构,多线路共存,程序开始选择线路后K Or K To Shu?提示时,执行输入一个定位桩号用于定位所在线元(若为负值程序转化为手工输入单独一段线元的要素:将显示K0?KN?X0? Y0?F0?R0?RN?ZX:-1,+1,0?等单一线元要素的输入正算;注意此时目的只是为了紧接着的下一段线元起点桩号(也就是所输入线元的终点桩号)坐标起点切线方位角计算,为了编写数据库做准备用的,故此时手输入情形下程序只可单独正算不可进行反算的!等用手工输入单算将所有线元数据准备完毕编写为数据库时即可任意角正反算的),后面的坐标正、反算均在该线元范围内进行,该线元要素只在程序开始时运行一次(其实线元要素的显示可根据半径值负号确定所输入桩号所在的线形转向等信息),避免了每次计算桩号都要重新定位线元、计算线元要素的麻烦,适当的提高了正反计算速度,虽然存在每次执行程序只能在一个线元计算范围内计算,要计算另一个线元范围的桩号,要重新执行程序的缺点,但比起由此带来的优势,这是微不足道的;其实当K OUT!提示时只需连续两次EXE重新定位即可计算!线元定位技术的采用,结合线元计算桩号范围的确定,可圆满解决公路匝道曲线中的断链情况;关于此程序断链的处理:断链前后的数据编写到一个数据库中,运行时只需记住断链前后某一个特定桩号来定位断链前后线元即可开始正常的断链前后的正反算了的。数据库子程序采用矩阵变量的形式,使数据组织更加简洁,输入更加便捷;(全部数据库输入完毕后检查核对办法之一:逐一循环输入各个线元中的任一点桩号正算后彻底退出程序后,回到comp模式下按FUCTION-8:MATRIX-1:EDIT-下箭头选择Mat B后回车用左右箭头键查看矩阵表中所输入该桩号所在的该段线元数据是否有误,有误则立即EXIT退出到线路数据库中找到该行修改中所错误的数值即可!无误则可放心使用!)程序考虑了调用数据库子程序和手工输入线元数据两种方法。本程序采用线元定位思路故而专为应对匝道坐标计算而设,当然主线上的单交点平曲线计算也可使用的,但单交点曲线运用该程序计算的弊端是由于数据库太长占用计算器空间字节太多,故建议用交点法处理单交点曲线减少数据库容量,当然在单交点曲线线路中当不完整缓和曲线(含卵形)时,存在时此段不完整缓和曲线(含卵形)采用此线元法解决未尝不可!关于下面代码中字母O和数字0,分不清者建议到word中使用编辑-查找功能自己就可区分出来!主程序名: 2.XYClrMat:Deg:Fix 3Cls :1Z 2A 3B?I (注:此处内为线路名,有几条线路就加入几条!)Cls:K Or K To Shu?K:If K0:ThenI=1=ProgP. ZI=2=ProgP. AI=3=ProgP. B(注:此处必须与上述内为线路名和下面的数据库子程序名对应,有几条线路就加入几条!)Mat B1,1A: Mat B1,2L: Mat B1,3U: Mat B1,4V: Mat B1,5W: Mat B1,6P: Mat B1,7Q: Mat B1,8GElse Cls:K0?A:KN?L :X0?U :Y0?V :F0?W :R0?P :RN?Q:ZX:-1,+1,0?G:IfEnd :Cls 1O: Prog XY-BCls:1.ZS 2.FS? I: I=2=Goto 3Cls:XC?H:YC?ZLbI 1 : Cls:K+?KIf KL Or KA : Then Cls: Locate 6,2,K OUT !Stop: IfEndLbI 2: Cls:90B: Cls:RJ Or 0 To K?B:B=0 =Goto 1:Z?TProg XY-AX+Tcos(M+B)XY+Tsin(M+B)Y360Frac(M+360)360MPol(X-H,Y-Z : 360Frac(J+360)360J2O: Prog XY-B:Goto 2LbI 3 : Cls: X?C:Y?DLbI 4 : If KL Or KA : Then Cls: Locate 6,2,K OUT !Stop:IfEndProg XY-A(D-Y)sin(M)+(C-X)cos(M)HIf Abs(H)X10-3 :Then K+HK:Goto 4:IfEnd(D-Y)cos(M)T3O: Prog XY-B:Goto 3子程序1名: XY-A5N: G(Q-1-P-1)Abs(L-A)F: Abs(K-A)NR: 90RS: W+(FNR+2GP-1)NSM:1EU+R6(Cos (W)+Cos (M) +4(Cos (W+(E+0.5)FR+2GP-1)(E+0.5)S),E,0,(N-1))+2(Cos (W+(EFR+2GP-1)ES,E,1,(N-1))X V+R6(sin (W)+sin (M) +4(sin (W+(E+0.5)FR+2GP-1)(E+0.5)S),E,0,(N-1))+2(sin (W+(EFR+2GP-1)ES,E,1,(N-1))Y 子程序2名: XY-BCls :Fix 3:If O=1:Then XY RESULTS: K0=:KN=:F0=: Locate 5,2,A : Locate 5,3,L : Locate 5,4,WCls :X0=:Y0=:R0=:RN=: Locate 5,1,U : Locate 5,2,V : Locate 5,3,GP : Locate 5,4,GQIfEndIf O=2:ThenCls :K=:Z=:X=:Y=: Locate 6,1, K : Locate 4, 2, T : Locate 4,3, X : Locate 4,4, YIf T=0 :Then Cls :QF(Z)=: Locate 8,1, M:MDMSIfEndCls :K=:S=: Locate 6,1, K : Locate 4, 2, I : F=:J:JDMSIfEndIf O=3:Then X=:Y=:K=:Z=: Locate 4,1,C: Locate 4, 2, D : Locate 6,3,K :Locate 4,4,TIfEnd:Cls线路线元数据库子程序格式:数据库采用给矩阵变量Mat B赋值的形式,使数据组织更加简洁,极大的减少了线路数据库子程序的输入量,节约了计算器空间程序说明: 程序线元判断原则: (1) 以道路中线的前进方向(即里程增大的方向)区分左右; (2) 当所求点位于中线时,Z=0;当位于中线左侧时,Z取负值;当位于中线右侧时,Z取正值。(3) 当线元为直线时,其起点、终点的曲率半径为无穷大,以10的45次代替输入10x45。(4) 当线元为圆曲线时,无论其起点、终点与什么线元相接,其曲率半径均等于圆弧的半径。(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替输入10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。终点与直线相接时,曲率半径为无穷大,以10的45次代替输入10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。终点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。输入与显示简单说明1.ZS 2.FS选1正算 选2反算K0? KN? R0? RN?F0?X0? Y0?ZX? 分别为线元起点桩号 、终点桩号、起点半径、终点半径、起点切线方位角、起点X坐标、起点Y坐标、线元转向。XC ? YC? 输入置镜点即测站的X,Y坐标K+? 输入所求的桩号Z ? 输入所求点距中线的边距(在中线输零,左负右正) RJ? 输入边桩时左右边桩连线与线路前进方向中桩切线的右交角(当输入数字0时进入下一个桩号计算输入)X =、Y = 计算得出的所求点的左、中、右 的X Y坐标 QF(Z)= 计算得出所求点的中桩切线方位角 F= 计算得出置镜点到测点的方位角 S= 计算得出置镜点到测点的水平距离X= 反算输入所求点的X坐标 Y= 反算输入所求点的Y坐标K=计算得出求点所对应的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论