语法错误
这段改块颜色程序CAD2020加载时提示:错误,语法错误代码来自菜卷鱼,原帖大家帮我看下这个改图块颜色程序如何完善下! - AutoLISP/Visual LISP 编程技术 - AutoCAD论坛 - 明经CAD社区 - 程序,如何 - Powered by Discuz! (mjtd.com)
自己英文太差搞不定,大佬帮忙看下怎么修改,谢谢!
(defun LM:ApplytoBlockObjects ( blks name func / result )
(setq func (eval func))
(if (not (vl-catch-all-error-p (setq def (vl-catch-all-apply 'vla-item (list blks name)))))
(vlax-for obj def (setq result (cons (func obj) result)))
)
(reverse result)
)
(defun c:bco ( / s col)
(if (= ocol nil)(setq ocol 0))
(princ "\nSelect Block: ")
(if (setq s (ssget "_+.:E:S" '((0 . "INSERT"))))
(progn
(mapcar 'princ (list "\nNumber of color:[<" ocol ">]"))
(prin1)
(setq col(getint ))
(if (/= col nil)(setq ocol col)(setq col ocol))
(LM:ApplytoBlockObjects
(vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
(vla-get-effectivename (vlax-ename->vla-object (ssname s 0)))
'(lambda ( obj ) (vla-put-layer obj "0")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;图层改为0层
)
(LM:ApplytoBlockObjects
(vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
(vla-get-effectivename (vlax-ename->vla-object (ssname s 0)))
'(lambda ( obj ) (vla-put-Color obj col)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;颜色改为Col
)
(LM:ApplytoBlockObjects
(vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
(vla-get-effectivename (vlax-ename->vla-object (ssname s 0)))
'(lambda ( obj ) (vla-put-LinetypeScale obj (getvar 'dimscale))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;顺便改一下线型比例
)
)
)
(princ)
(entmod(entget(ssname s 0)))(princ)
)
(vl-load-com) (princ)
试试这个:
ssyfeng 发表于 2024-3-7 10:56
试试这个:
多谢!可以运行了,:handshake 感谢分享感谢分享感谢分享感谢分享
页:
[1]