|
楼主 |
发表于 2007-8-25 20:45
|
显示全部楼层
应用AutoCAD几何计算器实现快速定位几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。
7 S5 L+ S- y. [8 e 在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。
- G, [" J! w6 {! P 在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。9 B3 j/ ?0 c T3 O; `; v" _. U
1.在两实体间确定中点, }: ~% W4 ^& Y2 S" }1 H1 h
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:- X+ D0 Y" }: Y! h+ E
Command: line5 G& K2 x& S! Y" K6 l* Y& b) I$ N
From point: 'cal (启动几何计算器)
. F- n' p% p) n, l) r: K) u >> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)( u+ H& V$ ]3 z
>> Select entity for CEN snap 用光标捕捉圆心)
+ m- z$ V7 Q' U/ B& ~! G >> Select entity for END snap 用光标捕捉直线的端点)
6 {/ Y( O: q( I7 ? To point:! W3 E" Y3 {2 j1 `% I3 o
其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。$ ^, U- s& w# r8 z
2.确定一条直线上的任意等分点和与直线端点定长的点
- x3 Q$ N& m- q, B* h4 c$ m 使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
7 `; V6 B4 G/ p! e Command: line) x( ]0 I7 m0 T
From point: 'cal
$ S% r8 x" i' ?/ O4 D >> Expression: plt(end,end,1/3)
8 @6 g3 F5 j( ~; ` >> Select entity for END snap 用光标捕捉端点A)& u+ f( w0 l1 D A$ W2 R
>> Select entity for END snap 用光标捕捉端点B后即得到距A点为1/3线段长的点)- d6 S$ s8 Y/ g$ c* q% k7 W; l/ J2 T
To point:2 H/ S# ?7 o7 v4 w9 w2 f; I
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。' J: i! v. C% u/ f
3.用相对坐标来确定点7 B: }9 P) V8 W0 x( ~) j, Q# g
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:. X, L. r/ ?. X8 h# t9 j
Command: line7 Z, o S0 B$ m
From point: 'cal$ n2 L% j, e" x6 [# }8 z4 e
>> Expression: end+[2,3](作点和点的相加运算)$ X' M9 ?: ?8 w' g; Z
>> Select entity for END snap 捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)
4 }* a e( p5 P# a t To point:
$ @ n9 Q% Z: ]! k2 ?6 n 这个功能和AutoCAD R13中提供的From目标捕捉模式相似。
6 X8 ^* J6 b/ `2 q+ h+ ^: ^8 N 4.作和一斜线相切的圆以及过圆上一点作圆的切线" e0 b& h% O2 c/ s$ Y# Q* T
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
+ `$ }& S) F: s* T2 S3 |5 `: L1 V Command: circle
8 y) G5 r; u6 D; z. Y$ G; P& l) a 3P/2P/TTR/<Center point>: 'cal
% o& R6 l8 a2 a3 v >> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)3 L& ?( P* ?" H W3 ^
>> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
" {) }. r% O6 w to >> Select one endpoint for NEE 用光标捕捉直线的一个端点)/ X, |5 y4 E5 O4 R5 h- v. ^2 s
>> Select another endpoint for NEE 用光标捕捉直线上的另一个端点)$ g0 D- ^ x/ M- g/ A
Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)
+ E( v) x, E# O# ^6 o 改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。! E* w* R3 v+ _5 l. m% q* B
假设过圆和一直线的交点作圆的切线的操作过程如下:& {& u$ m* u9 F3 n* V
Command: line
' n& E; }- ~4 ^/ R9 a6 L/ a* i From point: int(捕捉交点)& X1 |6 |7 u9 ^$ |/ ]2 B
of: ?2 j9 t& R& |" G
To point: 'cal
; \# E b9 e7 l7 B. v Q0 F >> Expression: int+3*nor(cen,int)
, x M- l. m8 e9 N! h/ ^1 W. e$ @ >> Select entity for INT snap 用光标捕捉交点)! L% s. E" I) r% Z
>> Select entity for CEN snap 用光标捕捉圆心): p3 t( r' d+ k8 n- ~
>> Select entity for INT snap 再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)' n* P( e, ?( A) d$ c
To point:
; i+ D: C/ ]( X+ ~- W( C 5.过一条斜线上的已知点作斜线的垂线8 ?% i% h) B) ?3 @5 Y+ t
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:) q( D8 q& ?6 R! R# i. {9 v7 _8 b; E
Command: line
6 O# \# J* r, O: H: z" c3 N1 Q, p From point: mid(设过直线的中点作垂线)( ~- V. u& d2 I+ T. h/ b; i
of, h7 {7 @6 Q/ X9 s8 D b
To point: 'cal
, _0 n2 e$ @: A" k1 E >> Expression: mid+5*nee(5是垂线的长度)( T7 A( X" y5 d" g6 {& e
>> Select entity for MID snap:(用光标选择斜线捕捉中点)" R3 a3 I, p& }0 E+ v; A
>> Select one endpoint for NEE:(用光标捕捉直线的端点)
: L& ^& m8 M: l7 P6 e >> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)
' C& P/ f- s; \- L* p: l( I to point:3 E0 x* }7 ~) H [1 U: L
同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。
& b: G3 ~. y7 v6 K" X1 ~# d- F |
|