lisp调用天正命令参数修改_晓东CAD家园-论坛-LISP/VLISP程序库-[LISP程序]:修改属性块中各属性的特性-可以加一个对话框,由用户输入各属性值,比如增强属性编辑器,请高手指点。 - ...

;;程序名称:修改属性块中各属性的特性

;;执行命令:TT

;;程序功能:将选定的属性块对象中的各属性的特性,如字体、颜色等改变。

;;作者:SUNDYY

;;

(defun c:TT (/ selobjs)

(setq selobjs (ssget))  ;修改用户选择集中属性块的属性

;;(setq selobjs (ssget "X" '((0 . "INSERT"))));自动修改所有属性块的属性

(if (not selobjs)

(princ "\n没有选择对象!")

(change-att selobjs)

)

(princ)

)

(defun change-att (selobjs / ss_count ss_name ss_att)

(vl-load-com)

(setq ss_count 0)

(repeat (sslength selobjs)

(setq ss_name (ssname selobjs ss_count))

(if        (and (setq ss_att (entget ss_name))

(= (cdr (assoc 0 ss_att)) "INSERT")

)

(progn

(if (= (cdr (assoc 66 ss_att)) 1)

(progn                        ;下面是设置属性(针对增强属性编辑器中的文字选项和特性),可以使用变量,由用户输入

(mapcar '(lambda (x)

(vla-put-layer x "text-en")  ;设置层为text-en

(vla-put-color x acbylayer)  ;设置颜色随层

(vla-put-stylename x "ENTXT");设置字体样式为自定义的ENTXT

(vla-put-height x 3)            ;设置字体高度为3,此处可以加一个图纸比例

(vla-put-scalefactor x 0.7)  ;设置宽度比例为0.7

;......

)

(safearray-value

(variant-value

(vla-getattributes

(vlax-ename->vla-object ss_name)

)

)

)

)

)

)

)

)

(setq ss_count (1+ ss_count))

)

)

(princ "\n程序已加载,输入TT命令执行。")

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值