一、自动绘制出多个等半径圆相切
1.输入基准点baspt
2.输入小圆半径rad
3. 输入欲相切的圆的数量num
4.自动绘制出多个等半径圆相切
5. 涉及到相关变量,设定为baspt、rad、num、midpt、cenpt、kk、ang1、ang2
二、程序代码实现
三、测试及效果
测试一
四、程序优化与注意事项
1. (setq ang1 (/ (* pi 2)(* num 2)))可直接写为(setq ang1 (/ pi num))
2. (setq kk (/ rad (sin ang1))) 利用三角关系可以推算
3. 因为ang1+ang2=pi/2 所以(setq ang2 (- (/ pi 2)ang1))
或(setq ang2 (-(* pi 0.5))ang1)
4. Array命令后的七个自变量必须配合正常执行的顺序输入,必须严谨而不能打乱顺序(如下图)
所以用command函数调用Array命令
需要注意以下书写
① command函数调用AutoCAD命令,一定要加双引号,如“circle” “array”
② 复选项一定要加双引号,如“L” “P” “Y”
③ 用默认值,务必要加上连续两个双引号,如“”
④ (entlast)是Autolisp标准函数,可抓取画面中最后完成的对象,是很好用的技巧