我爱你王子呀 发表于 2015-9-19 18:20:10

动态画直线的代码问题

我想编写一个动态画直线的程序。这是小弟写的一个测试代码,为什么每次运行的时候,CAD都会死机,还望大神们赐教

(defun C:ceshi(/ en gr grm pt pt1 grzb)
(setq pt1 (getpoint))
(command "line" pt1 '(20 20) "")
(setq en (entlast))
(setq en (entget en))
(setq gr (grread T 8))


(setq grm 0)
(while (/= grm 3)
    (setq grzb (cadr gr) grm (car gr))
    (setq pt grzb)
    (setq en (subst (cons 10 pt) (assoc 10 en) en))
    (entmod en)
)
)

我爱你王子呀 发表于 2015-9-19 18:26:56

似乎是没有设置循环中断

我爱你王子呀 发表于 2015-9-19 18:30:51

好像应该是 grm 等于5的时候 才进行操作

springwillow 发表于 2015-9-19 20:13:43

必须死机,你的/= grm 3是时刻满足的,肯定死循环

xyp1964 发表于 2015-9-20 17:34:28

(defun c:tt ()
(while (setq p1 (getpoint "\n基点<退出>: "))
    (command "line" "non" p1 "non" '(20 20) "")
    (setq en (entget (entlast))
          mode t
    )
    (while mode
      (setq mo (grread t 15 0))
      (cond ((member (car mo) '(2 3 25 32)) (setq mode nil))
          (t (entmod (subst (cons 10 (cadr mo)) (assoc 10 en) en)))
      )
    )
)
(princ)
)

我爱你王子呀 发表于 2015-9-20 20:26:17

springwillow 发表于 2015-9-19 20:13 static/image/common/back.gif
必须死机,你的/= grm 3是时刻满足的,肯定死循环

大神一语道破天机,拜谢啦

我爱你王子呀 发表于 2015-9-20 20:27:14

xyp1964 发表于 2015-9-20 17:34 static/image/common/back.gif


好哒, 谢谢啦,谢谢大神百忙之中抽出时间亲自编写修改,研究大神的程序……

tianbeiyuan 发表于 2019-11-24 20:37:39

这个东西有什么用啊
页: [1]
查看完整版本: 动态画直线的代码问题