CAD中数据统计方法.docx

上传人:b****6 文档编号:5729314 上传时间:2022-12-31 格式:DOCX 页数:6 大小:106.46KB
下载 相关 举报
CAD中数据统计方法.docx_第1页
第1页 / 共6页
CAD中数据统计方法.docx_第2页
第2页 / 共6页
CAD中数据统计方法.docx_第3页
第3页 / 共6页
CAD中数据统计方法.docx_第4页
第4页 / 共6页
CAD中数据统计方法.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

CAD中数据统计方法.docx

《CAD中数据统计方法.docx》由会员分享,可在线阅读,更多相关《CAD中数据统计方法.docx(6页珍藏版)》请在冰豆网上搜索。

CAD中数据统计方法.docx

CAD中数据统计方法

CAD中统计数字的方法:

使用CAD中的快捷键TT,但是需要先进行加载,加载方法是:

打开CAD选择菜单栏---工具---加载应用程序---选择窗口中全部文件---加载(即可)。

然后就可以用这个快捷键了。

在CAD中选择需要计算的数据,然后TT快捷键,点下空格后就会出现一个对话框了。

在绘图过程中,经常会对数字文本进行四则运算,或者统

计数字,在现有的CAD命令中没有直接命令与之相关,用计算器又麻烦。

所以可以用一个小程序来解决。

我觉得挺好的。

快捷键TJ。

1、

用法:

先加载程序,首先会提示你如何用这个程序。

2、然后你输入计算结果的精度,即小数点位数:

这个只要在

到你空输入(没有选择或者取点)为止。

+-*/命令不用多说。

..命令为对所选文字同时加减乘除某个数。

4、统计的命令为TJ。

其速度是很快的,我曾对十万级的数字验证,求结果既快又准。

版本。

原程序:

;;;说明(alert"提醒:

\n请首先设置好输精度<小数点位数>,在绘图勺过程中可随时用命令JD设置精度。

\n命令\"+-*/\"分别代表对所选择勺数字求和差积

商。

数和被除数。

相同(除角度外)。

";;;定义了一个全局变量为精度

(defunC:

JD(/)

(initget4)

(if(setqPRECISION(getint))

(princ)

(setqPRECISION(getvar"LUPREC"))

(C:

JD);;;加(defunC:

+(/keyselinsfirstnumlstresult)

(while(common1)

(setqresult(apply'+(cadrnumlst)))

(common2)

(princ)

;;;减(defunC:

-(/keyselinsfirstnumlstresult)

(while(common1)

(setqresult(apply'-(cadrnumlst)))

(common2)

(princ)

;;;乘

(defunC:

*(/keyselinsfirstnumlstresult)

(while(common1)

(setqresult(apply'*(cadrnumlst)))

(common2)

(princ)

;;;除(defunC:

/(/keyselinsfirstnumlstresult)

(while(common1)

(setqresult(apply'/(cadrnumlst)))

(common2)

(princ)

;;;所有数字都加减乘除某个数(defunC:

..(/keyopselinsfirstnumlstresult)

(while(setqsel(ssget'((0."TEXT"))))

(setqfirst(ssnamesel0))

(setqNumlst(sel->listsel))

(initget1"+-*/"

(setqkey(getkword"\n请输入加减乘除符号<+-*/>:

"))

请输入操作数<默认为

(initget2)

(if(null(setqop(getreal"\n1>:

")))

(all-calnumlstkeyop)

(princ)

(defunall-cal(resultsymop/lstoldnew)

(foreachn(carnumlst)

(setqlst(entgetn))

(setqold(atof(cdr(assoc1lst))))

(setqnew(eval(cons(readsym)(listoldop))))

(setqnew(cons1(rtosnew(getvar"LUNITS")

PRECISION)))

(setqlst(substnew(assoc1lst)lst))

(entmodlst)

;;;选择和插入点(defuncommon1()

(and

(setqsel(ssget'((0."TEXT"))))

(null(initget0"YesNo"))

认不保留>:

"))

(setqkey"Yes")

(setqkey"No")

(setqfirst(ssnamesel0))

(setqNumlst(sel->listsel))

;;;做文字或者更新文字(defuncommon2()

(setqresult(rtosresult(getvar"LUNITS")

PRECISION))

(if(=key"No")

请输入插入点:

"))

(if(setqins(getpoint"\n

(make-textfirstresultins)

(update-textfirstresult)

;;;选择集合转化成数字列表(defunsel->list(sel/ientlstnumElsnls)

(setqi0)

(repeat(sslengthsel)

(setqent(ssnameseli))

(setqlst(entgetent))

(setqnum(atof(cdr(assoc1lst))))

(setqEls(consentEls))

(setqNls(consnumNls))

(setqi(1+i))

(list

(reverseEls)

(reverseNls)

;;;创建新文字,在指定点插入(defunmake-text(firststringinspt/removetxtlstlst)

(setqremove(list-133051101150))

(setqtxtlst(entgetfirst))

(foreachntxtlst

(if(not(member(carn)remove))

(setqlst(consnlst))

(setqlst(cons(cons1string)lst))

(setqlst(cons(cons10inspt)lst))

(setqlst(cons(cons11inspt)lst))

(setqlst(reverselst))

(cdr(assoc40(entmakelst)))

;;;保留文字,仅更新内容(defunupdate-text(entstring/txtlst)

(setqtxtlst(entgetent))

(setqtxtlst(subst(cons1string)(assoc1txtlst)txtlst))

(entmodtxtlst)

;;;统计数字文本

lenang

(defunC:

tj(/unselinstollstnumlstfirstdata

HIGjnm)

(setqun(getvar"LUNITS"))

(while(and(setqsel(ssget'((0."TEXT"))))

(setqtollst(sel->listsel))

(setqnumlst(cadrtollst))

(setqfirst(caartollst))

(setqdata(STATnumlst))

(setqlen(strcat(caardata)(itoa(cdardata))))

(setqj1)

(repeat4

(setqn(nthjdata))

(setqm(strcat(carn)(rtos(cdrn)unPRECISION)))

(make-textfirstm(polarinsang(*jHIG)))

(setqj(1+j))

(princ)

;;;统计函数(defunSTAT(numlst/lensumavevarsqrstd)

(setqlen(lengthnumlst))本数目

(setqsum(apply'+numlst))

(setqave(/sumlen))

(setqvar(mapcar'(lambda(x)(*(-xave)(-xave)))numlst))

平方

(setqsqr(/(apply'+var)len))差variance

(setqstd(sqrtsqr))准差

(list

(cons"

样本数..

"len)

(cons"

总和

.."sum)

(cons"

平均值..

"ave)

(cons"

方差

.."sqr)

(cons"

标准差..

"std)

复制代码

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小学作文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1