明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2530|回复: 8

[LISP]给块添加扩展数据后,块却变得没有属性了

[复制链接]
发表于 2004-11-16 23:37 | 显示全部楼层 |阅读模式
我给图框(带有属性)添加了扩展数据成功后,块却变得没有属性了,无法用entnext遍历,当然也不能用块属性编辑器编辑了。请问这是怎么回事情?
发表于 2004-11-17 08:59 | 显示全部楼层
Show you codes
 楼主| 发表于 2004-11-17 21:37 | 显示全部楼层
该段代码如下: ;;;=============各子函数中用到的全局变量========================
(setq *TS_Frame* "TS_Frame" ;图框扩展数据应用程序名
*TITLE_TAG* "TITLE" ;标题栏插入基点
*LIST_TAG* "LIST" ;明细表插入基点
) ;;=======================扩展数据注册函数============================
(defun RegAppName (AppName)
(if (tblsearch "appid" AppName)
T
(if (regapp AppName)
T
(alert (strcat "\n\"" AppName "\"注册失败!"))
)
)
) ;;;===========插入指定图框,并附加扩展数据===============
;;;*TS_Frame*为全局变量,在iceberg.lsp中定义
(defun c:insframe (/ el frame)
(setq frame (getstring "\n指定块名: "))
(setq el (tblobjname "block" frame))
(if el
(progn
(RegAppName *TS_Frame*)

(entmake
(list
'(0 . "INSERT")
'(100 . "AcDbEntity")
'(67 . 0)
(cons 8 "0")
'(100 . "AcDbBlockReference")
(cons 2 frame)
(cons 10 '(0 0))
'(41 . 1.0)
'(42 . 1.0)
'(43 . 1.0)
'(210 0.0 0.0 1.0)
(list -3
(list *TS_Frame*
(cons 1000 frame)
)
)
)
)
)
)
) dwg文件见附件,2004格式,左边一个图框是以附加过数据的,右边一个是没有附加数据的。

本帖子中包含更多资源

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

x
发表于 2004-11-18 08:29 | 显示全部楼层
Why do you use entmake to insert a block?


Try to insert the block with command "insert" and attach the Xdata later.
发表于 2004-11-18 08:44 | 显示全部楼层
插入的属性块是一个复杂图元,它包括对块的引用,还包括属性,,,要注意这里的属性是实际的图元,而不是块引用中的属性了(所以你才能对每个INSERT使用不同的属性值),你在使用ENTMAKE建立INSERT时,没有包含这些属性,所以属性就不存在了......


你可以使用COMMAND插入块,然后使用ENTMOD来添加扩展数据...
 楼主| 发表于 2004-11-18 15:30 | 显示全部楼层
谢谢,如斑竹所说,问题解决。
发表于 2005-1-22 22:58 | 显示全部楼层
改过后重传一下让我们分享一下,好吗
发表于 2007-3-8 22:15 | 显示全部楼层
解决了,把解决的方法,代码发上来啊
发表于 2007-3-9 08:12 | 显示全部楼层
怎样用entmake直接创建有属性的块呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-6 13:21 , Processed in 0.307574 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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