第十五篇任意斜交角度坐标反算通用程序

时间:2019-05-13 13:26:52下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《第十任意斜交角度坐标反算通用程序》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《第十任意斜交角度坐标反算通用程序》。

第一篇:第十任意斜交角度坐标反算通用程序

第十五篇任意斜交角度坐标反算通用程序

作者:柠檬树QQ: 249910569

1.任意角度坐标反算桩号和斜距主程序(命名为ZBFS2)

第1行:”YOUJIAO=”? B:B=0=>90→B

第2行:Lbl 1:”X1=”? C:”Y1=”?D: ”K1=”?K

第3行:Lbl0:Prog “A”

第4行:Pol(C-N,D-E):I(cos(J-F)-sin(J-F)tan(90-B))→S:K+S→K

第5行:Abs(S)>0.0001=>Goto 0

第6行:”K1=”:K◢

第7行:”BIAN=”:Isin(J-F+90-B)→Z◢

第8行:”α=”:B◢

第9行:Goto 1

YOUJIAO——斜交角度,取前右夹角

X1——取样点的X坐标

Y1——取样点的Y坐标

K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号

Z——偏距或斜距(左负右正)

注:在9860或9960中需将第4行替换为Pol(C-N,D-E): List Ans[1]→I :List Ans[2]→J:

I(cos(J-F)-sin(J-F)tan(90-B))→S:K+S→K,反算主程序所有输入赋值多加一赋值符号(→),其他所有除数据库外的程序均保持不变

2.计算坐标子程序(命名为XYF)

为了简洁,本程序由数据库直接调用,上述中的反算主程序不直接调用此程序

第1行:K-A→S:(Q-P)÷L→I

第2行:N+∫(cos(F+X(2P+XI)×90÷π),0,S)→N

第3行:E+∫(sin(F+X(2P+XI)×90÷π),0,S)→E

第4行:F+S(2P+SI)×90÷π→F

第5行:F<0=>F+360→F: F>360=>F-360→F

3.数据库(命名为A)

第1行:K≤175.191=>Stop(超出后显示Done)

第2行:175.191→A:428513.730→N:557954.037→E:92°26′40″→F:0→P:1/240→Q:70.417→L:

K≤A+L =>GoTo 1(第一缓和曲线)

第3行:245.607→A: 428507.298→N:558024.092→E: 100°50′59.4″→F: 1/240→P:1/240→Q:

72.915→L: K≤A+L =>Goto 1(圆曲线)

第4行:318.522→A: 428482.988→N:558092.538→E: 118°15′25.2″→F: 1/240→P: 0→Q: 55.104

→L: K≤A+L =>Goto 1(第二缓和曲线)

第5行:373.627→A:428453.283→N:558138.912→E:124°50′4.5″→F:0→P:-1/180→Q:67.222→L:

K≤A+L=>Goto 1:Stop(下一曲线的第一缓和曲线,示例为S型曲线,超出后显示

Done)

第6行:Lbl1:Prog “XYF”

A——曲线段起点的里程

N——曲线段起点的x坐标

E——曲线段起点的y坐标

F——曲线段起点的坐标方位角

P——曲线段起点的曲率(半径倒数,直线为0,左负右正)

Q——曲线段终点的曲率(半径倒数,直线为0,左负右正)

L——曲线段长度(尽量使用长度,为计算断链方便)

说明:

(1)本篇程序基于本人创作的程序集中的第5篇改编,第5篇中反算主程序的第3、6行分别改写为本篇中的第4、7行,原第5篇部分变量符号已做调整。

(2)坐标计算子程序为通用程序,可自编程序随时调用,数据库可更改适合可变项目的测量数据。

(3)适用于任意线形:直线(0→P、0→Q)、圆曲线(圆半径倒数→P、圆半径倒数→Q)、缓和曲线(0或圆半径倒数→P、圆半径倒数或0→Q)、卵形曲线(接起点圆的半径倒数→P、接终点圆的半径倒数→Q),曲线左转多加一负号。

(4)程序规定,左偏曲线曲率输入负值,右偏曲线曲率输入正值,直线上点曲率输入0。

(5)本程序精度较高,不受曲线半径大小影响,即使极小半径的螺旋曲线等误差仅为万分之一(0.1mm),可以忽略。

(6)反算桩号偏差为1mm

(7)本程序适用于单个线元转角小于180的情况(大于180度有两个结果,只能计算一个)。

第二篇:5800万能坐标正反算程序(超短型)

卡西欧5800任意线元坐标正反算程序(包括直线,圆曲线,缓和曲线正算及反算)

“A=?,NEW=0,OLD≠0”?A: A≠0=>Goto S:“O=”?O:“U=”?U:“V=”?V:“G=”?G:“H=”?H:“P=”?P:“R=”?R:“Q=”?Q: Lbl S :Fix 3:7→DimZ:1÷P→C:(P-R)÷(2HPR)→D:180÷∏→E:“1=>ZS,2=>FS”?N:If N=1:Then“Z-H=”?S:“-L,+R=”?Z: S-O→W:If W<0 or W>H:Then“=>ERROR!”◢ Goto S:IfEnd:Else “X=”?X:“Y=”?Y:X→I:Y→J:G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T)→W:0→Z:IfEnd:Lbl A:0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:

U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→Z[5]:

V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Z[6]:G+QEW(C+WD)+90→F:Z[5]+Zcos(F)→Z[5]:Z[6]+Zsin(F)→Z[6]: T+QEW(C+WD)→L:(J-Z[6])cos(L)-(I-Z[5])sin(L)→Z:If N=1:Then“FWJ=”:F-90◣DMS◢“X=”:Z[5]→X◢“Y=”:Z[6]→Y◢Goto S:IfEnd:If Abs(Z)<0.00001:Then(J-Z[6])÷sin(F)→Z:O+W→S:Else W+Z→W:Goto A:IfEnd:If SO+H:Then“=>ERROR!”◢Goto S:IfEnd:“Z-H=”:S◢“-L,+R=”:Z◢Goto S

说明:A:等于0为输入新的线元参数数据,反之进入坐标正反算。

O:线元起点桩号。U:线元起点X坐标。V:线元起点Y坐标。

G:线元起点切线方位角。H:线元长度。

P: 线元起点半径。R: 线元终点半径。

Q:偏转系数(左偏输入-1,右偏输入1)。

45注:半径为0时,输入10×10。直线偏转系数输入0。

本程序占用764字节。输入之前与输入之后分别查看剩余内存,两者之差不等于764,说明输入有误!

下载第十五篇任意斜交角度坐标反算通用程序word格式文档
下载第十五篇任意斜交角度坐标反算通用程序.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