找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 866|回复: 10

[编程申请]:求肋,请朋友帮忙给编一个统计文本个数的程序

[复制链接]
发表于 2006-11-28 08:56:02 | 显示全部楼层 |阅读模式

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

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

×
如图中的我要知道
7725-18
7736-18
7725-30
…………
各有多少个要如何实现?
先谢谢朋友们了。请帮忙一下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 2个

财富等级: 恭喜发财

发表于 2006-11-28 12:38:59 | 显示全部楼层
你得分析你所要提的对象有何特征,根据这些特征遍历整个图档就行了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 10401个

财富等级: 富甲天下

发表于 2006-11-28 12:59:32 | 显示全部楼层
(SSLENGTH (SSGET "X" '((0 . "*TEXT") (1 . "*-*"))))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2006-11-28 13:29:07 | 显示全部楼层
最初由 zxq0220 发布
[B](SSLENGTH (SSGET "X" '((0 . "*TEXT") (1 . "*-*")))) [/B]

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

使用道具 举报

发表于 2006-11-28 16:05:04 | 显示全部楼层
发一个网上下载的程序用用,把要统计文字放在MC层
(defun c:mcb ( / s e d l0 l lx mcname mccnt flag p1 p2 p3 p4 p5 p6 cs mmb mmb1)

    (setvar "osmode" 0)
    (setq yn "y" l0 (list))
    (while (= yn "y")

        (princ "\n选择范围:")
        (setq s(ssget '((0 . "text")(8 . "mc"))))
        (setq l (list))
    (if s (progn
        (while (> (sslength s) 0)
            (setq d(entget (setq e(ssname s 0))))
            (ssdel e s)
            (setq mcname (cdr(assoc 1 d)) mccnt 1)
            (if (null l)
              (progn
                (setq l(cons (cons mcname mccnt) l))
              )
              (progn
                (setq flag 0)
                (setq lx l)
                (while (and (> (length lx) 0) (= flag 0))
                    (if (= (caar lx) mcname)
                        (setq flag 1)
                        (setq lx (cdr lx))
                    )
                )
                (if (= flag 1)
                  (progn
                    (setq mccnt (1+ (cdr(assoc mcname l))))
                    (setq l (subst (cons mcname mccnt) (assoc mcname l) l))
                  )
                  (setq l(cons (cons mcname mccnt) l))
                )
              )
            )
        ) ; end of while, list l is done
    )) ; end of if

        (if (> (length l) 0) (progn
            (terpri)
            (setq cs(getint "输入层数:"))
            (if (> cs 1) (progn
                (setq lx l)
                (foreach mmb lx (progn
                    (setq mmb1(cons (car mmb) (* cs (cdr mmb))))
                      (setq l(subst mmb1 mmb l))
                ))
            ))
        )) ; end of if, list l * 层数 is done


; put list l into l0
    (if l (progn
        (if (null l0) (setq l0 l) (progn
            (foreach mmb l (progn
                (setq mmb1 (assoc (car mmb) l0))
                (if mmb1
                      (setq l0(subst (cons (car mmb) (+ (cdr mmb) (cdr mmb1))) mmb1 l0))
                    (setq l0 (cons mmb l0))
                ) ;end of if
            )) ; end of foreach
        )) ; end of if
    )) ; end of if

        (initget "y n")
        (setq yn(getkword "继续吗[y/n]?"))
        (if (null yn) (setq yn "y"))

    ) ; end of while

        (setq lx l0)
        (terpri)
        (setq p1(getpoint "点取表格左上角:"))
;        (command "layer" "s" "0" "")
        (while (> (length lx) 0)
            (setq p2(subst (+ (car p1) 3000) (car p1) p1))
            (setq p3(subst (- (cadr p1) 700) (cadr p1) p1))
            (setq p4(subst (+ (car p3) 3000) (car p3) p3))
            (command "line" p1 p2 p4 p3 "c" "")
            (setq p5(subst (+ (car p1) 1000) (car p1) p1))
            (setq p5(subst (- (cadr p5) 600) (cadr p5) p5))
            (command "text" p5 "300" "" (caar lx) "")
            (setq p5(subst (+ (car p2) 3000) (car p2) p2))
            (setq p6(subst (+ (car p4) 3000) (car p4) p4))
            (command "line" p2 p5 p6 p4 "c" "")
            (setq p5(subst (+ (car p2) 1000) (car p2) p2))
            (setq p5(subst (- (cadr p5) 600) (cadr p5) p5))
            (command "text" p5 "300" "" (cdr(car lx)) "")

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

使用道具 举报

 楼主| 发表于 2006-11-29 07:39:44 | 显示全部楼层
首先感谢楼上的朋友提供的程序。
为何我不用使用呢?
选择范围:
选择对象: 指定对角点: 找到 0 个总是这样子请高手给看看是为什么

命令: MCB 未知命令“MCB”。按 F1 查看帮助。

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

使用道具 举报

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

使用道具 举报

已领礼包: 10401个

财富等级: 富甲天下

发表于 2006-11-29 11:22:31 | 显示全部楼层
最初由 zml84 发布
[B]
好像不是要文本对象的个数,而是分别要那个代号所表示的对象的个数。 [/B]

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

使用道具 举报

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

使用道具 举报

发表于 2009-2-19 08:34:20 | 显示全部楼层
最初由 zxq0220 发布
[B](SSLENGTH (SSGET "X" '((0 . "*TEXT") (1 . "*-*")))) [/B]


就用这个就好了! 其中"***"引号里换成你想要搜索的内容,如:
7725-18  就好了。如果你是稍微懂点lisp的话,其它的就不用和你说了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2009-2-19 13:04:15 | 显示全部楼层
仅供参考

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-16 10:29 , Processed in 0.335944 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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