明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: tjzcj

如何将数字求和(sum)写到图中,焦急等待!!!

  [复制链接]
发表于 2004-1-3 16:25:00 | 显示全部楼层
将每次的选择都加入到另外的一个变量之中,然后再处理这个变量。
 楼主| 发表于 2004-1-4 10:28:00 | 显示全部楼层
我的意思是有没有一次全选中的办法,SSGET本来就可以把每次选的数据都存入变量中,没必要选一次存一个变量了
发表于 2004-1-4 15:18:00 | 显示全部楼层
那你得说说选中的数字和不要的数字有什么不同的地方啊
发表于 2004-1-4 23:58:00 | 显示全部楼层
xd论坛有两篇帖子,关于文本选集中数字求和并且写到图上的。可以参考一下。
http://www.xdcad.com/forum/showthread.php?goto=lastpost&s=&threadid=83454
http://www.xdcad.com/forum/showthread.php?s=&postid=725790#post725790
 楼主| 发表于 2004-1-5 09:02:00 | 显示全部楼层
十分感谢 无痕
发表于 2004-2-3 22:55:00 | 显示全部楼层
;也许这样更完善 (defun c:sum ()
(setq p1(getpoint "请选择字域的左上角点"))
(setq p2(getpoint "请选择字域的右下角点"))

(command "zoom" "w" p1 p2)
(setq selct (ssget "w" p1 p2 '((0 . "text"))))

(setq n 0
sum 0
)
(repeat (sslength selct)
(setq en (ssname selct n))
(setq endata (entget en))
(setq entxt (cdr (assoc 1 endata)))
(setq entxt (atof entxt))
(setq sum (+ sum entxt))
(setq n (+ n 1))
)

(setq aa(entget en))
(setq zg0(cdr (assoc 40 AA)))
(setq p3 (polar p2 (/ pi 2) ( * zg0 2 ) ))
(setq sum (fix (+ sum 0.5)))
(command "text" "j" "mc" p3 zg0 0 sum )
)
发表于 2005-1-22 11:37:00 | 显示全部楼层
也有几个问题请各位老师帮忙解答:


①当数据含有单位时,如“80m”,如何将“m”去掉,让“80”参加统计;


②当TEXT字符全是非数字字符时,如“高度”,自动将这个字符去除,不参加统计;


③当选择集为“nil”,或没有一个合格的数据时,输出统计结果为“0”。
发表于 2005-1-23 08:57:00 | 显示全部楼层
可以采用遍历数据库的方法(setq selct (ssget "X" '((0 . "text"))))将文字取出来,然后再取出在对角点为p1和 p2框内的文字. 按这种方法屏幕不会闪烁.
发表于 2005-1-23 18:30:00 | 显示全部楼层
123abc发表于2005-1-22 11:37:00也有几个问题请各位老师帮忙解答: ①当数据含有单位时,如“80m”,如何将“m”去掉,让“80”参加统计; ②当TEXT字符全是非数字字符时,如“高度”,自...

急盼各位老师帮忙!
发表于 2009-2-7 15:34:00 | 显示全部楼层

这个程序不能精确到小数,需要改进,怎么改进呢?

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-29 07:32 , Processed in 0.155063 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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