|
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
应用AutoCAD几何计算器实现快速定位
, K8 k. C$ e% j, O/ r" x) u$ F4 A3 D( J0 H* [8 Z
几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。- `$ w) a6 v8 F6 a+ c& q
在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。
* N4 [$ c2 W, P9 N 在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。
+ v" m$ d- @8 {6 T) V/ l# _ 下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。! m. Z+ i3 L2 w+ T, m4 W
1.在两实体间确定中点
7 @* r# }4 _5 T! n. w. I; ] 这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:& T- a) L) K( ~& R/ g* c
Command: line
$ m3 j6 W! k8 \$ |$ D$ b From point: 'cal (启动几何计算器)
: G7 h( |$ d% b2 {7 V >> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)
* S, C- z( A4 W- F >> Select entity for CEN snap 用光标捕捉圆心)5 Z) T6 H3 q# G. ?1 E( ~* R
>> Select entity for END snap:(用光标捕捉直线的端点) o2 R5 N- r. M0 z6 q3 s
To point:( F( s8 a6 t' _' i, n$ {' ]
其它的目标捕捉模式如int、ins 、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。0 z9 c$ E, [" y' Z
2.确定一条直线上的任意等分点和与直线端点定长的点
: T/ d) L E3 X, j3 c( Y7 z" g 使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:
& @& d# U, {" m ?5 H Command: line' ^3 z2 T5 o! ^
From point: 'cal
( C* j& Y' l x6 W- [3 @ >> Expression: plt(end,end,1/3)
4 T' v0 m7 g8 s/ D. ^, V >> Select entity for END snap:(用光标捕捉端点A)8 h/ a( Q4 W' T1 q
>> Select entity for END snap:(用光标捕捉端点B后即得到距A点为1/3线段长的点)
( ~, V0 }+ ]* d To point:
' E% R" j: v$ \3 c+ l( o$ I 如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。+ M; l" f; l3 Q0 W1 y2 c- @, e
3.用相对坐标来确定点
/ ]2 @! x1 o* u0 k% o 在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:/ F2 f {- X7 C
Command: line9 r# z1 H0 M! ?
From point: 'cal
@& J( p) D# Z >> Expression: end+[2,3](作点和点的相加运算)' A! [( N( t9 z" V9 ^
>> Select entity for END snap:(捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)
0 c& e" Z! f7 n2 p To point:) [7 R- S) Q7 q2 [1 e; l8 `; [
这个功能和AutoCAD R13中提供的From目标捕捉模式相似。
, }2 I( ?- d% L: D) d$ o+ z 4.作和一斜线相切的圆以及过圆上一点作圆的切线( _5 m, ]8 z; r2 r
利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:
% B8 ?" n4 H' j G. K/ ^ Command: circle
8 f+ j+ \5 Z' @3 W5 ]. V 3P/2P/TTR/<Center point>: 'cal
4 I) ^# e y6 y' S: y$ B >> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)$ L' j8 _" b: {7 O3 |7 Q/ P. n
>> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)
/ Q& l' U; o# }1 F* t" \5 X to >> Select one endpoint for NEE:(用光标捕捉直线的一个端点)# F. ~5 `& ]+ m/ X& |. ?( Y
>> Select another endpoint for NEE:(用光标捕捉直线上的另一个端点)# L, Q) g, a* k% S" U5 r
Diameter/<Radius> <1.6745>: 3(给出圆的半径后即可画出这个圆)% d3 F" |* Y# y9 k8 l( e
改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。" c2 G% z: h: h) \7 Q( E, }+ N
假设过圆和一直线的交点作圆的切线的操作过程如下:
! E3 {% [# l" @: g& y9 W Command: line8 ^! d O; W6 m. Q6 X+ \3 Z
From point: int(捕捉交点)0 O2 n+ W% c0 d. R8 r" r0 h7 S
of
! z( [/ x( ^+ Q$ F7 l: j# z To point: 'cal" Q2 }& I7 B1 ]% C$ w* |
>> Expression: int+3*nor(cen,int)
) F' p, X- }5 p2 W >> Select entity for INT snap:(用光标捕捉交点). o8 x# Z6 I- \* v( E( A5 f, ?
>> Select entity for CEN snap:(用光标捕捉圆心)
6 x3 V- T9 D; A J6 d >> Select entity for INT snap:(再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)+ m! M9 `% P2 ?, _9 b S
To point:$ q8 [; |3 d/ i7 y, B- k/ P
5.过一条斜线上的已知点作斜线的垂线# R/ v( c* Q6 o
因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:
3 }- m* E) h7 X, y, h Command: line
/ ?! w+ q2 G: M0 {7 \+ O" w) h% q) I From point: mid(设过直线的中点作垂线)7 R1 P6 _& h x0 P3 Y
?of: f& B9 f5 @& |3 Y, o) T# e
To point: 'cal$ T9 Z" H) y+ P3 U: g
>> Expression: mid+5*nee(5是垂线的长度)
8 z/ R* q' o( q. `+ v >> Select entity for MID snap:(用光标选择斜线捕捉中点)
5 { f: I, ~. Z* }" `5 ?, L >> Select one endpoint for NEE:(用光标捕捉直线的端点)
& g* e3 ^5 a% ~ o1 K >> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)1 v' q/ x+ A# e) |. w
to point:3 G3 l2 Z3 e' Y+ |8 J1 p
同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。 |
|