用lisp语言自定义autocad命令

用lisp语言自定义autocad命令

ID:8417818

大小:29.36 KB

页数:4页

时间:2018-03-26

用lisp语言自定义autocad命令_第1页
用lisp语言自定义autocad命令_第2页
用lisp语言自定义autocad命令_第3页
用lisp语言自定义autocad命令_第4页
资源描述:

《用lisp语言自定义autocad命令》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、用LISP语言自定义AutoCAD命令AutoLISP语言作为AutoCAD的二次开发工具,虽然在功能、运行速度和保密性等方面比起ARX等工具要逊色一些,但由于它易学易用,交互性好,灵活性强,对于那些经常使用AutoCAD进行绘图的普通用户来说,不失为一种理想的开发工具。下面就介绍用AutoLISP语言自定义的几个AutoCAD绘图命令,可以起到简化操作、提高作图效率的作用。一、键槽尺寸视图的绘制命令“jct”在绘制轴、齿轮或带轮等零件图时,经常需要画轴上键槽处的剖视图或轮毂键槽的端面视图,比较麻烦;由于键槽的尺寸随轴径的变化而变化,所以我们可以用LISP程序来实现自动绘图。加载下面的程序,在

2、命令行中键入”jct”并回车,通过人机交互的形式输入有关参数,可自动完成轴上键槽的剖视图和轮毂键槽的端面视图的绘制。代码示例如下所示。(defunC:jct() (setqpt0(getpoint"请输入视图的中心位置点:")) (initget7) (setqloopT) (whileloop (setqd(getreal" 请输入键槽处的轴径(12d130))   (alert"轴径数据输入错误!请重新输入!")   (setqloopnil)   );if  );while (cond;根据轴径检索键槽尺寸  (

3、(and(>d12)(<=d17))(setqb5t13.0t22.3));b表示键槽的宽度  ((and(>d17)(<=d22))(setqb6t13.5t22.8));t1表示轴上键槽的深度  ((and(>d22)(<=d30))(setqb8t14.0t23.3));t2表示轮毂上键槽的高度  ((and(>d30)(<=d38))(setqb10t15.0t23.3))  ((and(>d38)(<=d44))(setqb12t15.0t23.3))((and(>d44)(<=d50))(setqb14t15.5t23.8))((and(>d50)(<=d58))(setqb16t

4、16.0t24.3))((and(>d58)(<=d65))(setqb18t17.0t24.4))((and(>d65)(<=d75))(setqb20t17.5t24.9))((and(>d75)(<=d85))(setqb22t19.0t25.4))((and(>d85)(<=d95))(setqb25t19.0t25.4))((and(>d95)(<=d110))(setqb28t110.0t26.4))((and(>d110)(<=d130))(setqb32t111.0t27.4)))(command"circle"pt0"d"d)(command"zoom""a")(setqs1

5、(ssget"l"))(setqdi(-(*(/d2.0)(/d2.0))(*(/b2.0)(/b2.0)))    dx(sqrtdi)    dy(/b2.0)    pt1(list(+(carpt0)dx)(+(cadrpt0)dy))) (initget"ZcLc");Zc表示画轴键槽的剖视图,Lc表示画轮毂键槽的端面视图 (setqzrl(getkword"画轴键槽的剖视图还是轮毂键槽的端面视图(Z/L)?")) (if(=zrl"Zc")  (progn;计算轴键槽上点的坐标   (setqpt2(list(+(carpt0)(-(/d2.0)t1))(+(cadrpt0)d

6、y))    pt3(polarpt2(-(/pi2.0))b)    pt4(polarpt30(-dx(-(/d2.0)t1))))   );progn  );if (if(=zrl"Lc")  (progn;计算轮毂键槽上点的坐标   (setqpt2(list(+(carpt0)(+(/d2.0)t2))(+(cadrpt0)dy))    pt3(polarpt2(-(/pi2.0))b)    pt4(polarpt3(-pi)(-(+(/d2.0)t2)dx)))   );progn  );if (command"pline"pt1pt2pt3pt4"");画键槽 (setqs2

7、(ssget"l")) (command"layer""m"5"l""center"5"c"15"") (command"ltscale"8) (command"line"(polarpt0(-pi)(+(/d2.0)10));画中心线    (polarpt00(+(/d2.0)10))"") (command"line"(polarpt0 (-(/pi2.0))(+(/d2.0)10))   

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。