明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3146|回复: 21

帮忙写个查找图形中所有TEXT文本并以.txt格式导出

  [复制链接]
发表于 2005-7-6 19:21 | 显示全部楼层 |阅读模式
把图形中的052、055、056层中所有的单行文本全查找到并以.txt格式导出,其中的单行文本形式有以下几种:ygd-des-y                 dd-897-dde                         8976-71192-887                         FMT-SBC-4F-B         8-97364-524-0         希望各位大大们帮帮小弟这个忙,帮小弟写个完整的源程序。兄弟我在这里谢谢各位大哥、大姐了!!拜托~~~~~~~
发表于 2005-7-6 21:18 | 显示全部楼层
我试试。肯定比较粗糙
发表于 2005-7-6 21:47 | 显示全部楼层
;;;编制:刘黑 .
;;;取得图层所有文本.
(defun GET_LAYER_TEXT (LAYER / I N RESULT SELALL)
(setq RESULT NIL)
(setq SELALL (ssget "X" (list '(0 . "TEXT") (cons 8 LAYER))))
(setq N (sslength SELALL)
I 0
)
(repeat N
(setq RESULT (cons (cdr (assoc 1 (entget (ssname SELALL I)))) RESULT))
(setq I (1+ I))
)
RESULT
) (defun LAYEROUT (LAYER / RESULT FH X)
(setq RESULT (GET_LAYER_TEXT LAYER))
(setq FH (open "C:/textout.txt" "a"))
;;(write-line (strcat "文本搜集" "layer:" LAYER " FH)
(foreach X RESULT (write-line X FH))
(close FH)
) (defun COUT ()
(LAYEROUT "052")
(LAYEROUT "053")
(LAYEROUT "054")
)
发表于 2005-7-6 21:53 | 显示全部楼层
不知道你对格式以及顺序有什么具体要求,所以就这么写了。


涉及到格式和顺序的时候,绝对没有这么简单。
发表于 2005-7-6 21:55 | 显示全部楼层
如果这个要求就行的话,你只需要修改最后那个函数。 (defun COUT ()
(LAYEROUT "052")
(LAYEROUT "055")
(LAYEROUT "056")
)
发表于 2005-7-7 09:41 | 显示全部楼层
楼主提完问题后就跑了,也不说句行不行
 楼主| 发表于 2005-7-7 20:22 | 显示全部楼层
对不起!!我白天上班没时间上网!!只有晚上才能上!谢谢这位朋友帮我解决了这个问题!小弟非常感谢!回帖慢了点!望这位朋友能体谅!!
 楼主| 发表于 2005-7-7 20:26 | 显示全部楼层
上面的程序行~~我刚考了过去试了下!!能查到所有的单文本!!谢谢了!呵呵!
发表于 2005-7-8 12:18 | 显示全部楼层
kaixinmao您好!这个程序你可以再改一改吗?达到这样的功能:把这些ygd-des-y dd-897-dde 8976-71192-887 FMT-SBC-4F-B 8-97364-524-0分别给统计出来。操作过程为:输入命令lout,出现选择光标,点取某字体如ygd-des-y(过滤图层),再窗选图中某一区域,得出(该图层所有不同字体)统计的结果。谢谢!
发表于 2005-7-8 13:18 | 显示全部楼层
我再改改
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-8 06:26 , Processed in 0.313880 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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