明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4805|回复: 13

分享一个lsp,修改块内的对象为0图层,同时提出求助,希望各位高手进来看下

[复制链接]
发表于 2014-9-13 22:21:03 | 显示全部楼层 |阅读模式
这是修改块内的对象为0图层的lsp,后面我在使用中出现了一些插曲,有些块里面还有块,甚至块的块里面还有块,甚至块的里面的块里面的块还有块。这个时候这个lsp就不到作用了,这些嵌套块里面对象不会变化成0图层,我希望各位高手帮忙改下让所有块里面所有东西都是0图层,十分感激!
 楼主| 发表于 2014-9-14 17:15:31 | 显示全部楼层
跪求!!!!!!!!!!!!!
发表于 2014-9-15 09:04:06 | 显示全部楼层
你分享的源码吗.咋不见
 楼主| 发表于 2014-9-16 01:31:40 | 显示全部楼层
maiko 发表于 2014-9-15 09:04
你分享的源码吗.咋不见

之前我还是没用你的那个。。老是出错,后面有个群里的好友帮我解决了,这个问题其实已经解决,但是还是有个问题,是另一个lsp,就是把选中的对象的某个颜色,换成bylayer颜色,或者换成某个特定的颜色。。。大神求帮助
发表于 2014-9-20 12:26:22 | 显示全部楼层
你的分享呢?
 楼主| 发表于 2014-9-22 20:26:12 | 显示全部楼层
忧郁的花儿2011 发表于 2014-9-20 12:26
你的分享呢?

;;将选择块内实体修改至0层颜色不变
(defun c:b0 (/ ss ssl i blocks el e bn bl)
  (if (setq ss (ssget '((0 . "insert"))))
    (progn
      (setq ssl (sslength ss)
            i -1
            blocks (vla-get-blocks (vla-get-activedocument
                                                           (vlax-get-acad-object)
                                   )
                   )
      )
      (repeat ssl
        (setq e (ssname ss (setq i (1+ i)))
              el (entget e)
              bn (cdr (assoc 2 el))
        )
        (if (not (vl-position bn bl))
          (progn
            (vlax-for ent (vla-item blocks bn) (vla-put-layer ent "0")
            )          ;
          )
        )
      )
    )
  )
  (princ)
)
发表于 2015-1-27 15:55:03 | 显示全部楼层
你这个命令AP读取后输入b0为什么是未识别命令啊??
发表于 2015-1-30 14:09:36 | 显示全部楼层
怎么实现嵌套块?
发表于 2015-5-5 15:34:58 | 显示全部楼层
支持,同求.!!!!
发表于 2015-7-15 19:02:41 来自手机 | 显示全部楼层
使用递归方法,凑足十字
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 17:37 , Processed in 0.196446 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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