清华大学CAD二次开发电子教案第8章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
清华大学CAD二次开发电子教案第8章

【例8-5】绘制图8-17所示轴的剖面轮廓线。 以下两个表达式生成了左图所示的1个圆弧和3段直线。 (command circle 0,0 40) (command line 50,11 31,11 31,-11 50,-11 ) 以下表达式调用AutoCAD的trim命令,得到右图所示修剪后的图形。 (command “zoom” “e”) (command trim All 40,0 50,11 50,-11 ) 对该表达式的各项说明如下: trim:command函数调用的修剪命令。 All:所有的图形对象作为剪切边。 :选择剪切边的操作结束。 40,0:被剪对象的位置,该点为圆上一点,指出该段是为要剪 去的圆弧。 50,11、50,-11:被剪对象的位置,此两点为直线上的点,指出 该段是为要剪去的线段。 :修剪命令结束。 2. 选择图形对象的注意事项 (1)用传统的方法选择图形对象时,必须确保被选图形对象在当前屏幕作图区而且是可见的,否则将选不到待选择的图形对象。如果待选择的图形对象不在屏幕作图区,应该调用zoom或pan命令,尽可能大地显示待编辑的图形对象。 (2)单点选择图形对象时,拾取框不宜过大或过小。若过大,不想选取的图形对象被选中,特别是在图形对象较密集时;若过小,指定位置的拾取框可能碰不到待选择的图形对象。此时应该用setvar函数设置系统变量pickbox,调整拾取框的大小(可变范围0~50像素)。 (3)当图形对象较密集时,可以利用图层的off或freeze选项,关闭或冻结那些与当前作图无关的图形对象所在的图层。 (4)还可以通过图元的名字指定图元,这是最可靠的选择图元的方法,详见第13章。 8.6 调用图案填充功能 图案填充即填加剖面线或剖面符号。AutoCAD有bhatch和hatch两个实现图案填充的命令。bhatch命令允许在需要填充的区域指定一个点,自动确定填充边界。hatch命令需要用户确定填充的边界。前者要求填充区域必须是封闭的,后者对封闭的要求并不严格。 (1)自动确定边界填充 增加以下表达式下: (command layer m poumian ) (command bhatch p ansi31 1.5 0 0,0 ) 该表达式各项含义如下: bhatch:自动确定边界的填充命令。 p:拾取(pick)点的方式。 ansi31:剖面线的名称。 1.5:剖面线的比例因子。 0:剖面线的旋转角度。 0:剖面线的旋转角度。 0,0:拾取点的位置。 :结束拾取点的操作。 结果如下图所示。 (2)指定边界填充 增加的表达式如下: (command hatch ansi31 1.5 0 w -40,-40 40,40 ) 该表达式中一些参数的含义如下: hatch:指定边界填充命令。 w:窗口选择方式。 -40,-40、40,40:窗口的两个角点。 :结束选择填充边界的操作。 其余参数的含义与自动确定边界填充表达式中对应参数的含义相同。 8.7 定义绘制曲线的命令 开始 输入 Xmin 、 Xmax 、步长 Delta 段数 n=(Xmax-Xmin)/Delta X1=Xmin,Y1=f(X1) Delta=(Xmax-Xmin)/n X2=X1+delta,Y2=f(X2) 根据 X1 、 Y1 、 X2 、 Y2 画直线 X1=X2,Y1=Y2 X1 Xmax ? 结束 是 否 曲线的方程为:y=f(x),若Xmin ? x ? Xmax,绘制该方程对应的曲线。 用连续多段的直线代替曲线,每段直线的长度越短,曲线就越逼真。右图是绘制曲线y=f(x)的程序流程图。 【例8-6】 定义绘制渐开线的命令 渐开线(参照图8-19)的参数方程为: x = r(cos? + ?sin?) y = r(sin? - ?cos?) 1. 定义绘制渐开线命令的程序 (defun c:inv(/ p0 phi phimax phimin dphi n x0 y0 x1 y1 x2 y2) (setq p0(getpoint \n输入基圆的圆心:)) (setq r(getdist p0 \n输入基圆的半径:)) (command circle p0 r);绘制基圆 (setq phimin(getreal \n输入渐开线的起始角(弧度):)) (setq phimax(getreal \n输入渐开线的终止角(弧度):)) (setq dphi(getreal \n输入角度增量(弧度):)) (setq n(/ (- phimax phimin) dphi));n为曲线的段数 (setq dph

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档