




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAD中统计数字的方法:(1) 使用CAD中的快捷键TT,但是需要先进行加载,加载方 法是:打开 CAD选择菜单栏-工具-加载应用程序 -选择窗口中全部文件-加载(即可)。然后就可以用 这个快捷键了。在CA协选择需要计算的数据,然后 TT 快捷键,点下空格后就会出现一个对话框了。(2) 在绘图过程中,经常会对数字文本进行四则运算,或者统计数字,在现有的CA渝令中没有直接命令与之相关, 用计算器又麻烦。所以可以用一个小程序来解决。我觉 得挺好的。快捷键TJ。用法:1、先加载程序,首先会提示你如何用这个程序。2、然后你输入计算结果的精度,即小数点位数:这个只要在 开始的时候输入就可以了, 以后的命
2、令你不用输入精度, 如果你 要调整精度,随时输入命令 JD.3、下面为它的具体用法,你可以选择多个文字,如果是除法, 劝你最好不要选择0数字,否则会出错。而且命令可以连用,直 到你空输入(没有选择或者取点)为止。+ - * /命令不用多说。.命令为对所选文字同时加减乘除某个数。4、统计的命令为TJ。其速度是很快的,我曾对十万级的数 字验证,求结果既快又准。5、这个程序适用于各个版本,我甚至觉得可以用于DOW CAD版本。原程序:;说明(alert "提醒:n请首先设置好输精度 小数点位数 ,在绘图的过程中可随时用命令JD设置精度。n命令"+ - * /" 分别代表
3、对所选择的数字求和差积商。n其中"- /"则是以你第一个选到的数字文本为被减数和被除数。n 命令"."(点点)代表对所选择的数字文本统一加减乘除某个数,默认为1。n命令"TJ”代表对所选择的数字文本进行数学统计。n所有生成的新文本均与第一个选到的数字文本的样式相同(除角度外)。”);定义了一个全局变量为精度(defun C:JD (/ )(prompt "n请输入精度,直接回车则为系统精度:")(initget 4)(if (setq PRECISION (getint)(princ)(setq PRECISION (get
4、var "LUPREC")(C:JD);加(defun C:+ (/ key sel ins first numlst result)(while (common1)(setq result (apply '+ (cadr numlst)(common2)(princ);减(defun C:- (/ key sel ins first numlst result)(while (commonl)(setq result (apply '- (cadr numlst)(common2)(princ);乘(defun C:* (/ key sel ins fir
5、st numlst result)(while (common1)(setq result (apply '* (cadr numlst)(princ);除(defun C:/ (/ key sel ins first numlst result)(while (common1)(setq result (apply '/ (cadr numlst)(common2)(princ);所有数字都加减乘除某个数(defun C:. (/ key op sel ins first numlst result)(while (setq sel (ssget '(0 . &quo
6、t;TEXT")(setq first (ssname sel 0)(setq Numlst (sel->list sel)(initget 1 ”+ - * /")(setq key (getkword "n 请输入加减乘除符号 <+ - * />:")(initget 2)(if (null (setq op (getreal "n请输入操作数 <默认为1>:")(setq op 1.0)(all-cal numlst key op)(princ);(defun all-cal (result sym
7、 op / lst old new)(foreach n (car numlst)(setq lst (entget n)(setq old (atof (cdr (assoc 1 lst)(setq new (eval (cons (read sym) (list old op)(setq new (cons 1 (rtos new (getvar "LUNITS")PRECISION)(setq lst (subst new (assoc 1 lst) lst)(entmod lst);选择和插入点(defun common1 ()(and(setq sel (ssge
8、t '(0 . "TEXT")(null (initget 0 "Yes No")(if (setq key (getkword "n是否保留原数字 Yes,No?<默认不保留>:")(setq key "Yes")(setq key "No")(setq first (ssname sel 0)(setq Numlst (sel->list sel);做文字或者更新文字(defun common2 ()(setq result (rtos result (getvar
9、 "LUNITS")PRECISION)(if (= key "No")(if (setq ins (getpoint "n请输入插入点:")(make-text first result ins)(update-text first result);选择集合转化成数字列表(defun sel->list (sel / i ent lst num Els nls)(setq i 0)(repeat (sslength sel)(setq ent (ssname sel i)(setq 1st (entget ent)(setq
10、num (atof (cdr (assoc 1 1st)(setq Els (cons ent Els)(setq Nls (cons num Nls)(setq i (1+ i)(list(reverse Els)(reverse Nls);创建新文字,在指定点插入(defun make-text (first string inspt / remove txtlst 1st)(setq remove (list -1 330 5 1 10 11 50)(setq txtlst (entget first)(foreach n txtlst(if (not (member (car n) r
11、emove)(setq 1st (cons (cons 1 string) 1st)(setq 1st (cons (cons 10 inspt) 1st)(setq 1st (cons (cons 11 inspt) 1st)(setq 1st (reverse 1st)(cdr (assoc 40 (entmake 1st);保留文字,仅更新内容(defun update-text (ent string / txtlst)(setq txt1st (entget ent)(setq txtlst (subst (cons 1 string) (assoc 1 txtlst) txtlst
12、)(entmod txtlst);统计数字文本(defun C:tj (/ un sel ins tollst numlst first data len angHIG j n m)(setq un (getvar "LUNITS")(while (and (setq sel (ssget '(0 . "TEXT")(setq ins (getpoint "n请输入插入点:")(princ "n统计正在进行")(setq tollst (sel->list sel)(setq numlst (cadr
13、 tollst)(setq first (caar tollst)(setq data (STAT numlst)(setq len (strcat (caar data) (itoa (cdar data)(setq HIG (* (make-text first len ins) 1.5)(setq ang (* Pi -0.5)(setq j 1)(repeat 4(setq n (nth j data)(setqm(strcat(car n) (rtos (cdr n) un PRECISION)(make-text first m (polar ins ang (* j HIG)(setq j (1 + j)(princ "n统计已经完成!")(princ);统计函数(defun STAT (numlst / len sum ave var sqr std)(setq len (length numlst);样本数目(setq sum (apply '+ numlst)J和值(setq var (mapcar '(lambda (x) (* (- x ave) (- x ave)numl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025私营企业劳动合同书 劳动合同
- 2025电缆供应合同模板
- 2025汽车销售合同大全
- 2025年网络设备采购合同
- 二次结构工程施工承包合同书模板二零二五年
- 二零二五领队出团合约
- 艺人代言合同
- 2025年签订的二手房合同是否有效
- 2025专业深圳合同范本
- 2025解析山东省商品供销合同范本
- 医疗机构抗菌药物临床应用分级管理目录(2024年版)
- 人工智能生成艺术作品的版权问题与伦理探讨
- 幼儿园区域活动有效指导
- 广东省佛山市(2024年-2025年小学六年级语文)统编版小升初模拟(上学期)试卷及答案
- 【MOOC】无线通信原理(双语)-南京邮电大学 中国大学慕课MOOC答案
- 《中国省会城市介绍》课件
- 电子商务物流教学课件
- 排水工程(下)重点
- 声音与情绪管理
- 直播中控转正述职报告
- 史宁中:义务教育数学课标(2022年版)解读
评论
0/150
提交评论