本帖最后由 springwillow 于 2013-7-10 18:49 编辑
skyahai 发表于 2013-7-10 14:37 
组码51的值在哪里修改,谢谢!
不知道你对lisp理解到什么程度了,编辑组码应该是最基本的吧,一两句也说不太清楚,你还是找些资料去学一下吧。
提供一个参考 - (defun c:bzzl ( / a en1 ent len n newang oldang s ss)
- (setvar "CMDECHO" 0)
- (if (setq ss (ssget '((0 . "DIMENSION"))))
- (progn
- (setq len (sslength ss))
- (setq n 1
- s 1
- )
- (while (<= n len)
- (setq en1 (ssname ss (1- n)))
- (setq a (entget en1))
- (setq oldang (cdr (assoc 51 a)))
- (cond ((>= oldang (/ pi 2))
- (setq newang (- oldang pi))
- (setq ent (subst (cons 51 newang) (assoc 51 a) a))
- )
- ((<= oldang (/ pi -2))
- (setq newang (+ oldang pi))
- (setq ent (subst (cons 51 newang) (assoc 51 a) a))
- )
- )
- (entmod ent)
- (setq n (1+ n))
- )
- )
- )
- )
|