明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 725|回复: 1

[提问] 请教如何让这个程序重复的标注也能计算

[复制链接]
发表于 2015-4-30 17:50:51 | 显示全部楼层 |阅读模式
;★★请教如何让这个程序重复的标注也能计算,如选择两个2000,1个3000,显示2000+2000+3000,而不是现在的2000+3000★★


(defun c:qq (/ fuh i num obj ss str str1 tt)
  (vl-load-com)
  (setq ss (ssget '((0 . "DIMENSION"))))
  (setq fuh "+")
  (while (not (member (setq tt (getstring "\n请输入运算符号[加(+)/乘(*)] < + >:"))
                      '("*" "+"
                       ""
                      )
              )
         )
  )
  (if (/= tt "")
    (setq fuh tt)
  )
  (if (= fuh "+")
    (setq num 0)
    (setq num 1)
  )
  (setq str ""
        i 0
  )
  (repeat (sslength ss)
    (setq obj (vlax-ename->vla-object (ssname ss i))
          str1 (vla-get-measurement obj)
          i (1+ i)
    )
    (if (= fuh "+")
      (setq num (+ num str1)
            str (strcat str (if (= i 1)
                              ""
                              "+"
                            ) (rtos str1 2 3)
                )
      )
      (setq num (* num str1)
            str (strcat str (if (= i 1)
                              ""
                              "*"
                            ) (rtos str1 2 3)
                )
      )
    )
  )
  (setq num (/ num 1000.0))
  (entmake (list '(0 . "TEXT") (cons 1 (strcat str "=" (rtos num 2 3)"米"))
                 (cons 10 (getpoint "选择插入点")) (cons 40 (*
                                                               (vla-get-textheight obj)
                                                               (vla-get-scalefactor obj)
                                                            )
                                                   )
           )
  )
  (princ)
)
发表于 2015-5-1 15:21:51 | 显示全部楼层
  1. ;统计表中原子个数.
  2. (defun cx-lst-tj(lst / a tt n)
  3.   (while lst
  4.           (setq n(length lst)a(car lst))
  5.           (setq lst(vl-remove a lst))
  6.           (setq tt (cons(list a(- n (length lst)))tt)))
  7. )

点评

风牛马不相及  发表于 2015-5-1 16:26
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-22 03:57 , Processed in 0.167049 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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