明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: userzhl

[求助]十万火急,哪位高手帮下忙,文件加密成多重匿名块了(已解决)?

  [复制链接]
发表于 2009-3-27 16:49:00 | 显示全部楼层

8楼巳修改(程序只是勉強可用)

 楼主| 发表于 2009-3-27 18:09:00 | 显示全部楼层
龙龙仔,8楼的程序我试了,没有修改呀.
发表于 2009-3-28 16:11:00 | 显示全部楼层

修改了一下龙龙仔的程序,不过这种情况只适用于所多重块内的所有块都是同一个插入点,如果不同,则还是有可能能位置移动的

(defun C:TT ()
   (setq DOC (vla-get-activedocument (vlax-get-acad-object)))
   (setq E (nentselp "\nSelect block:"));;要點綠色文字
   (setq A (car E))
   (setq OBJ_A (vlax-ename->vla-object A))
   (setq B (vla-objectidtoobject DOC (vla-get-ownerid OBJ_A)))
   (entmake (list '(0 . "INSERT")
    '(100 . "AcDbBlockReference")
    (cons 2 (vla-get-name B))
    (assoc 10 (entget (last (last e))))
    '(41 . 1.0)
     )
   )
   (command "_.explode" (entlast))
   (command "_.erase" (last (last E)) "")
)

 楼主| 发表于 2009-3-28 20:01:00 | 显示全部楼层

楼上英雄无敌,你可以打开文件试试,还是移位.

发表于 2009-3-29 15:25:00 | 显示全部楼层

以前见过有这样的代码 找到后再发上来

发表于 2009-3-30 08:06:00 | 显示全部楼层
  1. ;;未詳細測試
  2. (defun C:TT (/ A B C DOC)
  3.   (setq DOC (vla-get-activedocument (vlax-get-acad-object)))
  4.   (setq A (nentselp "\nSelect block:"))
  5.   ;;要點綠色文字
  6.   (setq C (entget (last (last A))))
  7.   (setq B (vla-objectidtoobject
  8.      DOC
  9.      (vla-get-ownerid (vlax-ename->vla-object (car A)))
  10.    )
  11.   )
  12.   (entmake (list '(0 . "INSERT")
  13.    '(100 . "AcDbBlockReference")
  14.    (cons 2 (vla-get-name B))
  15.    (assoc 10 C)
  16.    (assoc 50 C)
  17.    (assoc 41 C)
  18.     )
  19.   )
  20.   (command "_.explode" (entlast))
  21.   (command "_.erase" (last (last A)) "")
  22. )
 楼主| 发表于 2009-3-30 10:13:00 | 显示全部楼层
谢谢龙龙仔
发表于 2022-7-18 18:25:16 | 显示全部楼层
测试有用 就是差个批量的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-9-29 19:22 , Processed in 0.178216 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表