找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1943|回复: 12

(完成)[编程申请]:将一种图块中的一部分改名

[复制链接]
发表于 2003-9-9 10:18:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
好像有人提起过这个问题

原因:有时用一个标准节点画了很多图,但后来需要将其中一部分作点改动,成为一个新的图块,如果炸开修改后再重新建块,又需要复制到每一个图中,很麻烦。

功能设想:选中需要更改的图块,输入新名称,最好是弹出菜单,带图块预览,同时也可以在命令行就完成操作。

奖励:私人提供10个爱心币给最好的作品的作者,同时保证用悄悄话骚扰版主来加分。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-9-9 10:46:45 | 显示全部楼层
是不是要实现改变部分图块,看看这个帖子
http://www.xdcad.net/forum/showt ... y=&pagenumber=1
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-9-9 21:52:16 | 显示全部楼层
你可以把需要修改的块另插在空位置上,炸开,修改完了再安原名block,在图中所有这样的块全自动跟着改好了;如果要对存在的块改名,rename不就可以了?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-9-10 07:58:43 | 显示全部楼层
你所说的"一部分" 是子块还是LINE,ARC,TEXT...其他实体?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-9-10 09:07:12 | 显示全部楼层
最初由 chenhang1203 发布
[B]是不是要实现改变部分图块,看看这个帖子
... [/B]


看过了,试了一下,那个程序的功能是用一个新的块替换原有的你选中的块,没选中的相同的块不改变。比较接近我想要的块,和我的想法差别只是在于新块编辑的先后而已,我原来的想法是先将一部分旧块改个名字然后再编辑,他们的做法是先做个新块再来替换旧块,结果是一样的,很好。

to jxhaha:你说的方法就是民工一直用的,觉得麻烦了,想改进一下了。

to lsjjm:我所的“一部分”是指一部分的图块,比如某个图块在图中用了20个,要改掉其中的10个,又不想重新插入。目前常用到的图块都只是line、arc、pline等构成的简单图块。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2003-9-12 00:42:13 | 显示全部楼层
先定义个新块,里面的内容照搬好了.

把你选中的insert变为新名称.

任意一个新块双击...


  1. (defun c:cccc( / e en j new old ss)
  2. (defun dxf(a b)(cdr(assoc a b)))
  3. (command"undo""group")
  4. (if(and(setq ss(ssget '((0 . "INSERT"))))
  5.         (setq new(getstring "\n名称:"))
  6.         (not(tblsearch "block" new))   
  7.      )
  8.    (progn
  9.     (setq old(dxf 2(entget(ssname ss 0))))
  10.     (command "-insert" old '(0 0) "1""1" 0)
  11.     (command "explode"(entlast))
  12.     (command "-block" new '(0 0)"P" "")
  13.     (setq j 0)
  14.     (repeat(sslength ss)
  15.      (setq e(ssname ss j)
  16.            en(entget e)
  17.            en(subst(cons 2 new)(assoc 2 en)en)
  18.       )
  19.       (entmod en)
  20.       (setq j(1+ j))
  21.      )
  22.    ))(command"undo""end")
  23.    (princ)
  24. )

块里不要有属性!
执行完就可以双击啦.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-9-12 09:03:07 | 显示全部楼层
民工试过了,就是民工想要的工具
高手高手!佩服佩服!
说明一下:民工将上面的程序存成cccc.lsp文件,然后在acad里加载,输入cccc执行命令。没错吧?
请查收民工送上的爱心币。
路过的版主请赶快加分,加积分(不然你们又要向东哥投诉民工信骚扰了)
cao,发完帖子才发现东哥就是这个板块的版主(不过也好,东哥不就没有投诉的地方了吗)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-12-26 14:12:34 | 显示全部楼层
我试了,你的这个程序无法使用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-12-27 11:28:26 | 显示全部楼层
2楼的方法就可以了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-1-1 21:44:08 | 显示全部楼层
有些看不懂咯,还要好好研究研究
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-1-2 14:14:48 | 显示全部楼层
8楼的程序没法用!
aeo的程序用了一下,好像是将选中的块改块名,然后用block重定义此block,以达到部分修改块的功能,不知道我理解得对否?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-2-5 16:42:13 | 显示全部楼层
对不起,我真的很笨,怎么用也用不了,按照你们的理解,就是先改快名字,然后在编辑新快来完成,但是我用EAO的命令怎么连改名字都不行啊?请问为什么。我出现这个的错误


Command: cccc
Select objects: Other corner: 14 found

Select objects:
名称:14
Unknown command "-INSERT".  Press F1 for help.
Unknown command "1".  Press F1 for help.
Unknown command "1".  Press F1 for help.
Unknown command "1".  Press F1 for help.
0
Unknown command "CCCC".  Press F1 for help.
Unknown command "-BLOCK".  Press F1 for help.
Unknown command "14".  Press F1 for help.
Unknown command "P".  Press F1 for help.
Unknown command "CCCC".  Press F1 for help.

原来的块名是1,我想把部分改成14。结果它要我按F1  :(
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-2-12 00:18:01 | 显示全部楼层
啊,前几天才遇到这种问题,早看到这帖子就好了.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-5-10 11:29 , Processed in 0.442825 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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