免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AutoCAD圆弧绘制功能的补充秦皇岛烟草机械有限责任公司技术开发研究所 王永强 齐海涛摘 要 以Visual Lisp为二次开发工具,对AutoCAD的圆弧绘制功能进行补充关键词 AutoCAD Visual Lisp 圆弧绘制 一、 引言AutoCAD是目前使用最为广泛的计算机辅助设计软件之一,圆弧绘制是其一项最基本的绘图功能。AutoCAD中画圆弧的方法是根据圆弧的基本参数(如圆弧的起点、终点、圆心、半径、角度、方向)的合理组合来进行绘制。这些绘制圆弧的方法有一个共同特点,即都可以根据已知参数通过三角计算就能得到圆弧的所有基本参数。但当已知圆弧的弧长和弦高或已知弧长和弦长时,无法用AutoCAD现有的方法绘出圆弧,因为在AutoCAD现有的所有绘制圆弧的方法中,没有弧长与弦高或弦长的参数组合。此时要在AutoCAD中绘出圆弧,必须先进行繁锁的高等数学计算,由弧长、弦高参数或弧长、弦长参数求出圆弧的半径、中心角等参数的近似值,再用AutoCAD现有的绘制圆弧的方法进行绘制,给设计工作带来不便。这种情况在实际工程设计中是可能出现的,例如用现有规格260mm x 30m、厚1mm的矩形板料制作截面如图1所示的零件(图1中忽略板厚,弧BCD长 + 30 x 2 = 260),对尺寸L没有过于严格的要求,但要保证其它尺寸,求圆弧BCD的半径R。图1下面就以劣弧时已知圆弧弧长和圆弧弦高为例,介绍用AutoCAD的Visual Lisp二次开发工具进行程序设计,求解并绘出圆弧的方法。二、 开发过程如图2所示,已知劣弧ADB的弧长为a,弦高CD为h。 图2由 a=2R=arccos(R-h)/R a=2Rarccos(R-h)/R 用高等数学求解此方程,一般要先绘制方程的曲线并划定方程的根的隔离区间,再用一定的计算方法反复求得方程的近似值,直到得到满足精度要求的近似解,计算过程复杂、繁锁,而且计算精度不易保证。但我们可以用计算机强大的计算功能来精确地进行求解。在确定程序算法之前,先绘出方程的曲线。令已知参数弦高h分别取不同的常数,以圆弧半径R为变量,求出对应每一个R值的弧长a并绘出方程曲线,为此设计以下Lisp程序:(defun c:yz() (setvar OSMODE 0) (setvar CMDECHO 0) (setq r (getreal n Please input R:);输入起始半径上限 h (getreal n Please input h:);输入假设弦高常数 (if ( r h)(progn(setq cosa (/ (- r h) r) sina (sqrt (- 1 (expt cosa 2) jiao (atan (/ sina cosa) l (* 2 jiao r) ) (while ( r 1)(progn (setq r (- r 1) (if ( r h)(progn (setq cosa (/ (- r h) r) sina (sqrt (- 1 (* cosa cosa) jiao (atan (/ sina cosa) l (* 2 jiao r) p (list r l) ) (command point p );在AutoCAD中绘制点 )在AutoCAD中加载并执行以上程序,依次输入圆弧半径的上限值和圆弧弦高常数,即可绘出对应的方程曲线。图3为程序在AutoCAD中绘制的R极大值为1000、h分别取值10、50、100时方程的曲线。图3由图3所示的方程曲线可知,当弦高为常数时,每一个弧长a值都对应唯一一个半径R(Rh)值,且函数为单调增函数。运用二分法算法,设计以下程序来求解方程并在AutoCAD中绘制圆弧。(defun c:lh()(setq l (getreal n 输入圆弧长度L:) h (getreal n 输入圆弧弦高H:)(if ( h (/ l pi ) (progn (princ n输入参数不构成劣弧,请执行优弧命令。) (progn (setq xx 99999999.0;直径范围初始极大值,可根据实际情况确定 r (/ xx 2) c(/ (- r h) r) s (sqrt (- 1 (expt c 2) wt (/ s c) j (atan wt) ll (* 2 r j) a 0)(while ( (abs (setq b (- ll l) 0.000001)(if ( b 0) (setq xx r r (/ (+ xx a) 2) (setq a r r (/ (+ xx a) 2)(setq c (/ (- r h) r) s (sqrt (- 1 (expt c 2) wt (/ s c) j (atan wt) ll (* 2 j r)(setq p1 (polar (0 0) (- (/ pi 2) j) r) p2 (polar (0 0) (+ (/ pi 2) j) r) (print 圆弧中心角:)(print (* 2.0 j)(print 圆弧半径R:)(print r)(setq p3 (getpoint n 请输入圆弧中心:)(command arc c (0 0) p1 p2 move (entlast) (0 0) p3 ) 在AutoCAD中加载并执行以上程序,输入弧长200、弦高50,程序计算出R值为90.1596,圆弧中心角为127.099,并在AutoCAD中绘出圆弧。测量该圆弧弦高为50,圆弧中心角为127.0986,如图4所示。图4用AutoCAD的list命令列表该圆弧信息,圆弧长度为200.0000,如图5所示。计算精度能满足一般工程设计的需要。图5以上介绍了已知劣弧弧长和弦高时,求解圆弧其它参数并在AutoCAD中绘制圆弧的方法。已知优弧弧长和弦高以及已知弧长和弦长参数时也可以用类似的方法求解。当计算出圆弧半径、中心角等参数后,可结合AutoCAD现有绘制圆弧的方法,在程序中以多种合理的参数组合来绘制圆弧,以进一步方便使用。三、结束语本文介绍了已知圆弧弧长和弦高参数时,运用AutoCAD的Visual Lisp二次开发工具求解圆弧并在AutoCAD中绘制圆弧的方法,对AutoCAD绘制圆弧的功能进行了补充。作者:王永强、齐海涛时间:2005年5月工作单位:秦皇岛烟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校食堂早晚餐采购制度
- 上海闵行职业技术学院《中国古代文学史》2025-2026学年期末试卷
- 唐山幼儿师范高等专科学校《中医耳鼻喉》2025-2026学年期末试卷
- 上海工艺美术职业学院《能源经济学》2025-2026学年期末试卷
- 上海交通职业技术学院《语言学概论》2025-2026学年期末试卷
- 山西老区职业技术学院《金融学概论》2025-2026学年期末试卷
- 山西晋中理工学院《国际营销概论》2025-2026学年期末试卷
- 朔州职业技术学院《新中国史》2025-2026学年期末试卷
- 上海财经大学《商法》2025-2026学年期末试卷
- 山西电子科技学院《高等学校教师职业道德修养》2025-2026学年期末试卷
- 全自动集尘器
- 手术室护士与麻醉的护理配合试题
- 蜡疗操作评分标准
- 《针灸治疗》课件-第十节 耳鸣耳聋
- 磨煤机检修作业三措两案(2020版)
- 防震减灾科普先行防震减灾知识宣传课件
- 建筑工程制图与识图全套课件建筑施工图
- 福建省南平一中2023年中考物理自主招生试题(实验班含解析)
- GB/T 4169.2-2006塑料注射模零件第2部分:直导套
- GB/T 27663-2011全站仪
- GB/T 12265-2021机械安全防止人体部位挤压的最小间距
评论
0/150
提交评论