曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序.doc

曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
\o 到百度首页 曲线任意里程中边桩坐标正反算(CASIO fx-5800P计算器)程序 一、程序功能 ?????? 本程序由一个主程序(TYQXJS)和三个子程(正算子程序(SUB1)、反算子程序(SUB2),数据库子程序(DAT03))构成,可以根据曲线段—直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行夹角为90°的正反算。 程序改进:1、增加桩号控制语句,当计算桩号超出本线元自动从数据库读取线元数据,或者提示手工输入。 ??????????2、手工输入下一线元数据时,程序将上一线元终点桩号、坐标、方位角自动代入下一线元作为线元起点数据进行计算。 ?????? 特别申明:(1). 适用于弧长小于2倍半径的各种线元坐标正反算,精度优于1mm; ???????? (2). 本程序采用yshf老师4800P程序 TYQXJS中核心算法,在此表示感谢,转载请注明! ???????? (3).程序还有不足之处,(如:坐标反算不能全线贯通,只能算本线元内,超出本线元之后需重新读取数据库,然后重新输入反算点坐标),请高手指点! 二、程序清单: TYQXJS (曲线坐标计算主程序) “1.SJK,2.SHURU”?N:If N=1:Then Goto 1:Else Goto 2:IfEnd Lbl1:“Z”?S:Prog “DAT03”: Goto 3 Lbl2:“X0”?U:“Y0”?V:“Z0”?O:“F0”?G:“LS”?H:“R0”?P:“RN”?R:?Q:(P-R)÷(2HPR)→D:180÷兀→E Lbl 3:“1.ZS,2.FS”?C: If C=1:Then Goto 4:Else Goto 5:IfEnd Lbl 4:“Z”?S If S<O Or S>O+H:Then If N=1:Then Prog“DAT03”:Goto 4:Else Goto 6:IfEnd:IfEnd “W:Z-,Y+”?Z Abs(S-O)→W Prog“SUB1” “FWJ=”:F-90◢DMS◢ “X=”:X◢ “Y=”:Y◢ Goto 4 Lbl 5:?X:?Y:X=I:Y=J: Prog“SUB2” If W<0 Or W>H:Then If N=1:Then O+W→S:Prog“DAT03”:Goto 5:Else Goto 6:IfEnd:IfEnd “Z=”: O+W→S◢ “W=”:Z◢ Lbl6:If S<O Or W<0:Then“OUT-OF-RANGE”◢ Goto2:IfEnd H→W:0→Z:Prog“SUB1”:X→U:Y→V:F-90→G:O+H→O:“LS”?H:“R0”?P:“RN”?R:?Q:(P-R)÷(2HPR)→D:180÷兀→E If C=1:Then Goto 4:Else Goto 5:IfEnd SUB1 (正算子程序) 0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M U+W(Acos(G+QEKW(1/P+KWD))+Bcos(G+QELW(1/P+LWD))+Bcos(G+QEFW(1/P+FWD))+Acos(G+QEMW(1/P+MWD)))→X V+W(Asin(G+QEKW(1/P+KWD))+Bsin(G+QELW(1/P+LWD))+Bsin(G+QEFW(1/P+FWD))+Asin(G+QEMW(1/P+MWD)))→Y G+QEW(1/P +WD)+90→F X+ZcosF→X Y+ZsinF→Y Return SUB2 (反算子程序) G-90→T:Abs((Y-V)cosT-(X-U)sinT)→W:0→Z Lbl 0:Prog SUB1 T+QEW(C+WD)→L:(J-Y)cosL-(I-X)sinL→Z:If AbsZ1×10-4:Then Goto 1:Else W+Z→W:Goto 0:IfEnd Lbl 1:0→Z:Prog SUB1:(J-Y)÷sinF→Z Return 说明:1、×10-4:×10就是最下面一排键“.”键右边的一个键。-4为负4 ????2、程序中的字母O都已经加粗,区别于数字零 DAT03 (数据库子程序) If S<路线起点桩号Or S>路线终点桩号:Then 2→N:“X0”?U:“Y0”?V:“Z0”?O:“F0”?G:“LS”?H:“R0”?P:“RN”?R:?Q Goto 1:IfEnd If S<线元终点桩号:Then 线元起点X坐标→U: 线元起点Y坐标→V:线元起

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档