中易网

如果我有平曲线和竖曲线要素表,哪位大哥可以帮我编辑成5800程序么!K ky 可以发我不 谢谢了!

答案:2  悬赏:20  
解决时间 2021-01-28 06:53
如果我有平曲线和竖曲线要素表,哪位大哥可以帮我编辑成5800程序么!K ky 可以发我不 谢谢了!
最佳答案

(坐标正反算,程序模块化设计,可自行升级,扩展功能)
建议录入程序次序
KEYLOCK  锁键程序 可独立测试能正常运行 1
DISPLAYXYZ  主程序  可独立测试能正常运行 2
READDAT    要素数据库文件 (请改为自已路线的要素) 3
ZBJS      坐标计算程序 4
INZHANDZBJS  桩号、横距输入程序 5
TURNZH     坐标反算  6
INNEZ      实测坐标输入程序  7

如正确输入以上程序,运行DISPLAYXYZ,按“0”进行坐标反算,按“.”进行坐标正算。

技术支持:Q285507730

FileName:INZHANDZBJS
//:桩号、横距输入程序://

Lbl S
Cls:Norm 1
"ZH"?G ;桩求桩号
"JL"?B ;输入横向距离
"JJ"?W ;输入斜桩角,一般为90
Wπ÷180→W
Prog"ZBJS" ;080702晚添加
Return

FileName:ZBJS 坐标计算程序
Prog"READDAT"
Rad
G-M→Q
0.5(R-A)÷L→K
AQ→I
KQ2→J
0.0469100770→P:H+IP+JP2→O
0.2307653449→P:H+IP+JP2→T
0.5→P :H+IP+JP2→D
0.7692346551→P:H+IP+JP2→F
0.9530899230→P:H+IP+JP2→P
0.1184634425→I
0.2393143352→J
0.2844444444→Y
N+Q(ICos(O)+JCos(T)+YCos(D)+JCos(F)+ICos(P))→X
E+Q(ISin(O)+JSin(T)+YSin(D)+JSin(F)+ISin(P))→Y
H+AQ+KQ2→F
X+BCos(F+W)→X
Y+BSin(F+W)→Y
Return

FileName:TURNZH(坐标反算)
Prog"INNEZ"
0→B:M+L÷2→G:Prog"ZBJS"
Lbi S:Rad
U-X→I:V-Y→J
If I=0 And J=0 :Then Goto A:IfEnd
Pol(I,J)
Lbi A:Rec(I,J-F)
G+I→G:IF Abs(I)>0.0001 :Then Prog"ZBJS":Goto S↙
J→B

FileName:INNEZ 实测坐标输入程序
Lbl S
Norm 1:Cls
"DQD-N"?U 输入待求点N坐标
"DQD-E"?V 输入待求点E坐标
Return

FileName:KEYLOCK
//:本程序用于锁定键盘大部分按键,设定时间内无按键则反回默认健。只有“0”,“.”,“x10x”,“(-)”这四个键可用,为了更方便说明程序,以后将分别定义这四个键为热键
“0” ===F1
“.” ===F2
“x10x” ===F3
“(-)” ===F4
Exit 退出程序
://

1000→J ;无按键时间,5800设1000时大约为50秒。
Lbl S
0→I
Do:I+1→I:I≥J=>Goto E:LpWhile Not(Getkey=25 Or Getkey=26 OrGetkey=27 OrGetkey=57 OrGetkey=73)
Getkey=73=>Stop ;停止全部程序
Getkey=0=>Goto S
Getkey→I:Return
Lbl E
57→I:Retrutn ;默认按键值为F4

FileName:DISPLAYXYZ
//:<主程序>,显示:桩号,N,E,Z,横向偏移。

热键功能

F1 快捷坐标反算
F2 快捷坐标正算
F3
F4
://

7→DimZ
Z[1]→N 当前分段要素N坐标
Z[2]→E 当前分段要素E坐标
Z[3]→M 当前分段要素起点桩号
Z[4]→H 当前分段要素起点方位角(正北)单位:弧度
Z[5]→A 当前分段要素起点曲率有左偏负右偏正(注意不是半径)
Z[6]→R 当前分段要素终点曲率有左偏负右偏正(注意不是半径)
Z[7]→L 当前分段要素长度

Lbl S:Cls:Fix 3
"ZH=":Locate 4,1,G
"N=":Locate 3,2,X
"E=":Locate 3,3,Y
"Z":Locate 2,4,Z   注意,本程序无高程计算。所以这句无意义。
Locate 10,4,B
Prog "KEYLOCK"
If I=25:Then Prog "TURNZH":Goto S:IfEnd ;定义F1功能
If I=26:Then Prog "INZHANDZBJS":Goto S:IfEnd ;定义F2功能
Goto S

FileName:READDAT 要素数据库文件
π÷180→J
GM+L=>Goto 1
Return

Lbi 1
If G<30008.396:Then Cls:Stop:IfEnd↙ ;判断待求桩号是否小于本要素起点,如小于就停止运行程序

If G<30661.038(终点里程):Then 2851422.090(起点X)→N:513896.440(起点Y)→E:30008.396→M:213°32′52″J(起点方位角)→H:0 (起点曲率)→A:0(终点曲率)→R:652.642起点至终点长度→L:Goto E:IfEnd↙
If G<30921.038:Then 2850878.162→N:513535.768→E:30661.038→M:213°32′52″J→H:0→A:1÷1300→R:260→L:Goto E:IfEnd↙
If G<31426.367:Then 2850666.478→N:513385.004→E:30921.038→M:219°16′39″J→H:1÷1300→A:1÷1300→R:505.328→L:Goto E:IfEnd↙
If G<31686.367:Then 2850346.483→N:512998.015→E:31426.367→M:241°32′56″J→H:1÷1300→A:0→R:260→L:Goto E:IfEnd↙

If G>31686.367:Then Cls:Stop:IfEnd↙ ;判断待求桩号是否大于本要素终点,如大于就停止运行程序
Lbi E
N→Z[1]:E→Z[1]:M→Z[3]:H→[4]:A→Z[5]:R→Z[6]:L→Z[7] ;记忆当前要素以免重复搜索
Return
全部回答
我暂时保留我的看法!
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
asp Submit按钮提交事件
从鹤岗到萝北打车多少钱?
您好,又来麻烦您了,我想问下,办公室职员,
自己一人去海南合适吗
我男朋友家太穷怎么办?
怎样能进入NEOTV或是类似的游戏直播的团队呢
求下列二次方程的根:9x^2-16=0要过程
人和旅馆(邯郸磁县)地址好找么,我有些事要过
一篇好argument essay怎么写?
信用卡申请显示未申请或资料为到什么意思
七年相与犹一日,万里偕还分两岐.什么意思
秦安五中可以学舞蹈吗?有什么要求?
49×4-□×9=(49-□)×□
世界战功史上著名的女狙击手叫什么名字
残留在葱上的磷肥怎么洗掉
推荐资讯
求一首老歌,里面歌词有(伤心的女人),好像
求日本纯女子乐队 不要纯组合 注意是乐队
为什么担任过本案的证人、鉴定人、辩护人、诉
怎样才能检查出老公有没有在外面睡女人
红苹果二代漠盾净水器价格
为什么说2000年是华语音乐的黄金时代
什么是战锤(对那些想入坑又不知道战锤是什么
霸州市哪里办健康证
太平洋保险有哪些理财产品
国家强制企业为员工购买社保,这些企业是指大
蒲公英丽水有吗
什么时候去贡嘎山最好
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?