找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1993|回复: 4

[求助] 查找文字后进行标记

[复制链接]

已领礼包: 4个

财富等级: 恭喜发财

发表于 2014-12-24 10:51:16 | 显示全部楼层 |阅读模式

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

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

×
图形中有许多单行文本,具体内容类似:AA1-11m、AA2-34m、AA34-6m、AA3、AA55等等,要求查找某一文字,并用圆圈将选择的文字圈住,同时统计出文字数量,例如以查找AA34为例,执行命令后,效果如下
1、在命令行内输入或鼠标选择已有的AA34,
2、将选中的AA34画圈做个标记(方便醒目地直观看到)
3、同时得到结果,例如命令行内显示:找到AA34,共**个

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

已领礼包: 2个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2014-12-25 00:49:24 | 显示全部楼层
我写了一个,不一定是最好的,但能实现你需要的功能,希望能帮到你
(defun c:cz(/ aa bb xx yy ss i k os en en_data txt str p1 p2 pc rad)
  (setvar "cmdecho" 0)
  (setq os (getvar "osmode"))
  (setvar "osmode" 0)
  (setq aa (getstring "\n需要选择的文字:"))
  (princ "\n选择文字范围!")
  (setq ss (ssget))
  (setq i 0 k 0)
  (repeat (sslength ss)
    (setq en (ssname ss i))
    (setq en_data (entget en))
    (setq txt (cdr (assoc 0 en_data)))
    (if (= txt "TEXT")
      (progn
        (setq str (cdr (assoc 1 en_data)))
        (if (= str aa)
          (progn
            (setq bb (textbox en_data))
            (setq p1 (cadr bb))
            (setq xx (/ (car p1) 2))
            (setq yy (/ (cadr p1) 2))
            (setq p2 (cdr (assoc 10 en_data)))
            (setq pc (polar (polar p2 0 xx) (/ pi 2) yy))
            (setq rad (sqrt (+ (* xx xx) (* yy yy))))
            (command "circle" pc rad)
            (command "chprop" (entlast) "" "c" 1 "")
            (setq k (1+ k))
          )
        )
      )
    )
    (setq i (1+ i))
  )
  (princ (strcat "\n找到" aa ",共" (itoa k) "个!"))
  (setvar "osmode" os)
  (prin1)
)

点评

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

使用道具 举报

已领礼包: 4个

财富等级: 恭喜发财

 楼主| 发表于 2014-12-25 14:32:22 | 显示全部楼层
LIYOGNZHI 发表于 2014-12-25 00:49
我写了一个,不一定是最好的,但能实现你需要的功能,希望能帮到你
(defun c:cz(/ aa bb xx yy ss i k os  ...

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

使用道具 举报

已领礼包: 4个

财富等级: 恭喜发财

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-9 10:16 , Processed in 0.188944 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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