明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 848|回复: 7

[讨论] entget问题怎么处理

[复制链接]
发表于 2015-9-9 21:54:10 | 显示全部楼层 |阅读模式
本帖最后由 qxjlax 于 2015-9-20 20:14 编辑

entmod有的图可以更新,有的图不可以更新为什么呢?现在把代码和不能更新的图传上来了,请高手指点奇怪的是同样的图,同样的代码,我在CAD2002上entmod能起作用,CAD2007上entmod就不起作用了,这是怎么回事呢?。。。。
终于找到点眉目了,问题出在(setq ssbb1 (entget (ssname ssb a) )) 这句上面,entget得到了一个无效的字段类型 284导致entmod函数出错,请问这样的问题怎么解决?左边是错误的截图,右边是能正常运行程序的截图

(defun c:ysjs ()
  (setq
    ssb
     (ssget
       "x"
       (list (cons 0 "insert")
      (cons 8 "PS_YSG_POINT")
      (cons 2 "排水-窨井,排水-检修井")
       )
     )
  )
  (if (/= ssb nil)
    (progn
      (setq ssblen (sslength ssb))
      (setq a 0)
      (repeat ssblen
(setq ssb1 (ssname ssb a))
(setq ssbb1 (entget (ssname ssb a) ))
(setq ssbb1 (subst (cons 8 "0") (assoc 8 ssbb1) ssbb1))
(entmod ssbb1)
(entupd ssb1)
(setq a (1+ a))
      )
    )
  )
)

本帖子中包含更多资源

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

x
发表于 2015-9-9 22:10:25 | 显示全部楼层
本帖最后由 edata 于 2015-9-9 22:13 编辑

正常改到了0层
 楼主| 发表于 2015-9-9 22:18:24 | 显示全部楼层
本帖最后由 qxjlax 于 2015-9-9 22:21 编辑
edata 发表于 2015-9-9 22:10
正常改到了0层


你用我的图能改吗?我在CAD2002上能改到0层,CAD2007上就不能改了
发表于 2015-9-10 09:47:01 | 显示全部楼层
试过2006 2008 2011,都正常。最好把变量定义为局部变量,以免变量冲突。
 楼主| 发表于 2015-9-20 18:27:19 | 显示全部楼层
请问有什么函数可以替代entmod的功能吗》?
 楼主| 发表于 2015-9-20 19:39:43 | 显示全部楼层
终于找到点眉目了,问题出在(setq ssbb1 (entget (ssname ssb a) )) 这句上面,entget得到了一个无效的字段类型 284导致entmod函数出错,请问这样的问题怎么解决?左边是错误的截图,右边是能正常运行程序的截图

本帖子中包含更多资源

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

x
 楼主| 发表于 2015-10-9 07:45:32 | 显示全部楼层
自己顶下,没人知道怎么解决吗?
发表于 2015-10-9 08:26:15 | 显示全部楼层
谢谢分享经验!!!!!!!!!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-21 05:07 , Processed in 0.189921 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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