找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3802|回复: 8

[求助]:从鸿业市政道路原始地面横断面线的文件中提取EICAD中的纵地面线文件

[复制链接]
发表于 2008-10-28 15:09:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
在鸿业中数据为:
k0
0 214.3               
-46.65 222.5               
23.44 210
30 208.9
31 207.54
44.04 207.54
45 206.34
50 205.9
58.85 205   
则在EICAD中相应的一行为:
0  214.3
即桩号为K后面的数据,高程为第二行中0后面的数据,其他的也这样
测试文件见附件
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2008-10-28 16:30:45 | 显示全部楼层

  1. (defun c:tt (/ txt fl ll lst)
  2.   (if (setq txt (getfiled "Select HDM file" "" "txt" 8))
  3.     (progn
  4.       (setq fl (open (findfile txt) "r"))
  5.       (while (setq str (read-line fl))
  6.         (setq ll (cons str ll))
  7.       )
  8.       (close fl)
  9.       (setq ll (reverse ll))
  10.       (while ll
  11.         (if (= (strcase (substr (car ll) 1 1))
  12.                "K"
  13.             )
  14.           (setq        lst (cons (list (car ll) (cadr ll)) lst)
  15.                 ll  (cddr ll)
  16.           )
  17.           (setq ll (cdr ll))
  18.         )
  19.       )
  20.       (princ lst)
  21.     )
  22.   )
  23.   (princ)
  24. )

点评

大师,有个cass横断面数据,能不能通过lisp转换为 纬地hdm数据啊? cass数据 BEGIN,0.000:1 -25.000,4.100 -20.000,4.135 -15.000,4.388 -10.000,4.779 -5.000,5.170 0.000,5.561 5.000,5.951 10.000,6.  详情 回复 发表于 2020-8-2 07:38
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-28 17:13:20 | 显示全部楼层
我是要求产生一个文本文件,其内容如下:

0 214.3
20 215.2
40 214.8
60 215.8
80 218.6
100 223.1
120 220.3
140 214.7
160 209.33
180 207.18
200 209.6
220 210.4
240 207.31
260 200.32
280 199.94
300 199.49
320 200.45
340 199.73
360 199.56
380 198.96
400 199.23
420 199.26
440 199.24
460 199.26
480 199.31
500 199.42
520 199.44
540 199.55
560 199.45
580 199.46
600 199.33
620 199.33
640 199.3
660 199.12
680 199.1
700 198.95
720 199.2
740 199.52
760 199.94
780 200.4
800 200.93
820 200.26
840 201.7
860 202.1
880 202.65
900 203.22
920 203.7
940 204.94
960 205.8
980 207.3
1000 208.65
1020 209.98
1040 211.27
1060 211.14
1080 213.48
1100 214.13
1120 208.34
1140 210.2
1160 214.77
1180 215.12
1200 215.11
1220 214.72
1240 208.813
1260 204
1280 211.2
1300 213.46
1320 216.2
1340 215.7
1360 215.7
1380 217.43
1400 218.36
1420 216.14
1440 216
1460 216
1480 217.6
1500 218.6
1520 222.3
1540 222.4
1560 222.7
1580 219.18
1600 222.01
1620 219.98
1640 220.13
1660 220.67
1680 220.8
1700 222.2
1720 216.07
1740 221.29
1760 222.5
1780 224
1800 223.5
1820 221.8
1840 221.8
1860 221.03
1880 221.3
1900 221.13
1920 223.4
1940 223.8
1950 224.2
而你的程序产生的是一些数据,还不是文件
((k1950   0 224.2           ) (k1940   0 223.8             ) (k1920   0 223.4   
          ) (k1900  0 221.13            ) (k1880   0 221.3           ) (k1860   
0 221.03           ) (k1840   0 221.8           ) (k1820   0 221.8           )
(k1800    0 223.5          ) (k1780   0 224           ) (k1760   0 222.5        
   ) (k1740    0 221.29          ) (k1720   0 216.07           ) (k1700   0
222.2      ) (k1680   0 220.8       ) (k1660   0 220.67       ) (k1640  0
220.13        ) (k1620   0 219.98       ) (k1600   0 222.01       ) (k1580   0
219.18       ) (k1560  0 222.7        ) (k1540 0 222.4        ) (k1520   0
222.3      ) (k1500  0 218.6        ) (k1480  0 217.6      ) (k1460  0 216      
) (k1440  0 216      ) (k1420  0 216.14      ) (k1400  0 218.36      ) (k1380 0
217.43       ) (k1360 0 215.7) (k1340 0 215.7) (k1320 0 216.2) (k1300 0 213.46)
(k1280  0 211.2      ) (k1260 0 204) (k1240 0 208.813) (k1220 0 214.72) (k1200
0 215.11) (k1180 0 215.12) (k1160 0 214.77) (k1140 0 210.2) (k1120 0 208.34)
(k1100 0 214.13) (k1080 0 213.48) (k1060 0 211.14) (k1040 0 211.27       )
(k1020 0 209.98       ) (k1000 0 208.65       ) (k980 0 207.3       ) (k960 0
205.8       ) (k940  0 204.94            ) (k920 0 203.7             ) (k900 0
203.22             ) (k880 0 202.65             ) (k860 0 202.1             )
(k840 0 201.7               ) (k820 0 200.26               ) (k800 0 200.93     
         ) (k780  0 200.4              ) (k760  0 199.94              ) (k740 0
199.52     ) (k720 0 199.2     ) (k700 0 198.95     ) (k680 0 199.1    ) (k660
0 199.12     ) (k640  0 199.3    ) (k620 0 199.33       ) (k600 0 199.33      
) (k580 0 199.46       ) (k560 0 199.45       ) (k540 0 199.55       ) (k520 0
199.44       ) (k500 0 199.42       ) (k480 0 199.31       ) (k460 0 199.26     
  ) (k440 0 199.24       ) (k420 0 199.26       ) (k400 0 199.23      ) (k380 0
198.96      ) (k360  0 199.56      ) (k340 0 199.73       ) (k320 0 200.45      
) (k300 0 199.49         ) (k280 0 199.94        ) (k260  0 200.32        )
(k240 0 207.31         ) (k220 0 210.4         ) (k200 0 209.6            )
(k180 0 207.18             ) (k160 0 209.33             ) (k140 0 214.7         
   ) (k120 0 220.3) (k100 0 223.1              ) (k80 0 218.6                )
(k60  0 215.8               ) (k40                 0 214.8) (k20 0 215.2        
       ) (k0 0 214.3                ))
