jun470 发表于 2024-9-23 11:37:26

自己写的炸开天正图形小插件,但效率不行,等待大佬!!!用的天正插件

没装天正软件。偶尔需要看天正的图纸。都是临时加载正插件来看图。写了个插件用来筛选出天正的图形,然后炸掉,代码很简单。现在用是能用,lisp技术很菜,不知道怎么优化。插件只筛选出对象,不炸开,然后手动命令炸开就很快,在插件中要一个一个炸开就很慢,插件逻辑也许有问题,或者还有别的方法我不知道的,请求大佬赐教!代码(defun c:Q (/ sa n k name)
(princ "\n仅可选中天正对象。")
(setq sa (ssget ":D" '( (0 . "TCH_*") )))   
(setq n (sslength sa))
(setq k 0 )
(while (< k n)
      (setq name (ssname sa k))
      (command "_.explode" name "")
      (setq k (+ k 1))
)
(princ)
) 附带上我用的天正插件支持CAD2021-2024,在没天正的时候看图用的。

尘缘一生 发表于 2024-9-23 15:43:37

大家怀疑炸开问题,哪其实是大家不知道啥工作,一定不要意为:是接着画图工作,

二次设计,深化设计,不是别人图,可以用的,基本都废图,需要舍弃,或大部分需要舍弃,没用的东西,一部分保留,
在此基础上,才可工作,所以,必须炸开。
这也就是说,你千万不要意为你画的图挺好的,觉得宝贝似的?是不是?
错了,在别人眼里,在不同专业眼里,你哪图就半个废物。
所以,你画图,用了这么多的块,特殊实体,自定义实体....等等,
实际上,你画的图,就等于不可交流的资料,对你自己,你所在单位,有用。除此,别人甚至瞧都不愿意正眼瞧的。
天正吗,呵呵,不用细讲,都知道。

tiancao100 发表于 2024-9-23 15:56:58

还可以用SaveAsTArch3
Private Declare Function SaveAsTArch3_64 Lib "tch_kernal.arx" Alias "?SaveAsTArch3@@YAHPEAVAcDbDatabase@@PEB_WH_N@Z" (ByVal db As System.IntPtr, <System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.BStr)> ByVal path As String, ByVal param1 As Integer, ByVal param2 As Boolean) As Integer
    Private Declare Function SaveAsTArch3_32 Lib "tch_kernal.arx" Alias "?SaveAsTArch3@@YAHPAVAcDbDatabase@@PB_WH_N@Z" (ByVal db As System.IntPtr, <System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.BStr)> ByVal path As String, ByVal param1 As Integer, ByVal param2 As Boolean) As Integer

liuhe 发表于 2024-9-23 11:53:03

分解函数QAFLAGS是个未公布的变量。如果QAFLAGS=0,那么用LISP执行(command "explode" ss "")的时候仅仅能炸开选择集的第一个实体;如果QAFLAGS=1,可以炸开选择集所有实体。也会导致复制出问题

炸开选择集,不要一个个炸

jun470 发表于 2024-9-23 12:13:24

liuhe 发表于 2024-9-23 11:53
分解函数QAFLAGS是个未公布的变量。如果QAFLAGS=0,那么用LISP执行(command "explode" ss "")的时候仅仅能 ...

感谢大佬,竟然触及了隐藏参数!!!打开了是可以炸了,感谢!

官网说是“用于测试目的,受到限制或不具备功能”。

黄翔 发表于 2024-9-23 12:34:40

为什么不直接导出t3啊?

ssyfeng 发表于 2024-9-23 14:10:32

可能用代码显的更高端;P

jun470 发表于 2024-9-23 14:31:13

黄翔 发表于 2024-9-23 12:34
为什么不直接导出t3啊?

没装天正啊,只临时加载插件来看图。

lzspain 发表于 2024-9-23 14:33:30

jun470 发表于 2024-9-23 14:31
没装天正啊,只临时加载插件来看图。

天正插件也有转T3的功能,命令TBATSAVE。

jun470 发表于 2024-9-23 14:40:46

lzspain 发表于 2024-9-23 14:33
天正插件也有转T3的功能,命令TBATSAVE。

这个命令,我刚刚试了没有

菜卷鱼 发表于 2024-9-23 15:10:57

(setq vbjs (vlax-invoke (vlax-ename->vla-object obj) 'Explode))
页: [1] 2 3
查看完整版本: 自己写的炸开天正图形小插件,但效率不行,等待大佬!!!用的天正插件