明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4725|回复: 5

匿名块如何编辑(块名*u)

[复制链接]
发表于 2012-11-22 17:16:45 | 显示全部楼层 |阅读模式
请问:匿名块如何编辑(块名*u),不想炸开!
发表于 2012-11-22 18:07:11 | 显示全部楼层
  1. ;(改块名)无名转有名
  2. (defun C:XX (/ obj bkn)
  3. (KX-COMA)
  4. (KX-princA "(改块名)无名转有名")
  5.   (setq obj (KX-E2O (car (entsel "\n-->请点选块: "))));转为VLA对象
  6.   (setq bkn (KX-str 1 "块名" bkn nil nil))
  7.   (KX-Wm2Insert obj bkn);改块名
  8. (KX-COMB)
  9. )
发表于 2012-11-22 18:10:29 | 显示全部楼层
  1. ;(改块名)无名转有名  作者:【KAIXIN】,QQ:295963716
  2. ;本程序需要KAIXIN通用函数的支持
  3. (defun C:XX (/ obj bkn)
  4. (KX-COMA)
  5. (KX-princA "(改块名)无名转有名")
  6.   (setq obj (KX-E2O (CAR (KX-Get-Entsel '((0 . "INSERT")(2 . "`**")) "无名块"))));转为VLA对象
  7.   (setq bkn (KX-str 1 "块名" bkn nil nil))
  8.   (KX-Wm2Insert obj bkn);改块名
  9. (KX-COMB)
  10. )

发表于 2012-11-22 19:42:32 | 显示全部楼层
给你一个编程思路:
1、记录最后实体,如(setq g:last-ent (entlast));
2、记录块信息,如该块所在层等;
3、炸开该块;
4、加入、删减、编辑其中的实体;
5、收集 g:last-ent 之后的所有实体;
6、用造无名块程序将收集实体制成无名块;
7、还原该新建的无名块所处的层等信息;
 楼主| 发表于 2012-11-23 02:23:33 来自手机 | 显示全部楼层
谢谢,网上找了一段lisp代码,完美解决该问题
发表于 2012-11-23 09:15:59 | 显示全部楼层
真是高手,望而生畏。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-24 16:26 , Processed in 0.169501 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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