装修知识
模具知识|给AutoCAD增加计算器功能
2016-02-15  浏览:75
模具之家讯:在用AutoCAD进行绘图时,经常需要进行一些必要的计算工作。尽管Autodesk公司随AutoCAD一起提供了一个可进行简单计算的LISP程序CALC.LSP,但该程序开发较早,在COMMAND命令下使用,界面不直观,且使用不方便。本文通过对AutoCAD内对话框结构及AutoLISP进行研究,提出了一种用对话框结构实现计算器功能的方法,同时给出程序流程图,供大家参考。该程序已应用于我院的实际工作中。

1 原理及方法

AutoCAD对话框结构包含多种构件,如edit_box(编辑框)、text(文字)、button(按钮)等。利用这些工具,可以开发出界面友好的实用程序。图1就是用这种方法实现的。 将计算器中数字及各种运算符号以按钮(button)形式排成5行5列,并把计算结果以文字构件方式在对话框内显示,即可得到图1所示对话框结构(对话框文件#CAL.DCL)。最后编制对话框显示及完成各种运算功能的驱动程序即可(驱动程序#CAL.LSP),程序流程图见图2。

在#CAL.LSP程序中用到了AutoLISP提供的多种数值计算及变量转换函数。需要说明的是,笔者在调试过程中发现某些函数对变量有一些特殊要求,现介绍如下,与读者共同探讨:

1、在幂运算函数(expt base power)中,对变量base(底)和power(幂)的要求与代数学中幂的运算要求是不同的。在代数学中对变量base和power的要求如下:

当 base>0时,power 可为任意实数;

当base=0时,power须大于0;

当base<0时,power可为整数,若为小数或分数时要求当其化为最简分数时分母不能为偶数。

但在AutoLISP中当变量base<0时,要求power只能是整型数或小数点后均为0的实数,如2,-2.0等,否则将得到错误信息或返回一个错误结果(视power值而定)。此外,当计算结果太大而溢出时,对于ForDOS版的AutoCAD将返回1.67e+308,而WINDOWS版则返回1.79769e+308。

2、正余弦函数(sin x)及(cos x)要求变量x必须小于等于9.223372e+18(当然还可再延长小数位数),否则得不到正确结果。例如当变量为9.223373e+18时,对于ForDOS版的AutoCAD返回NAN,而WINDOWS版则返回变量值本身。

3、在使用函数(rtos)将数据转化为字符串时,笔者发现当数据大于1e+100(即10的100次方)时,会将指数100自动地改为99。例如,执行(rtos 6e+100 2 6)后得到"6.000000E+99",而不是所期待的"6.000000E+100"。所以本程序规定最大数据不能大于1e+99,否则将显示溢出错误。当然,通过编制另外的转换程序是可以将最大数据提高到AutoCAD所能接受的最大数据(经测试发现其最大值可为1.79769e+308)。限于篇幅,本文不再提供该转换函数,需要的同志可与笔者联系。

2 程序使用方法

将程序#CAL.LSP 及对话框文件#CAL.DCL拷贝到AutoCAD所能找到的目录中,在Command:命令下键入(LOAD "#CAL")进行程序的加载,即可象其它AutoCAD内部命令一样使用#CAL了。也可在所使用的菜单文件(如ACAD.MNU)中的下拉式菜单或屏幕菜单部分加上下面一行:[计算器]^C^C^P(if (null c:#cal) (load"#cal")) #cal以后即可直接从菜单中驱动该程序。

对话框内各个图标与普通计算器相似,"C"表示清零,"M+"表示存储结果,"MR"表示弹出所存储的结果,"sqrt"表示开方,"X**y"表示求幂。当所输入的数据不合适或计算结果溢出时对话框内会显示错误提示信息。

本程序在AutoCAD R12.0 ForDOS及ForWINDOWS版上均调试通过,但在WINDOWS版本中所显示的图形与图1略有不同。
模具之家为您提供最全面的塑胶,塑料,模具,模具设计,塑胶模具品牌的装修知识点和各种塑胶模具的导购与在线购买服务,拥有最便宜的塑胶模具价格和最优质的售后服务,敬请登陆模具之家:http://www.ju26.com/
更多»您可能感兴趣的文章:
更多»有关 塑胶 的产品:
南亚塑胶洛阳总经销 PVC塑料管

南亚塑胶洛阳总经销 PVC塑料管

价格:10.00/米

美国阿姆斯壮塑胶地板PVC地板印象龙地板山西总代理地板

美国阿姆斯壮塑胶地板PVC地板印象龙地板山西总代理地板

价格:到店咨询

美国阿姆斯壮Armstrong塑胶地板威牛pvc地板

美国阿姆斯壮Armstrong塑胶地板威牛pvc地板

价格:1.00/平方米

冠奥通告诉您塑胶跑道维护保养的10大注意事项

冠奥通告诉您塑胶跑道维护保养的10大注意事项

价格:到店咨询

导致塑胶跑道起泡和裂缝的施工环节及不同季节的维护

导致塑胶跑道起泡和裂缝的施工环节及不同季节的维护

价格:到店咨询

冠奥通告诉您PVC塑胶地板的篮球场如何正确的使用

冠奥通告诉您PVC塑胶地板的篮球场如何正确的使用

价格:到店咨询

易博仕铝方通吊顶木纹铝方通厂家直销

易博仕铝方通吊顶木纹铝方通厂家直销

价格:7.50/米

易博仕勾搭式垂帘铝挂片吊顶天花

易博仕勾搭式垂帘铝挂片吊顶天花

价格:8.50/米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

价格:38.00/平方米

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

价格:38.00/平方米

  • 行业资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 陶瓷之家 照明之家 防水之家 防盗之家 博一建材 卫浴之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 BO-YI.COM SYSTEM All Rights Reserved