找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 278|回复: 0

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

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

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

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

×

  引言

7 b8 I' X! e, [* z- [2 R; F5 [9 w* t& k$ x3 }

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

/ D. I* y( X" K+ y$ g- S+ M A/ S) [% H5 w. Z" y) u3 t& N

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

' N% x. ?" ^; _: {* j* f" r1 K 1 l3 v" b# Y) ]8 K( o% P3 |* X

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

6 J7 J+ k' a: A; e7 f/ Y! m+ G" I+ }0 z( M( H

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

6 P; L X& x$ S / B! G- T* D; h

  1.在两实体间确定中点

0 ~) `' P- Q# }0 k# [) b$ n0 ?8 ?( G/ M7 [; E+ U

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

: ^$ L/ S& l6 ` 2 ` G0 q) a, l1 w

  Command: line

( Q: B! g. M+ f ; `9 J* K% h5 o, B* P! B& [

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

- V4 T G9 U! ]1 M9 H " X7 N' o0 ?+ @" |

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

. Q+ v* Y3 V* a X) {( w; p: g8 s5 }0 Y

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

9 A) w: p e8 j" |4 G3 G/ j3 C1 [8 Z. T, t; @# U

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

9 H; ~; ~4 @9 `4 E! ] # J4 E% V6 `" X0 \1 \. |

  To point:

- p7 F+ E3 ^8 C* j! ^" p* j! x 5 L2 v, K# B8 N: h v9 b6 o' K

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

7 C7 }5 N! L( j, m: k6 Z! n9 F C6 h# M. }5 X7 Z

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

5 P* p" t* b: \3 Q, q, o * g2 D8 `6 N6 Z. R

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

* g& D9 @, r8 r5 r& L7 F6 E1 K* I0 W0 |- G R! {

  Command: line

& {# N1 t2 i2 w' U/ m $ o' w: {/ F, E$ Y+ \' G" R

  From point: 'cal

/ J5 Q! D$ r+ j / r4 e3 N% P6 s

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

( Q7 _( Y) p+ X) l1 D# K+ M$ y8 {# r3 u" r9 n6 T/ i

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

1 D& ?& i$ M# e' i4 v8 G% I/ J % m5 b8 ~( C9 n! ^6 l# @; z

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

! ?9 G2 T: U4 |, l4 a 2 o- t' T; V7 l

  To point:

; p' u& N! h5 k $ V# A: L. W2 ?1 S4 _1 v

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

9 ]9 v# b4 H2 K 2 r P" ~; V6 `: H0 m1 }

  3.用相对坐标来确定点

( f: }4 {! [2 Z: i k/ A : w; o3 m! D( X

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

4 i2 _4 e1 q4 _( [, Y4 b2 d x2 e3 Q! c) F( \8 s t D6 w9 p

  Command: line

+ H$ W' C0 i5 E! G0 [ 6 M7 u$ p5 n5 B6 W

  From point: 'cal

6 d1 ?/ b `5 M, Y( @8 n2 t/ o # _" P7 W6 d a

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

* ?5 Y) d. L0 C$ j: U1 j) U7 z0 n% i3 ^/ K9 K

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

7 P! Z4 f6 h2 H" N / G0 w* Y+ x. |3 B' V7 A% S" l9 j

  To point:

5 n Y" ~; H; l+ V! W ' a6 B2 u7 l1 e. s; z6 H( {

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

' b% Q& H, @7 ^ 5 L- g. s, _5 F# t; G# m. x$ w- ~; l+ r

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

3 x3 g8 M8 e0 z3 c* t- G ' e! m+ { {2 e

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

) J; a. B/ K- c2 @" H% |& g! b3 ~ . h3 _+ n; P. f( A

  Command: circle

( T9 C1 W& G) f- {" { 1 I6 N! W# B7 E4 _

  3P/2P/TTR/

: 'cal

. J8 F4 t6 G; U, ^9 G: n $ I" Z) S% S6 g

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

^- H1 `* n( ^5 x S! \7 ] $ y; i/ N/ d3 x2 c, l* F

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

# Y! d" r1 V+ F: q8 A ' r4 a: x2 F. J- Z2 }/ d2 A0 F2 I

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

0 `: a. K4 R6 ^0 w ( \! q. G( ~- z8 b* }2 b6 I: w

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

4 k) w7 Z* ~8 g2 [ i 2 _; e* O( ]" @. X5 Z# r

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

+ K4 {7 T& G5 J6 ` f! f1 p" R8 P2 y6 \5 i

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

4 s" C1 c, }5 S, O. R' E: R" h, Q) w9 g# V2 T

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

7 N8 K* o# h% c5 w, j ?" {9 o/ U: k1 j& \* s. N2 ]

  Command: line

4 F. u3 p; D( @, J 6 V2 v0 A- N; k+ ] e4 F9 v7 |

  From point: int(捕捉交点)

) ~1 \# c4 n& a% N+ l5 K7 z) y( f* S8 u0 R7 n: V- t$ ^* Q- p" Y

  of

7 g& [. a- R$ r9 n0 q; R+ c ' q2 J& G! Y- o" d; U( f

  To point: 'cal

: [# p7 ^1 D' X) E: k4 j! \5 H% M

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

" o$ M8 g1 q# U* n) }) Q( y/ d 5 i4 \; U) o- y9 x5 ~4 ~( l

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

6 J2 J! @) M* q8 r) m4 x2 L6 C) }8 J7 m" a6 x! h! Y( A. w$ Z+ B- y7 K

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

* n5 u9 P" @* f* a- P" _. u / ?: p; i6 B8 ~$ {

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

9 Y$ s$ _" _0 R( A8 S* ? 7 p: m5 o- F; g' J

  To point:

' p7 Y# A O; F% [9 I' r' W' x# e3 H: |9 _# g q" U* w

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

; f; ?" X- `& ^! G% Z4 N. X0 D" A: X5 L

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

, x2 B- V% i8 Y" S( X# c+ c% S 8 b7 U7 U3 l6 H9 [. T; v

  Command: line

3 z1 u" P1 y- j- X/ n! }# Z. u" S0 w: X/ E+ o/ a4 a, R. a

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

4 @8 Y, w/ g. f, N8 p+ `" L( F, H ' n( J i5 J+ y: {

  of

' ^' D5 P$ _8 A7 b3 A+ t ) {* e1 E3 k& q0 ]) U. v4 S/ a) R0 V

  To point: 'cal

* W4 b( I- i+ L) ]- f3 ?' T: C5 X( U, p

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

( ?9 ]+ F5 l m' k1 [ : _& h K- x0 k' C

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

; m1 }9 L. v/ N& z! @, S / x0 H( k$ b% U7 N

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

9 E% d+ j$ C" \+ r 2 f' t1 o# d1 g

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

4 R- {* B0 n. _& {! m( {4 M3 K( i 9 t6 m! Z( W' Q- ?2 C

  to point:

( g0 |1 O1 z; z/ e! [ / j, D$ U p5 H( L" \# r8 g+ p8 }

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

; ~- w0 o X) u& o$ r4 O
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

中国磨削网

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

GMT+8, 2024-12-24 10:47 , Processed in 0.268860 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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