我要求产生的文件见附件
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-10-29 11:36:23 | 显示全部楼层
这么简单了还不会自己写?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-30 10:24:49 | 显示全部楼层
我对函数不熟悉
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 111个

财富等级: 日进斗金

发表于 2008-11-16 21:24:44 | 显示全部楼层

  1. (defun c:test ()
  2.   (if (setq wjm  (getfiled "请选择横断面数据文件" "" "txt" 8))
  3.       (progn
  4.          (setq n 1)
  5.          (while (findfile (setq cpwj (strcat (substr wjm 1 (- (strlen wjm) 4)) "提取结果" (itoa n) ".txt")))
  6.              (setq n (1+ n))
  7.          )
  8.          (setq wj1 (open wjm  "r")
  9.                wj2 (open cpwj "w")
  10.          )
  11.          (while (setq zfc (read-line wj1))
  12.              (cond ((wcmatch zfc "k*,K*")
  13.                        (setq lch (strcat (substr zfc 2) " "))
  14.                    )
  15.                    ((wcmatch zfc "0 *")
  16.                        (princ (strcat lch (rtos (cadr (read (strcat "(" zfc ")")))) "\n") wj2)
  17.                    )
  18.              )
  19.          )
  20.          (close wj1)(close wj2)
  21.      )  
  22.   )
  23.   (princ (strcat "提取结果已存于:" cpwj))
  24. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-12-14 20:35:43 | 显示全部楼层
怎么都是LISP写的啊,没有C++的么
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2020-8-2 07:38:57 | 显示全部楼层
本帖最后由 f4800 于 2020-8-2 07:40 编辑

大师,有个cass横断面数据,能不能通过lisp转换为 纬地hdm数据啊?
请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:1.CASS范本文件.hdm.txt 
下载次数:2  文件大小:14.72 KB 
下载权限: 不限 以上  [免费赚D豆]



请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:2.转换后的纬地数据.hdm.txt 
下载次数:2  文件大小:14.13 KB 
下载权限: 不限 以上  [免费赚D豆]



cass数据
BEGIN,0.000:1
-25.000,4.100
-20.000,4.135
-15.000,4.388
-10.000,4.779
-5.000,5.170
0.000,5.561
5.000,5.951
10.000,6.421
15.000,7.104
20.000,7.198
25.000,7.191
BEGIN,25.000:2
-25.000,3.879
-20.000,4.270
-15.000,4.661
-10.000,5.052
-5.000,5.443
0.000,5.833
5.000,6.224
10.000,6.827
15.000,6.922
20.000,6.915
25.000,6.905

纬地数据(前面的那组数据表示本组的数据组数)
0.000
5            5            -0.39            5            -0.39            5            -0.39            5            -0.25            5            -0.04
5            5            0.39            5            0.47            5            0.68            5            0.09            5            -0.01
25.000
5            5            -0.39            5            -0.39            5            -0.39            5            -0.39            5            -0.39
5            5            0.39            5            0.6            5            0.09            5            -0.01            5            -0.01
50.000
5            5            -0.39            5            -0.39            5            -0.39            5            -0.39            5            -0.21
5            5            0.45            5            0.09            5            -0.01            5            -0.01            5            -0.01
75.000
5            5            0.65            5            1.25            5            0.34            5            -0.13            5            -0.11
5            5            0.32            5            0.23            5            0.67            5            0.76            5            0.51
100.000
5            5            -0.26            5            1.38            5            0.34            5            0.41            5            0.04
5            5            0.26            5            0.26            5            0.26            5            0.26            5            0.2
125.000
5            5            -0.16            5            -0.15            5            0.59            5            0.23            5            0.23
5            5            0.15            5            0.16            5            0.16            5            0.16            5            0.18
150.000
5            5            -0.77            5            1.91            5            0.25            5            0.03            5            0.05
5            5            0.77            5            0.77            5            0.77            5            0.76            5            -0.01
175.000
5            5            -0.13            5            0.46            5            0.28            5            0.01            5            0
5            5            0.16            5            0.16            5            0.16            5            0.58            5            0.15

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 33个

财富等级: 招财进宝

发表于 2022-6-6 07:59:46 | 显示全部楼层
感谢分享,学习
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-27 04:56 , Processed in 0.286215 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表