|
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
应用AutoCAD几何计算器实现快速定位
3 c" s* ?5 k, {" \
0 {: A X6 K& ~7 q& c几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。+ Z+ `% e' e; p
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。# ]- m. Y2 K/ B2 e$ H$ W1 m
在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。 1 m7 I0 f( Q- ^0 @- z. D
下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。( U4 P3 _; ]3 r/ z0 P* C. d
1.在两实体间确定中点6 P. O1 D: H) k9 ?+ W% f
这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:, n' t; V' Z2 @7 z0 n5 A7 C
Command: line
, e" S8 } W9 J From point: 'cal (启动几何计算器). F! s6 c8 w. i) B* O7 p
>> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)& R) K1 h0 U( m, o
>> Select entity for CEN snap 用光标捕捉圆心)
- s* g1 `$ s! O) ~3 ?1 v >> Select entity for END snap:(用光标捕捉直线的端点)
- R/ x x! q3 F' @6 A To point:
& l& y; o" h( ]9 X( Y* ^# M! V 其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。
* Y3 J t9 `- N% z; D 2.确定一条直线上的任意等分点和与直线端点定长的点8 U* p& J6 I4 C- ]) A
使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
( I7 _* I& Y T- k+ |1 Z6 r Command: line
4 n, L% r+ ~$ o6 P E& q From point: 'cal
) k; c* m1 m w& E a. C" a; h >> Expression: plt(end,end,1/3)
8 [: s! t4 j6 t >> Select entity for END snap:(用光标捕捉端点A)
7 }% P7 S r* B5 ?6 \ >> Select entity for END snap:(用光标捕捉端点B后即得到距A点为1/3线段长的点)! b# l6 g- R. n3 j& L7 V, x2 j+ ?
To point:' V) o" Z- h- v9 n! b2 w
如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。4 r; I" O* d2 d5 h
3.用相对坐标来确定点
7 F6 O8 n" h& u 在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:
9 M2 X. j* S* X: a6 B% d Command: line
- K# h( h0 m$ \7 ^7 B$ D. X From point: 'cal4 G7 L' r+ K3 E
>> Expression: end+[2,3](作点和点的相加运算)
/ L% x7 ]$ Q7 O >> Select entity for END snap:(捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)$ @' L: t) Z+ Q0 a. x6 A: j3 b* P
To point:. c" r l" b4 f2 Y0 w8 N' _
这个功能和AutoCAD R13中提供的From目标捕捉模式相似。
0 o2 j1 @, i- o9 v1 p/ B" m 4.作和一斜线相切的圆以及过圆上一点作圆的切线' k5 v8 ]& L7 u, K
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
, _' k- v2 s9 o; }' K Command: circle t& ]/ U3 r) a3 E+ ?8 p$ R7 F6 x
3P/2P/TTR/<Center point>: 'cal
( \9 [3 }2 T: P' ^( z >> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)
; [" ?" o- L0 [0 n! Y >> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
0 \- l7 K( x% _" y% a! ~ to >> Select one endpoint for NEE:(用光标捕捉直线的一个端点)% a5 k; D1 q( p" M8 r3 G3 a }
>> Select another endpoint for NEE:(用光标捕捉直线上的另一个端点)
1 R' R A* U; x# N3 ~. r9 A! W* V Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)
. z! E, S$ r4 ]+ {' z" Z" y. q 改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。
6 h) i5 l7 a2 V% x, ] 假设过圆和一直线的交点作圆的切线的操作过程如下:
4 a9 d. t1 L7 ], `' s5 P Command: line& @ r# B, U) }; y& _7 q
From point: int(捕捉交点)! z5 t. X _$ Z" i9 w0 M
of6 G% \% u2 i- o5 Q, F- I# P) U
To point: 'cal
" o$ ~+ Q3 X$ S >> Expression: int+3*nor(cen,int)
5 \' B& g7 e0 E3 \ >> Select entity for INT snap:(用光标捕捉交点)* a ]4 u& s) {& M1 i# F, C0 K
>> Select entity for CEN snap:(用光标捕捉圆心)
' ~3 ]* ~ @ f9 ] >> Select entity for INT snap:(再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)
4 K4 n7 C& r2 E( w To point:
; `8 \% K0 z. [, V) r9 d4 ` 5.过一条斜线上的已知点作斜线的垂线- O( T8 {; H) ?: ?1 P
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:
+ f" M- b6 J" k Command: line" A* u" s1 @! j! H3 M
From point: mid(设过直线的中点作垂线)' s n) P( j/ {% T4 r
?of
9 M i Q' S( E% z- y( D9 r; W { To point: 'cal
$ q0 n; Q; ?+ H) x >> Expression: mid+5*nee(5是垂线的长度)
* E" p7 _- X- ]6 p: @ >> Select entity for MID snap:(用光标选择斜线捕捉中点)( h% R- z d3 X( Q! }
>> Select one endpoint for NEE:(用光标捕捉直线的端点)
) D. l( g8 ]% |( q >> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)
3 X: b( S& Z: W to point:
+ t# p$ F& [9 q! D; d 同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。 |
|