找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 562|回复: 8

[LISP程序]:班竹及大虾急救!!关于扩展数据提取!!??

[复制链接]
发表于 2005-9-19 16:49:40 | 显示全部楼层 |阅读模式

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

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

×
各位班竹及大虾:小弟的文件中的扩展数据在dxf文件中的格式如下:

......................

23443.81598752924
1001
SOUTH
1000
300000
1000
CH520325
1000
成都市干道建设指挥部
1000
251
  0
LINE
  5
1D621A
102
{ACAD_REACTORS

........................

我怎样用lisp写程序将三项扩展数据提取出来写成文本文件,感谢!!!急!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-9-19 17:35:27 | 显示全部楼层
如果是dxf直接改txt文本就可以了。
用程序,可以用 open,read-line,princ,write-line。close等函数。看看cad的帮助,最好自己写出来
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-20 08:11:49 | 显示全部楼层
最初由 狂刀 发布
[B]如果是dxf直接改txt文本就可以了。
用程序,可以用 open,read-line,princ,write-line。close等函数。看看cad的帮助,最好自己写出来 [/B]



我要一次将四个扩展数据(1000
300000
1000
CH520325
1000
成都市干道建设指挥部
1000
251)全部提取出来!还是不会,望各位大虾指点!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2005-9-20 14:32:43 | 显示全部楼层
最初由 xyp1964 发布
[B]把dxf文件发上来!
生成文件的格式? [/B]


从dxf格式文件中提取:
提取文件1:

点号,X ,Y,界址点类型
例:
1,62804.63,54403.49,4
2,62815.39,54402.73,4
3,62847.54,54389.97,4
4,62859.45,54338.56,4
......

提取文件2:
宗地地籍号,地类号,点数,点号1,...点号n,土地使用者名称
例:
JN1-8-1,246,19,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,福利院
JN1-8-2,221,10,20,21,23,22,25,24,26,29,28,27,加工厂
JN1-8-3,284,8,30,31,37,36,35,34,33,32, 教养所
......
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-9-20 16:55:07 | 显示全部楼层
  1. [FONT=courier new](load "xyp_lib")
  2. ;|加载通用函数(可在签名栏直接下载)
  3. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  4. 利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
  5. 1.在acad.lsp中增加(load"xyp_lib")
  6. 2.在每个程序内增加(load"xyp_lib")
  7. 3.在command下,输入(load"xyp_lib")
  8. 4.在菜单.mnl中增加(load"xyp_lib")
  9. 5.将xyp_lib.vlx文件直接拽到cad屏幕
  10. [COLOR=red] ★通用函数下载地址:[/COLOR][url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]|;

  11. ;;;dxf扩展数据提取
  12. (defun c:test ()
  13.   (CMDLA0)
  14.   (setq        ff-dxf (getfiled "\n已有dxf文件" "" "dxf" 8)
  15.         f-dxf  (open ff-dxf "r")
  16.         ff-txt (getfiled "\n拟保存的扩展数据文件" "扩展数据" "txt" 1)
  17.         f-txt  (open ff-txt "w")
  18.   )
  19.   (while (setq tx (read-line f-dxf))
  20.     (if        (= tx "1000")
  21.       (progn
  22.         (setq tx (read-line f-dxf))
  23.         (if (and (/= tx "301000")
  24.                                         ;(/= tx "300000")
  25.                  (/= tx "SimSun")
  26.                  (/= tx "文鼎CS细等线")
  27.             )
  28.           (write-line tx f-txt)
  29.         )
  30.       )
  31.     )
  32.   )
  33.   (close f-dxf)
  34.   (close f-txt)
  35.   (princ (strcat "\n扩展数据写至=>" ff-txt))
  36.   (CMDLA1)
  37. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-20 17:41:34 | 显示全部楼层
最初由 xyp1964 发布
[B][CODE](load "xyp_lib")
;|加载通用函数(可在签名栏直接下载)
如果已经下载xyp_lib并放到搜索路径下可以不再下载!
利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
1.在acad.ls... [/B]


非常感谢斑竹,斑竹,您能否将您的xyp_lib.VLX的源代码公开让我们学习一下!当然,如果不方便就算了!再次感谢您!
再有一个问题就是,您是直接读取dxf文件进行提取的,我想问的是,如果在dwg文件中,有很多的元素,我只要求提取已选择(利用选择集操作)的元素的扩展属性怎么办?也就是要提取单个元素的扩展属性!谢谢斑竹!王答复!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-9-22 01:10:24 | 显示全部楼层
奇怪,我发的帖子没上来。重新打上。

建议你用ldata。在论坛里面搜搜,现成的内部函数可用,或者到autodesk讨论组搜索,
用“ldata”,尤其对这种多数据的记录,简便许多。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-9-22 11:46:39 | 显示全部楼层
最初由 petertian 发布
[B][QUOTE]最初由 xyp1964 发布
[B][CODE](load "xyp_lib")
;|加载通用函数(可在签名栏直接下载)
如果已经下载xyp_lib并放到搜索路径下可以不再下载!
利用以下任何一种方式即可加载和运?.. [/B]

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 15:46 , Processed in 0.201088 second(s), 49 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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