lxl217114 发表于 2024-1-10 15:23:58

飞雪神光 发表于 2024-1-10 15:21
这就是开始不停地加需求了么

哈哈,是的。
上传文件的时候   没有模拟全部的真实情况。

飞雪神光 发表于 2024-1-10 15:27:21

lxl217114 发表于 2024-1-10 15:23
哈哈,是的。
上传文件的时候   没有模拟全部的真实情况。

那就用那个链接里的编号程序试试 挺好用的

lxl217114 发表于 2024-1-10 15:29:49

飞雪神光 发表于 2024-1-10 15:27
那就用那个链接里的编号程序试试 挺好用的

非常感谢了,:handshake

weimeng555 发表于 2024-5-4 15:11:18

刚好也在找类似的功能,只不多是想找批量多个属性的,之前都是用的CAD自带的特性属性,只要属性标签一直,基本都能进行批量修改,另外提个建议按楼主的需求,感觉图框图签做外部操作更加方便,比如我一共有几十个子项,不需要每张图打开去修改属性,这样效率是不是更高效
除了子项、出图日期这两个做定义属性,这样子,每个子项改一次子项号、出图日期即可,这样做,也方便以后出变更的时候,出图日期可以跟着修改图走,不受外参的影响

shujh1989 发表于 2024-5-6 17:20:55

weimeng555 发表于 2024-5-4 15:11
刚好也在找类似的功能,只不多是想找批量多个属性的,之前都是用的CAD自带的特性属性,只要属性标签一直, ...

我的需求是拷贝其他专业图签的属性,不想自己手动复制,容易弄错。我有改进的版本,也加了自动填写图号的功能。还有一件复制图名到图签的功能,不过只适用天正。

weimeng555 发表于 2024-5-7 21:09:38

shujh1989 发表于 2024-5-6 17:20
我的需求是拷贝其他专业图签的属性,不想自己手动复制,容易弄错。我有改进的版本,也加了自动填写图号的 ...

楼主,改进版本能否分享一下呢:handshake

shujh1989 发表于 2024-5-12 17:45:07

本帖最后由 shujh1989 于 2024-5-13 00:12 编辑

weimeng555 发表于 2024-5-7 21:09
楼主,改进版本能否分享一下呢

(defun c:CCT ( / sourceBlock targetBlock sourceAttributes targetAttributes sourceAttribute targetAttribute sourceTag targetTag sourceValue copyTitleAndName)
(setvar "cmdecho" 0)
(vl-load-com)
;; 添加用户输入确认是否复制图号和图名
(setq copyTitleAndName (strcase (getstring "\n是否复制目标图框的图号和图名到新图框? [默认是,如否输入N]: ")))
(setq sourceBlock (car (entsel "\n选择源图框: ")))

(if sourceBlock
(progn
(setq sourceAttributes (vlax-invoke (vlax-ename->vla-object sourceBlock) 'getattributes))

(while (setq targetBlock (car (entsel "\n选择目标图框 (或按 ESC 退出): ")))
(setq targetAttributes (vlax-invoke (vlax-ename->vla-object targetBlock) 'getattributes))

(foreach sourceAttribute sourceAttributes
(setq sourceTag (vla-get-TagString sourceAttribute))
(setq sourceValue (vla-get-textstring sourceAttribute))
(if (equal copyTitleAndName "N")
(foreach targetAttribute targetAttributes
    (setq targetTag (vla-get-TagString targetAttribute))


   (if   
      (and   
   
      (equal sourceTag targetTag)
      (not (wcmatch targetTag "*图号*"))
      (not (wcmatch targetTag "*图纸名称*,*图名*"))
      )
      (vla-put-textstring targetAttribute sourceValue)))
   (foreach targetAttribute targetAttributes
    (setq targetTag (vla-get-TagString targetAttribute))   
   (if   
      (equal sourceTag targetTag)
      (vla-put-textstring targetAttribute sourceValue)))   
)
)

(princ "\n图框信息已替换。")
)
)
(princ "\n未选择有效的源图框。")
)

(setvar "cmdecho" 1)
)
页: 1 2 3 [4]
查看完整版本: 属性块参数复制到另一个属性块