马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
用entmake创建一个已存在的动态块,并从图纸中1个相同块的动态块属性复制属性
 - (defun c:copypps (/ obj ppts)
- (setq obj (vlax-ename->vla-object (car (entsel)))
- AllowedValues nil
- ppts nil
- )
- (if (setq obj (vlax-invoke obj 'GetDynamicBlockProperties)
- ent obj)
- (progn
- (repeat (length obj)
- (if (= (vlax-get (car obj) 'show) -1)
- (setq ppts (append ppts (list (vlax-get (car obj) 'Value))))
- )
- (setq obj (cdr obj))
- )
- (setq obj (vlax-invoke
- (vlax-ename->vla-object (car (entsel)))
- 'GetDynamicBlockProperties
- )
- i obj
- )
- (while ppts
- (if (= (vlax-get (car obj) 'show) -1)
- (progn
- (vlax-put (car obj) 'Value (car ppts))
- (setq obj (cdr obj)
- ppts (cdr ppts)
- )
- )
- (setq obj (cdr obj))
- )
- )
- )
- )
- (princ)
- )
但对于翻转属性不行,报错说参数类型错误
- ; 错误: AutoCAD.Application: 输入无效
- 参数类型错误: VLA-OBJECT nil
复制代码 请大神指教,万分感谢
|