szxgsh 发表于 2013-6-22 11:47:29

经过的高手驻足指导修改一下!无限感激!

这个是老迈写的小程序,我想改一下里面的东西:

(defun C:test ( / old_cmd index ss ent )
(mai_start nil)
(princ "\n选择要修改的尺寸线:")
(if (not (setq ss (ssget '((0 . "*dim*"))))) (exit))
(setq index 0)
;(setq txt (getstring "\n输入新尺寸值:"))
(repeat (sslength ss)
    (setq ent (entget (ssname ss index))
   index (+ 1 index)
   )
    (entmod (subst (cons 1 "%%p<>") (assoc 1 ent) ent))
    )
(mai_end)
)

我想把里面的“%%p”可以换成汉字,比如“迷你”、“明经”,该怎么改?
俺刚学lisp,水平太低,我直接替换,好像用不了。

革天明 发表于 2013-6-22 12:50:37

(defun C:test (/ old_cmd index ss ent)
(princ "\n选择要修改的尺寸线:")
(if (not (setq ss (ssget '((0 . "*dim*")))))
    (exit)
)
(setq index 0)
(setq txt (getstring "\n输入新尺寸值:"))
(repeat (sslength ss)
    (setq ent (entget (ssname ss index))
   index (+ 1 index)
    )
    (entmod (subst (cons 1 (strcat txt "<>")) (assoc 1 ent) ent)
    )
)
)

只用修改这两名就可以了,想了解更多可以继续发贴问。

szxgsh 发表于 2013-6-22 14:15:51

革天明 发表于 2013-6-22 12:50 static/image/common/back.gif
(defun C:test (/ old_cmd index ss ent)
(princ "\n选择要修改的尺寸线:")
(if (not (setq ss (ssge ...

已经OK了,多谢指导!

注册 发表于 2013-6-22 21:06:56

szxgsh 发表于 2013-6-22 14:15 static/image/common/back.gif
已经OK了,多谢指导!

群里没解决,还是跑到明经来好啊

szxgsh 发表于 2013-6-22 21:13:37

注册 发表于 2013-6-22 21:06 static/image/common/back.gif
群里没解决,还是跑到明经来好啊

(^_^)
群里只是一口湖,论坛才是一片海!

香田里浪人 发表于 2013-6-23 20:26:03

好像不能消除旧标注,-----新旧标注并存。

香田里浪人 发表于 2013-6-24 13:23:09

(defun C:test (/ old_cmd index ss ent)
(princ "\n选择要修改的尺寸线:")
(if (not (setq ss (ssget '((0 . "*dim*")))))
    (exit)
)
(setq index 0)
(setq txt (getstring "\n输入新尺寸值:"))
(repeat (sslength ss)
    (setq ent (entget (ssname ss index))
   index (+ 1 index)
    )
    (entmod (subst (cons 1 (strcat txt " ")) (assoc 1 ent) ent)
    )
)
)

可以用了

669423907 发表于 2013-6-24 14:28:43

06以上的版本,双击尺寸,Ctrl+A,我觉得要快些
页: [1]
查看完整版本: 经过的高手驻足指导修改一下!无限感激!