|
楼主 |
发表于 2007-8-25 20:45
|
显示全部楼层
应用AutoCAD几何计算器实现快速定位几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。8 m1 D! F2 Z2 {
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。
8 c4 m m2 d3 M y8 q 在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。
* @( n2 @! I, Z- S; J 1.在两实体间确定中点
- N7 P0 ?" N6 K. b0 K0 t- M 这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:
z% r! h4 ?5 o' R Command: line& Z5 @) X9 Y1 P; C- X
From point: 'cal (启动几何计算器)
; f1 q( s5 A" p >> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)
& y/ h6 c7 T9 a* z >> Select entity for CEN snap 用光标捕捉圆心)% r5 B4 e4 F- M( V
>> Select entity for END snap 用光标捕捉直线的端点)
- ~/ P$ e* D& ]# D' S To point:
- y4 R: ~+ R" f7 K6 Z4 Y5 W) w 其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。
9 A+ a$ E7 }* T 2.确定一条直线上的任意等分点和与直线端点定长的点
- }% _; }& s6 e# P 使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
* l" U: ]3 B* {$ n! c8 t3 p Command: line
& p7 W$ Q. F, I6 M' E From point: 'cal
3 o, T" Z+ @' ]# a/ a0 H >> Expression: plt(end,end,1/3)2 N/ y* _$ e0 I. H) a; P
>> Select entity for END snap 用光标捕捉端点A)9 T0 @3 m- o: d& D! A/ k) { I# Z
>> Select entity for END snap 用光标捕捉端点B后即得到距A点为1/3线段长的点)% a1 U2 d+ {( E5 e% O
To point:" Y! `8 o+ q" n5 E% H2 F5 F
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。% n0 k6 `5 m7 T$ e' Y$ a. [
3.用相对坐标来确定点: b* K2 d* U; n' {9 |1 z
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:
! k" g H6 V$ M9 \ Command: line
8 r6 \. B+ \! u2 B From point: 'cal
% z+ P C5 A. c: Z* w1 e >> Expression: end+[2,3](作点和点的相加运算)
S7 i) [, D- q7 ^4 f >> Select entity for END snap 捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)4 X4 E$ ^( M9 P
To point:
! V4 `0 [! j; f2 F9 { 这个功能和AutoCAD R13中提供的From目标捕捉模式相似。* D# P; C$ ? m: m
4.作和一斜线相切的圆以及过圆上一点作圆的切线% L3 v: w5 k8 s* o, g
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
I5 d9 M4 y2 z" y5 e: C6 H7 Z& w Command: circle! l! u; L* u" j x9 U# c+ x0 _2 v& ?
3P/2P/TTR/<Center point>: 'cal
# ~( f; c) X) a) K* Q& v >> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)
) W6 k* V4 q- z' P8 E9 h >> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)/ d2 k% F' [( J/ H0 q! h
to >> Select one endpoint for NEE 用光标捕捉直线的一个端点)" A/ w; J, w. Z( \
>> Select another endpoint for NEE 用光标捕捉直线上的另一个端点)1 m x5 q0 `6 |. V/ x
Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)9 j* }/ s% @, H. u% |' T
改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。
3 O/ T! c2 E7 T4 @ 假设过圆和一直线的交点作圆的切线的操作过程如下:7 w: F% m: E6 F9 [2 n" k) ^
Command: line
8 |1 m! P1 b1 k8 ^. ]9 X- G From point: int(捕捉交点)6 V2 @. F8 C" G6 j" C2 R
of2 f7 o( H- Y5 N6 o! E) l
To point: 'cal
% W/ i1 g4 r9 Z >> Expression: int+3*nor(cen,int)7 x2 H8 u' _4 q$ I. S- x7 L7 ^' w
>> Select entity for INT snap 用光标捕捉交点)
' O! }5 J6 g2 L: P >> Select entity for CEN snap 用光标捕捉圆心)
* R" X4 }. e2 s' H >> Select entity for INT snap 再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)
. Z; E5 X; x1 Z' d To point:
% U9 k$ Y3 W) y& m 5.过一条斜线上的已知点作斜线的垂线
1 k" E7 s1 o1 r% i 因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:, R$ |8 J+ c% h/ B# Q0 j
Command: line
: J, l3 ]4 j1 }2 N* \! t From point: mid(设过直线的中点作垂线)
& a) i/ D4 X8 M% l* N: {) m( M of* v+ p. F7 V9 q- X1 D0 X% k
To point: 'cal4 P3 c+ i* c9 j+ O* a
>> Expression: mid+5*nee(5是垂线的长度)9 ^8 g3 b" R6 I+ V0 q* t
>> Select entity for MID snap:(用光标选择斜线捕捉中点)% x2 U2 Y3 m; E a3 r
>> Select one endpoint for NEE:(用光标捕捉直线的端点)8 R: W3 W- g, u
>> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)
4 Q5 i- u* O0 T to point:
8 J# [5 Z+ o2 _9 O 同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。
$ p; | z5 ^& B; Q$ W/ h/ d# d |
|