|
楼主 |
发表于 2007-8-25 20:45
|
显示全部楼层
应用AutoCAD几何计算器实现快速定位几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。! a) Z4 ^; H" w( ?! k. X9 M6 t& ~
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。! ?8 o# h4 f2 d! J/ G6 b0 ~
在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。
3 ~- G! k9 v' g. A- ~+ V 1.在两实体间确定中点4 }: h/ U7 M& M
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:3 M6 U. p3 i4 \% F8 G1 H
Command: line) z' C7 z0 ?, F
From point: 'cal (启动几何计算器)4 W' x2 G- U# J
>> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元), A @- D: g. `( T# h
>> Select entity for CEN snap 用光标捕捉圆心)
2 K7 x W, t. m" y$ A >> Select entity for END snap 用光标捕捉直线的端点)! v2 H; h6 r1 \5 k3 O; \
To point:4 @: k" T& K5 X1 _
其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。
* x) Z4 q4 l9 f( Q! F" V9 U 2.确定一条直线上的任意等分点和与直线端点定长的点- x, \* I+ T9 y: R F
使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:" \* A. q- o3 |8 \# t8 y$ c; }
Command: line
* n# ], y* G1 Q From point: 'cal
1 q$ B3 |2 ]7 K5 y: \) A1 G >> Expression: plt(end,end,1/3)( k3 f) z- l9 S% r" }
>> Select entity for END snap 用光标捕捉端点A)/ ~) p3 |5 u0 ?
>> Select entity for END snap 用光标捕捉端点B后即得到距A点为1/3线段长的点)
- s4 F, G: Z5 ^. Z. f To point:
; x' ?* f0 n* x; Y 如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。6 i6 }4 [/ L z
3.用相对坐标来确定点" A0 V, `/ H$ C' J5 Q
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:' Z- p# r. Z# }8 h
Command: line
$ |( ^1 J1 j s1 S. z From point: 'cal, j2 z8 j C/ B" i5 f' Z6 K, K& w
>> Expression: end+[2,3](作点和点的相加运算)2 b8 U: ]; _' | X
>> Select entity for END snap 捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)
% W6 Y1 \4 W! }- _" \3 J To point:
& G2 L1 D. k% M 这个功能和AutoCAD R13中提供的From目标捕捉模式相似。
s( d. f) H; d$ v5 ~4 W p 4.作和一斜线相切的圆以及过圆上一点作圆的切线! R0 J0 G0 y. t! r
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:1 j+ n- y* |7 ^8 w- T) ~
Command: circle& N; K1 T$ I' T$ N( L
3P/2P/TTR/<Center point>: 'cal% a' N$ a: X: ^1 V' z! S
>> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)3 ^5 R% m. F' f2 X0 V
>> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
( |, t2 D# j! P' e( ]6 r to >> Select one endpoint for NEE 用光标捕捉直线的一个端点)
& H) @8 d6 g3 w$ j* ~$ ? >> Select another endpoint for NEE 用光标捕捉直线上的另一个端点)9 l% O9 w; O# ^5 C: U( T! Z
Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)& Z. x# E+ {0 w4 v4 p8 s" F% U
改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。
- K# G; P8 V ?/ b4 ^! q 假设过圆和一直线的交点作圆的切线的操作过程如下:5 B9 E u/ C$ ?/ @4 _# k+ w& ~
Command: line6 s- e# X) Z4 O6 M% B+ `
From point: int(捕捉交点)& v1 s0 X$ f" L
of: v2 ?8 v A7 b7 y3 @ A- j+ A- d
To point: 'cal
8 U$ o, a+ O" w >> Expression: int+3*nor(cen,int)
1 H' s' u5 v R# b8 u. J1 H# F0 X >> Select entity for INT snap 用光标捕捉交点)/ R H$ d7 ?2 F% ~9 p
>> Select entity for CEN snap 用光标捕捉圆心)+ d3 [, `4 ~! e; ?. j
>> Select entity for INT snap 再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)
" I4 ?. Z( c3 k+ d2 m$ |6 {7 M$ q To point:
# }' Y9 S5 E& @; ]0 H 5.过一条斜线上的已知点作斜线的垂线1 E: t( L8 U- @ l% w; Y
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:
" Z3 c/ M- B: I2 G, C: e. X: Y6 N Command: line/ v6 q( V) i) |+ V
From point: mid(设过直线的中点作垂线), c' j# Y: }3 Q* G" B: W
of
0 H! c4 R, P; s* I+ t% a To point: 'cal
( G7 ~, s/ a. L1 I1 C: A >> Expression: mid+5*nee(5是垂线的长度)
7 ? Y! a- q1 h' i' ` >> Select entity for MID snap:(用光标选择斜线捕捉中点)' R7 o1 B1 W: f4 n2 S+ p
>> Select one endpoint for NEE:(用光标捕捉直线的端点)+ g( [. E7 o0 z0 x* \2 B0 a8 `
>> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)
" G" v* \$ |; a: M1 i to point:
2 W. i- s* c2 _% t' ]! k: H, V 同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。% {" H+ P9 ~' C
|
|