明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1868|回复: 8

[求助] 各位高手请帮忙

[复制链接]
发表于 2005-3-30 08:32:00 | 显示全部楼层 |阅读模式
为什么我这个程序不能满足我的要求 (defun c:zz (/ ss m sa)
(setq ss (ssget))
(setq m (sslength ss))
(while (> m 0)
(setq m (1- m))
(setq sa (entget (ssname ss m)))
(setq sa (subst (cons 62 "7") (assoc 62 sa) sa ))
(entmod sa)
)
) 我是想在不改变实体图层的情况下把实体的颜色改成白色,并且不调用change命令。
发表于 2005-3-30 09:58:00 | 显示全部楼层
(defun c:zz (/ ss m sa)
(setq ss (ssget))
(setq m (sslength ss))
(while (> m 0)
(setq m (1- m))
(setq sa (entget (ssname ss m)))
(if (assoc 62 sa)
(setq sa (subst (cons 62 7) (assoc 62 sa) sa))
(setq sa (append sa (list (cons 62 7))))
)
(entmod sa)
)
(princ)
)
发表于 2005-3-30 10:03:00 | 显示全部楼层
如果实体颜色随层的话,(entget)返回表里面没有(62        . ×)这一项
发表于 2005-3-30 11:45:00 | 显示全部楼层
2楼的程序里已经判断这种情况了


(if (assoc 62 sa)...
 楼主| 发表于 2005-3-30 14:19:00 | 显示全部楼层
好用了,谢谢alin版主!
 楼主| 发表于 2005-3-30 14:40:00 | 显示全部楼层
我还想问一下:当实体是块的时候是要先炸开再运行上面程序还是有其他好办法。
发表于 2005-3-31 08:41:00 | 显示全部楼层
  1. ;;By LUCAS(龙龙仔)
  2. (defun NENTSGET  (/ HOLDPICKADD LIS SSS N NAM)
  3.    (setq HOLDPICKADD (getvar "PICKADD"))
  4.    (setvar "pickadd" 1)
  5.    (prompt "\n请连续个别选取图块内物件...")
  6.    (setq LIS (ssnamex (ssget ":N")))
  7.    (setq N 0)
  8.    (repeat (length LIS)
  9.        (if  (= (type (setq NAM (cadr (nth N LIS)))) 'ENAME)
  10.            (setq SSS (append SSS (list NAM)))
  11.        )
  12.        (setq N (1+ N))
  13.    )
  14.    (setvar "pickadd" HOLDPICKADD)
  15.    SSS
  16. )(defun C:ZZZ (/ SS SA)
  17.    (setq SS (NENTSGET))
  18.    (mapcar '(lambda (X)
  19.            (setq SA (entget X))
  20.            (if (assoc 62 SA)
  21.                (setq SA (subst (cons 62 1) (assoc 62 SA) SA))
  22.                (setq SA (append SA (list (cons 62 1))))
  23.            )
  24.            (entmod SA)
  25.        )
  26.      SS
  27.    )
  28.    (command "_.regen")
  29.    (princ)
  30. )
 楼主| 发表于 2005-3-31 11:56:00 | 显示全部楼层
版主的这句         


(setq LIS (ssnamex (ssget ":N")))


是不是要改成这样啊


(setq LIS (ssnamex (ssget :N)))
发表于 2005-3-31 12:13:00 | 显示全部楼层
你认为我错了吗?可能是你的autocad版本太低!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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