找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 281|回复: 0

应用AutoCAD几何计算器实现快速定位

[复制链接]
发表于 2010-9-13 21:58:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×

  引言

8 ?6 h* p: T3 N) \ 5 O$ f4 V+ A2 {" ^; D4 W! e

  几何计算器是AutoCAD R12提供的一个十分有用的工具。和普通的计算器一样,几何计算器可以完成+、-、*和/的运算以及三角函数的运算。这使得用户在使用AutoCAD绘图过程中,可以在不中断命令的情况下用计算机进行算术运算,AutoCAD则将运算的结果直接作为命令的参数使用。但重要的是,和一般的计算器不同,AutoCAD几何计算器可以作几何运算。它可以作坐标点和坐标点之间的加减运算,可以使用AutoCAD的OSNAP模式捕捉屏幕上的坐标点参与运算,还可以自动计算几何坐标点。如计算两条相交直线的交点,计算直线上的等分点等。此外,AutoCAD几何计算器还具有计算矢量和法线的功能。当然,AutoCAD几何计算器还有其它的功能,这里就不一一罗列。

( s8 E6 e! m6 _" ~7 _7 z7 M* C$ v2 f) | " F- F" O4 j. r3 O0 M6 o& ]

  在使用AutoCAD绘图中,常常需要确定一些无法直接给出坐标的点。例如,任意两点间的中点;和任意方向直线相切的圆的圆心;以及直线上任意等分点等。这就是我们通常所说的CAD绘图的定位问题。实际上,在许多计算机绘图场合,定位是否方便和精确往往直接影响作图的效率和速度。因此,应该充分利用AutoCAD几何计算器的几何运算功能,来实现AutoCAD绘图中的快速定位。

$ z; e. _8 ~7 z4 u0 V2 B; I) i( P4 [9 b

  在命令提示Command:下键入CAL或激活下拉式菜单的辅助菜单项拾取其中几何计算菜单项都可启动AutoCAD几何计算器。CAL命令也是一个透明命令,可以在其它的命令下随时启动几何计算器。此外,还可以在AutoLISP程序中使用CAL命令。

! f! [0 I5 g- q3 r6 M: W! C ; z, { o k. [0 D4 [

  下面是利用AutoCAD几何计算器的几何运算功能实现在AutoCAD绘图中经常遇到的几个快速定位的实例。

* G2 e1 a% |* h* l, a0 E7 |6 W( D7 ?7 h* B4 J( m' H& V9 r A

  1.在两实体间确定中点

, B# I) p* v* @ ( u0 f4 q, Z: W3 F

  这里不需先在两个实体之间画一条辅助线再用OSNAP的MID模式得到中点。例如,要从一个圆心和一直线的端点之间的中心为起点画一直线。操作过程如下:

# [# r3 {/ E3 D6 P& `* h* s6 u+ | 1 b2 ?' O* D% {8 K4 C& ? H3 K. T

  Command: line

% r5 Q6 C$ i, k3 L& w1 Z ( I) ~6 N1 h* c/ w# q

  From point: 'cal (启动几何计算器)

% Y/ E) w2 B- V/ P& f ! k1 p# Q5 g `' _

  >> Expression: (cen+end)/2 (输入表达式,这里计算器把OSNAP的cen和end模式当作点坐标的临时存储单元)

# j' s% m) ~: ~ 7 C1 M1 z0 m: N6 a

  >> Select entity for CEN snap:(用光标捕捉圆心)

/ ^2 i) E7 t6 O2 s9 k; z% @0 S. o( D8 |6 n* K7 v

  >> Select entity for END snap:(用光标捕捉直线的端点)

# `) a( m3 i$ Y5 ` 0 z9 |- @8 n' ^

  To point:

- u8 \' a2 I+ E/ j0 [8 K 3 Z9 R3 X y, R- d

  其它的目标捕捉模式如int、ins、tan等等均可在几何计算表达式中使用。如果用表达式(cur+cur)/2代替表达式(cen+end)/2,则可以在计算机要求输入点时,再设定OSNAP方式来捕捉所需的点。

2 v, [* h9 Q3 _! H/ k% Z& ^ _! d# H; t; y" w& e" d

  2.确定一条直线上的任意等分点和与直线端点定长的点

9 G9 @% a) v7 o: l ) R* L% l+ @0 K1 l2 H

  使用几何计算器提供的plt和pld函数可以完成这个操作。假设屏幕上有一端点为A和B的直线,要在直线上获得分直线段AB为1比2的点。仍以画直线为例,操作过程如下:

2 o3 L) c, F% N( L' u0 Y+ F 4 _8 e4 `" M, F1 S/ O

  Command: line

( u5 l# o8 o; ]% Z 0 [9 a6 h3 ~7 \0 f* w. Q$ }9 v

  From point: 'cal

I: f" ^* u3 z: {# o9 e 8 X) E+ ?/ W0 m) q4 X

  >> Expression: plt(end,end,1/3)

- y, |. p( L) c$ Y& E $ @* i. X: m, P

  >> Select entity for END snap:(用光标捕捉端点A)

- e/ m; Y9 x' b. ]& \* e# | % @9 P+ u& H: T Z, f

  >> Select entity for END snap:(用光标捕捉端点B后即得到距A点为1/3线段长的点)

0 M5 [1 D) e! u8 p- @4 K$ a $ F. T2 A+ E( O

  To point:

+ M# D# a8 y- H/ x" v' w: ~ ; |! T1 E$ Y( E* ]& `

  如果要得到直线上距端点A为5的点,使用函数pld(end,end,5)代替上面操作过程中的plt(end,end,1/3)即可。

1 A4 E8 C0 |5 e+ _6 M 4 s7 t1 n* i3 V8 z1 D3 T0 @* ?4 F

  3.用相对坐标来确定点

& e% S4 R7 ?0 h X : L! {/ p9 E0 m& E [, Q: H

  在绘图中,经常要相对一条线画出另一条线,下面就是操作过程:

! f& A9 H+ {5 N& E3 e8 o7 N " U$ a2 l1 A# @# w: x- e0 b

  Command: line

% }' t- r# t P1 a( t( m0 v' ~ 2 W5 p4 k2 {( t' {6 n

  From point: 'cal

6 J/ D- H' G( f; B- P6 V8 k : \$ W! m3 m. R( s! {5 S/ d4 v

  >> Expression: end+[2,3](作点和点的相加运算)

( ?! S4 y2 \6 [3 G0 x1 \ ; Q* r) T* f- m ^2 g& J; u

  >> Select entity for END snap:(捕捉一基准直线的端点后即可获得距端点相对位移(2,3)的点)

" K+ [* q# h D% A) b1 w$ Q6 {+ C9 ? - |* b* O9 |7 q" H9 \, x

  To point:

; `! q3 K# F2 d% T, i) M ' W% T7 j* j, F# Q: ?0 [: [

  这个功能和AutoCAD R13中提供的From目标捕捉模式相似。

4 W/ @0 o% t y " Y0 u' k8 p6 {9 ? q8 }

  4.作和一斜线相切的圆以及过圆上一点作圆的切线

0 v. d: d- q; a. g1 }. s% ~ + k8 H- s) W6 N& P/ x) Q' U7 K

  利用AutoCAD正交模式可容易地画出和垂直线或水平线相切的圆。画一个和斜线相切的圆则需要准确地确定圆心。操作过程如下:

( Y3 N, Q5 C/ e3 l0 k# }+ f0 | ! V, A- B6 [2 v1 o# @

  Command: circle

; t# @. F& ~1 }3 t1 U4 A2 @7 T2 X6 ]" h

  3P/2P/TTR/

: 'cal

: }7 S0 w4 Z$ K9 O4 ]- w " C. S0 t9 g" K6 d

  >> Expression: cur+3*nee(cur表示用光标在屏幕上拾取一个点,nee函数用来计算两端点矢量的法线,3是圆的半径)

9 S' ?- K9 t6 V, W 9 p+ ^6 f, e5 ~) {; s6 k

  >> Enter a point:nea(用光标在直线上捕捉一个点作为圆和直线的切点)

8 p( W9 q( O1 o w1 V d+ b; p + {- V+ J8 I& y( B, t+ Y0 T

  to >> Select one endpoint for NEE:(用光标捕捉直线的一个端点)

4 R) j C4 f1 ]+ J: l. B! y/ r( s4 e* l* |, D! R

  >> Select another endpoint for NEE:(用光标捕捉直线上的另一个端点)

% @% {* Y O1 H0 c7 R 8 K8 n% ]3 Z4 O1 Z+ H" Q+ J5 C

  Diameter/ <1.6745>: 3(给出圆的半径后即可画出这个圆)

0 q5 ]1 U) l% s0 \" i$ T : `& ^+ m5 u) I+ h) v

  改变光标捕捉直线两个端点的顺序可在直线的另一侧画圆。

- i3 j* s8 O. Y7 |: K& M/ } ) a% }0 E6 |8 S" q* }

  假设过圆和一直线的交点作圆的切线的操作过程如下:

2 o2 x8 P7 R! c; X! u 8 ~! W4 E$ V; s' q

  Command: line

- w/ P& z s* c& ? G+ l ; m7 _% w x3 @! r

  From point: int(捕捉交点)

& p; D) e: \" H! l' K / w+ P: s0 |! X P. d. Y* F

  of

0 r" F* D z" ]; I1 w3 ~$ b O+ x2 e" b; p

  To point: 'cal

C$ E5 A i5 I b2 p1 M8 [+ ` , H& {; ^! H# K- K

  >> Expression: int+3*nor(cen,int)

: @( ~% H n" f9 H # }, S" r4 r5 t9 y% [0 ?# y3 j

  >> Select entity for INT snap:(用光标捕捉交点)

9 b5 ~8 r4 p% Y5 K1 S+ C 2 a- z/ D$ q* H8 ` y+ s

  >> Select entity for CEN snap:(用光标捕捉圆心)

, s+ r( v, E/ Y0 d / Q, z4 A$ X& x* v1 {" e

  >> Select entity for INT snap:(再用光标捕捉交点即画出从交点出发长度为3的已知圆的切线)

: Q0 h* O% [# I; X' _3 n5 e ) ^: g) T7 E. D; f& q

  To point:

: n, Q& T( c |% L" U9 O1 j 8 f3 Y; p7 C4 c0 d' ?

  5.过一条斜线上的已知点作斜线的垂线

$ ?& v. G. ^# |6 E8 |7 @, T# u( U# @" M; B

  因为是非水平非垂直的直线所以不能用AutoCAD的正交模式画直线的垂线。利用几何计算器可直接画出和斜线垂直并且为确定长度的直线。实际上这是一个如何确定垂线的另一个端点的问题。其操作过程如下:

' Q" X6 c9 \. {, v! I- Q ` ^ ' ^& g$ U) D% H9 x9 z- w$ e

  Command: line

, ]& b4 ]; U) O! q4 H " Q. W0 e( c$ k6 h( D

  From point: mid(设过直线的中点作垂线)

; |) y2 z( r6 K / h" @" Q- H% K7 J. ?9 e

  of

$ \0 x' h7 o- L1 S+ V3 F 1 _, L* u' o" K* ]+ N4 F! S7 [' F

  To point: 'cal

& e, I8 h9 O. Y7 E9 V2 V9 X! x 2 o& K$ W# a6 u. N. D

  >> Expression: mid+5*nee(5是垂线的长度)

/ m5 ?' L1 G) f# C5 Q* Z% h* R + t R1 i+ O) H8 S# ~+ d4 o

  >> Select entity for MID snap:(用光标选择斜线捕捉中点)

& s: _8 ~" M! T1 M& p- m5 N7 R ( Z: X+ ] D# {# o. c

  >> Select one endpoint for NEE:(用光标捕捉直线的端点)

( T i! ]! T& ? 3 V9 o9 w* @" Z/ B) O3 R) [

  >> Select another endpoint for NEE:(用光标捕捉直线的另一个端点)

* E% c5 Y \4 v( C 4 { h4 L$ Z4 I1 M

  to point:

) ?/ W# m0 [# f- P/ [# X) `6 T ) I6 G( d+ Y H" x0 s4 z, C

  同样,改变光标捕捉直线端点的顺序,也可在直线的另一侧画垂线。【MechNet】

1 D9 K6 C* v2 S" ]7 j
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-1-9 10:37 , Processed in 0.123437 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表