|
楼主 |
发表于 2007-8-25 20:45
|
显示全部楼层
应用AutoCAD几何计算器实现快速定位几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。
% i. d3 l' ]- j% F; A- R" G R; l 在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。6 `; d/ v) W7 v& T F9 @' _7 r
在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。
0 C5 E n6 K: D' W 1.在两实体间确定中点5 ?, ]% `# o" H
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:; t! n( J7 ]% T- }
Command: line8 [6 s9 u% H' L9 r8 Y
From point: 'cal (启动几何计算器)- C; W! }8 G9 p$ x5 Q
>> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元): ? j$ O3 v, ?' B6 x5 J; O
>> Select entity for CEN snap用光标捕捉圆心)5 p z, D5 ^# n( s5 q" P
>> Select entity for END snap用光标捕捉直线的端点)
* L' `' d4 m6 W) r! K To point:, _ `( I% |: k, I( C) u
其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。" U% j$ R) Q; R4 o6 d _. e
2.确定一条直线上的任意等分点和与直线端点定长的点9 m' @6 ~: r6 g5 p
使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
) t8 @2 M/ V/ m- x/ T Command: line3 k4 g# a/ R" U' K- O B$ I" i t
From point: 'cal2 A% j$ e2 m$ H6 w
>> Expression: plt(end,end,1/3). E8 e& F* Q2 R9 ]3 ^, Q, p4 U
>> Select entity for END snap用光标捕捉端点A)
( {2 W' C# A- p3 a$ | >> Select entity for END snap用光标捕捉端点B后即得到距A点为1/3线段长的点), s' Q; l4 g3 C" d' g+ F
To point:- P# ?& h5 g9 j+ f- p1 h
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。
$ V8 D' n- O5 {( P" E 3.用相对坐标来确定点 H% t5 y! H4 s! ^1 _& r
在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:
% z' c# |5 z+ \$ j Command: line. O2 H5 s& d& _2 N2 a2 U
From point: 'cal: T$ ~$ W8 N6 |: A8 l
>> Expression: end+[2,3](作点和点的相加运算)
7 e2 [* y9 X1 y3 a. m7 F5 S. k >> Select entity for END snap捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)# H( [- S0 Q9 U7 l8 g
To point:
7 Y* L2 N. \; L6 w 这个功能和AutoCAD R13中提供的From目标捕捉模式相似。, s O& Z' L6 }: `% ~0 U! O, g+ n5 h" s
4.作和一斜线相切的圆以及过圆上一点作圆的切线- m$ q; Y: b" e! u V2 @
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
- f7 D' ~7 \( Q! D& ^% K Command: circle5 U/ @( k' G% c( N" n* D1 h6 I
3P/2P/TTR/<Center point>: 'cal2 F2 A8 N# T$ m) @& ^* o! B4 I
>> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)
6 I* F: X4 G& Y" e& m1 Q6 Y >> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
5 N* C. U* c% ]4 `' O4 h" E/ w% E% G; u to >> Select one endpoint for NEE用光标捕捉直线的一个端点)
* U b" H7 V! B9 j) }6 L >> Select another endpoint for NEE用光标捕捉直线上的另一个端点)) m6 E8 {& E' K* v4 j
Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)
5 s: t2 V* b E0 x. I- b8 l G) S 改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。
- J; U6 y: T8 |6 T! ^0 P 假设过圆和一直线的交点作圆的切线的操作过程如下:
8 \ u& g; u3 x4 D; B2 U6 ~ Command: line) w1 C( y% E: G
From point: int(捕捉交点)
1 E8 q( M; K- O+ E of
7 V2 A9 l( h' Y, z8 f6 Z To point: 'cal; r. e3 x, ]- Z6 u- |; k( G
>> Expression: int+3*nor(cen,int)
( V7 A# Y! |$ D7 k! q% H% t: f >> Select entity for INT snap用光标捕捉交点)
: F6 U3 o( Y' B( u+ @# R" o >> Select entity for CEN snap用光标捕捉圆心): \+ ?4 j- F" X; ~2 C
>> Select entity for INT snap再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)
2 w" q, D2 w4 } X$ q0 p To point:
' U; r2 ~ @, G3 I3 n) P0 X( d 5.过一条斜线上的已知点作斜线的垂线
- S- [7 G4 ]. r+ L F6 o9 b3 x 因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:& l9 I% l- Y0 M! D" Y# q+ h+ C
Command: line
4 x! u9 ^1 U4 R& B From point: mid(设过直线的中点作垂线)
% @9 l7 i( |2 u0 c+ j# d# g of+ j# S7 V- x0 u8 Q& ?/ ^/ w% c
To point: 'cal
' G' N' L& D# m/ |# h# L >> Expression: mid+5*nee(5是垂线的长度)5 ?0 Y* ~$ o$ l
>> Select entity for MID snap:(用光标选择斜线捕捉中点)
; s( `# |. i0 u" a >> Select one endpoint for NEE:(用光标捕捉直线的端点)
$ I/ m, ?1 ]' u4 c+ A E >> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)
. l: a+ E9 g' f# O( w to point:5 ?# ]. Y) S# A* O
同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。0 Y. o9 }0 u `. K/ ^/ ^/ _1 e# ?3 o, U4 X
|
|