【KAIXIN】 发表于 2011-12-11 10:51:44

减数程序(源码)(参考学习用)

本帖最后由 【KAIXIN】 于 2012-4-18 18:24 编辑


**** Hidden Message *****



http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 【KAIXIN】的微博

tensir 发表于 2024-7-9 13:11:48

感谢作者的分享!

lioun4105 发表于 2017-10-31 01:12:53

正好需要,谢谢

vlisp2012 发表于 2011-12-11 11:34:43

呵呵,很好很强大。

梦与现实交替 发表于 2011-12-12 10:18:02

真好 真好啊

434939575 发表于 2012-1-19 23:03:23

极品好源码可惜我水平低

guanxin5325637 发表于 2012-6-27 21:59:44

谢谢分享了!

dalin1985 发表于 2012-6-27 22:42:10

下来学习一下

峰峰兒 发表于 2012-6-28 07:40:21

yoyoho 发表于 2012-6-28 07:42:34

感谢分享学习!

qcw911 发表于 2012-6-28 08:06:11

感谢分享学习!

叮咚 发表于 2012-6-28 08:39:36

本帖最后由 叮咚 于 2012-6-28 09:32 编辑

看看。学习一下

改了一下,整了个循环

;功能: 在屏幕上点取两个数, 用第一个数减去第二个数,并放回第二个数的地方, 保留两位小数
(defun C:KK (/ ent1 el1 ent2 el2 txt1 txt2 txt ent)
(setvar "CMDECHO" 0)
(setq ent1 (car (entsel "\n请选取第一个数:<Exit>")))
(if (/= ent1 nil)
    (progn
      (setq el1 (entget ent1))
      (if (= "TEXT" (cdr (assoc 0 el1)))
        (progn
          (setq txt1 (cdr (assoc 1 el1)))
          (setq n 1)
          (while (/= n nil)
          (setq ent2 (car (entsel "\n请选取第二个数:<Exit>")))

          (if        (/= ent2 nil)
              (progn
                (setq el2 (entget ent2))
                (if (= "TEXT" (cdr (assoc 0 el2)))
                  (progn
                  (setq txt2 (cdr (assoc 1 el2)))
                  (setq txt (rtos (- (atof txt1) (atof txt2)) 2 2))
                  (setq ent (subst (cons 1 txt) (assoc 1 el2) el2))
                  (entmod ent)
                  )
                  (princ "\n第二个数不是文字,请重选:")
                )
              )
              (setq n nil)
          )

                                        ; (if (= ent2 nil) (setq n nil))
          )
        )
        (progn
          (princ "\n第一个数不是文字,请重选:")
          (c:kk)
        )
      )
    )
)
(redraw)
(princ)
)

页: [1] 2 3 4 5
查看完整版本: 减数程序(源码)(参考学习用)