用剖切圆锥精确画抛物线

CAD社区

AutoCAD自身没有画抛物线的命令,而有些专业(如桥梁专业)需要画抛物线。为此,很多人进行二次开发,写了不少画抛物线的程序。不过,都是采用描点的方法,为了获得较高的精度,需要描很多点,对后续的绘图操作,会带来对象捕捉的不便!本文揭示了不用描点的方法,用剖切圆锥的方法画精确抛物线。现在让我们来画一条抛物线。开口指向Y轴的负方向,通过点0,0;-100,-200、100,-200

1.先用直线命令画一直线(图1)。过程如下:

16-g16-1.jpg
图1

命令:LINE

指定第一点:0,0

指定下一点或 [放弃(U)]:'cal

>> 表达式:+[100*100/200<-30]

(43.3013 -25.0 0.0)

指定下一点或 [放弃(U)]: ↙

2.移动该直线,如图2。

16-g16-2.jpg
图2

3.用多段线命令画多段线,先向-60度方向拉出适当长度,如图3。

16-g16-3.jpg
图3

4.继续画多段线,完成一个直角三角形,如图4。

16-g16-4.jpg
图4

5.用REVOLVE命令旋转直角三角形,生成一个三维实体,如图5。过程如下:

16-g16-5.jpg
图5

命令:REVOLVE

当前线框密度:ISOLINES=4

选择对象:(选择直角三角形)

选择对象:↙

指定旋转轴的起点或定义轴依照 [对象(O)/X 轴(X)/Y 轴(Y)]:(捕捉A点)

指定轴端点:(捕捉B点)

指定旋转角度 <360>:↙

6.用SECTION命令切割三维实体,生成一个面域,如图6。过程如下:

16-g16-6.jpg
图6

命令:SECTION

选择对象:(选择上一步生成的旋转实体)

选择对象:↙

指定截面上的第一个点,依照 [对象(O)/Z 轴(Z)/视图(V)/XY 平面(XY)/YZ 平面(YZ)/ZX 平面(ZX)/三点(3)] <三点>:yz

指定YZ平面上的点 <0,0,0>:(捕捉C点)

7.用rotate3d命令对上一步生成的面域进行三维旋转,如图7。过程如下:

16-g16-7.jpg
图7

命令:rotate3d

当前正向角度:ANGDIR=逆时针 ANGBASE=0

选择对象:(选择上一步生成的面域)

选择对象:↙

指定轴上的第一个点或定义轴依据[对象(O)/最近的(L)/视图(V)/X 轴(X)/Y 轴(Y)/Z 轴(Z)/两点(2)]:(捕捉C点) 指定轴上的第二点:(捕捉D点)

指定旋转角度或 [参照(R)]:90

8.先用EXPLODE命令分解旋转后的面域,再清理图面,删除不需要的图元,如图8。

16-g16-8.jpg
图8

9.移动抛物线,如图9。完毕!

16-g16-9.jpg
图9

怎么样?这种方法很精确吧,操作也非常简单。