引 言 lTPo2-j/eK
sk!v!^\_r
几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。 i^(_Gk
(veGztt
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。 P}o:WI4.cB
CjM+%l0MW
在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 PIo/|1
(yE?)s
下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。 e# K =SV!H
v?rjQ'OP
1.在两实体间确定中点 9Y1&SEsNX
^_JD
7-g
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下: 9|dgmEd
WO$PW`k
Command: line T#^
s)"C~w^
From point: 'cal (启动几何计算器) %'j)~
Y((s<]7
>> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元) K1Nhz'^=D
i]*Wt8~!
>> Select entity for CEN snap:(用光标捕捉圆心) JxI}#iA
)JE;#m0q
>> Select entity for END snap:(用光标捕捉直线的端点) PygT_-3z{
oD_je~b)
To point: o:_}=1nh
`pzp(\lc
其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。 aQwc Py|1R
_n_lO8mK
2.确定一条直线上的任意等分点和与直线端点定长的点 qSj2=dlW
~%_$e/T
使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下: ?:Y{c#w>
"K`B'/08^
Command: line O>xGH0H
9H?er_6Yf
From point: 'cal 6GG&mqr+
9_[TYzpB!
>> Expression: plt(end,end,1/3) z71.5n!C
#gi0FXL
>> Select entity for END snap:(用光标捕捉端点A) y5iLFR3z
$6h:j#{JE
>> Select entity for END snap:(用光标捕捉端点B后即得到距A点为1/3线段长的点) -_.)~)P
Adgh:'h
To point: ,Cj1S7GFR
d/Xbk%`p
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。 %d*k3f
}
M hNzmI&`
3.用相对坐标来确定点 8I04Nx
BFt?%E/]
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程: <Bb$d@c
V0z.w:-
Command: line !HL7a]PB
*W,"UL6U8y
From point: 'cal 8AT;9wZqt
Hv(0<k6oH
>> Expression: end+[2,3](作点和点的相加运算) R!;tF|]
g}0}$WgH:
>> Select entity for END snap:(捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点) FGu:8`c9
ej>8$^y
To point: CE-ySIa
y7dnXO!g9-
这个功能和AutoCAD R13中提供的From目标捕捉模式相似。 ibex:W^
iU{bPyz,
4.作和一斜线相切的圆以及过圆上一点作圆的切线 {MU>5\
/8@JWK^I{
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下: L=3^A'|
sXOGIv
Command: circle q.FgX
2]C`S,)
3P/2P/TTR/: 'cal X{\>TOk
G!T)V2y
>> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径) 0[TZ$<v"
S9}P5;u
>> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点) P!:Y<p{=>
GM|gm-t<@
to >> Select one endpoint for NEE:(用光标捕捉直线的一个端点) "2(lgxhj
*O,\/aQ+
>> Select another endpoint for NEE:(用光标捕捉直线上的另一个端点) e*jt(p[Ge
6tB-
Diameter/ <1.6745>: 3(给出圆的半径后即可画出这个圆) dQ@e+u5
&e@2zfl7
改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。 r<c yxR~
JYOyz+wNd
假设过圆和一直线的交点作圆的切线的操作过程如下: n^'ip{
7lY&/-V
Command: line A>(m}P
7)S`AQ2:)
From point: int(捕捉交点) d$8rzd
\Xc6K!HJM
of 2;r(?ebw
B2:6=8<
To point: 'cal X+;Ivx
8:0QI kqk
>> Expression: int+3*nor(cen,int) ~b/lr
3&_O\nD
>> Select entity for INT snap:(用光标捕捉交点) _JOrGVmD
ZXljCiNn+\
>> Select entity for CEN snap:(用光标捕捉圆心) ^%-$8sV
U(]a(k<r
>> Select entity for INT snap:(再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线) G$XvxJ
SLpB$puS
To point: ~Tq
`c
[?iA`#^d
5.过一条斜线上的已知点作斜线的垂线 &0SX*KyI
z8{ kwz
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下: 机械设计 "8%B
(a
5A
&!]$#
Command: line xCFk1%qf
wO&`3Q3~$
From point: mid(设过直线的中点作垂线) _HX1E
4YM!S E-I
of Or=
[2@Wg
5p}Y6Lc\j
To point: 'cal I]bqle0M
)n}Wb+2I
>> Expression: mid+5*nee(5是垂线的长度) $cEl6(66iX
r-v;A
>> Select entity for MID snap:(用光标选择斜线捕捉中点) I-oI,c%+
rlk0t159
>> Select one endpoint for NEE:(用光标捕捉直线的端点) ZQ9!k*
^
3P~I'FQ
>> Select another endpoint for NEE:(用光标捕捉直线的另一个端点) /~NsHStn
rCi7q]_
to point: _fha9`
l-xKfp`
同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。