明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1810|回复: 5

火急求助! 更新组码后不能正确显示?

[复制链接]
发表于 2005-5-27 11:31:00 | 显示全部楼层 |阅读模式
想把插入点给边了,更改后stm_data查值正确,但画出的图仍然是stm_data1的? 请问原因是什么?怎样动态的更改点的组代码 (10 100.0 100.0 0.0)? (defun c:tolerance1()
(setq stm_data1
(entmake ' (
(0 . "TOLERANCE")
(100 . "AcDbEntity")
(8 . "dim")
(100 . "AcDbFcf")
(3 . "STANDARD")
(10 100.0 100.0 0.0)
(1 . "{\\Fgdt;h}%%v0.01%%v%%vA%%v%%v")
(210 0.0 0.0 1.0)
(11 1.0 0.0 0.0)
)
);entmake
)


(setq pt(list 150.0 150.0 0.0)
list_point_new (cons 10 pt) ; 构造成为新的组码表
list_point_old (assoc 10 stm_data1) ; 在属性列表中取出旧组码表
stm_data (subst list_point_new list_point_old stm_data1)
;;用新组码表代替旧组码表
);setq
(entmod stm_data) ;更新对象
);defun

本帖子中包含更多资源

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

x
发表于 2005-5-27 12:27:00 | 显示全部楼层
(defun c:tolerance1 ()
(setq stm_data1
(entmake '(
(0 . "TOLERANCE")
(100 . "AcDbEntity")
(8 . "dim")
(100 . "AcDbFcf")
(3 . "STANDARD")
(10 100.0 100.0 0.0)
(1 . "{\\Fgdt;h}%%v0.01%%v%%vA%%v%%v")
(210 0.0 0.0 1.0)
(11 1.0 0.0 0.0)
)
) ;entmake
)
(setq stm_data1 (entget (entlast)))
(setq pt (list 150.0 150.0 0.0)
list_point_new (cons 10 pt) ; 构造成为新的组码表
list_point_old (assoc 10 stm_data1) ; 在属性列表中取出旧组码表
stm_data (subst list_point_new list_point_old stm_data1)
;;用新组码表代替旧组码表
) ;setq
(entmod stm_data) ;更新对象
) ;defun 注意:entmake和entmode对DXF组码列表的要求是不一样的,,,entmode至少需要对象名,
 楼主| 发表于 2005-5-27 13:20:00 | 显示全部楼层
stm_data不是对象名吗?我对这个不是很熟悉,请高手明示!!!!!!!!!!!!!!我该如何改正才能实现目的?
发表于 2005-5-27 13:43:00 | 显示全部楼层
stm_data是组码列表,对象名是(entsel)返回的第一个元素,,,entmake时无法指定对象名,系统自动生成的,所以开始的列表里是没有对象名的,生成后再使用entget 返回的组码列表里就有对象名了,就可以使用返回了。。。


看帖要仔细,我不可能只把你的代码又复制一遍而什么也不做。。。2楼的程序是已经改好的
 楼主| 发表于 2005-5-27 13:49:00 | 显示全部楼层



我错了


对不起
 楼主| 发表于 2005-5-27 13:53:00 | 显示全部楼层
多谢飞哥!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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