找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 303|回复: 0

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

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

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

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

×

  引言

- P$ n1 U j' @% m E; o! T4 ]+ o* g" q

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

" U; {+ ]* ^) [' T" ^/ S . `) V- g# F ~2 `, J. M

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

6 A* W. e; i# L+ t4 P, O 1 N' }9 l: G; B% d

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

# P, {) w6 K5 [# l# r 2 l. k- [+ l1 V0 h, C

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

- P! J8 o; ~: V* `. W' S8 e# ]/ O7 \ 2 Y* J7 z2 D7 K4 G/ \

  1.在两实体间确定中点

~, H; S) l0 S( q' m; e$ k; n 5 |. Z) t4 |' _3 ?" G& v5 l; Y

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

: D. z9 [' U* @, P5 i% G % ?; q+ R* T) e; g

  Command: line

+ j8 H7 o$ y9 y2 N9 v2 y" Y8 n" N# W' T! T* w0 {# ~

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

0 Q6 B& c! n( K8 i9 R) M9 O+ j* u! H

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

6 s& o+ S; M0 E) J3 f 8 F( K3 O+ l! {: Y( y

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

$ R- G R0 x& {" M , E' h0 j& a% z. L5 Z9 f* {

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

1 q s. E* ]+ {* _( @- U 2 @; i) x% a/ p- `9 E4 b

  To point:

7 ?( ?/ t# y/ |, W- i% E( T# c- x0 k - B0 x; C }$ X! s

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

/ M7 s' Y" B2 J7 Y) W5 \( ? & F% P2 M8 K- |# I8 o+ M% v

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

1 @0 u1 n9 a. b 4 J# w. E9 [6 A* q% y* J/ j

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

G9 k3 U" a, l- Z. B! J5 t% p; L6 T/ r: _( i3 K

  Command: line

) u- k$ k2 a k8 a$ z8 L$ r 6 G5 ~9 j# Q: Y" y

  From point: 'cal

5 A) C' f- V+ q1 I% T 0 G- Y. J: G7 O- L" J) `& q8 G

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

7 l. ]) X4 I6 D+ O, B2 ]9 A' {2 k" i# `$ Z5 }; f! Y

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

) g. E v) b" e4 o# g6 p+ H3 q8 [ 4 g, _% }; A/ D: |7 N9 w' x# n

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

/ P0 v( M) c# _: W& v$ h: U6 S- Z; C1 m' r

  To point:

% d$ N8 X4 ?- U : C3 L5 w+ O [. j3 z3 u

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

5 D b: L0 m0 p3 r( m4 r 4 u% D2 n) W6 _/ S

  3.用相对坐标来确定点

8 t3 p6 E) W4 k" T( b# s4 ? & t) a3 f% ~7 G/ j4 b

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

4 G! o4 H, _8 l) c$ J e ( L8 r% J& Z+ a3 V2 `3 s

  Command: line

- r& H! s& n* k ' Y" V$ G( \0 a2 r& ]: W

  From point: 'cal

# p- h+ J$ o9 |% s, v; ^- e% P# F B0 E: o' p

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

K% Z; h0 k# P8 Z% M9 B* r * \/ l7 Z$ L( v% `8 f0 S* U

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

: Z; @- a8 E D4 W5 ? ) {, _, Z# U; u9 O0 h* U( k6 a

  To point:

. Z) F: K( i: `- o9 Z8 t4 C) G0 N* G" i F

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

" z' ]& |( T0 I' O b8 P; g, V' u) i, L0 p r# O% m

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

+ ?6 x6 L% S, B/ E/ a# N0 U) |0 V; F

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

8 w! d) Z: g9 P9 s- O: B ' U+ {, w) C- q( x- @

  Command: circle

! M5 H- U. X0 {: _; y& M 9 \) v- W7 P# L0 ?' j+ t: [

  3P/2P/TTR/

: 'cal

k4 {2 H0 E. T, M: p % \! m9 r( D8 }. {3 e: M* B

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

" t! q2 j& G3 a! C # q7 m# p* g, F0 e' {* D6 P/ G

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

! w$ s/ ?/ v3 t: h : D9 ?% Z. v& q2 l

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

E* H- v+ E" h3 t+ |# `3 H% `- y/ F4 o# {5 U

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

0 a; C$ r0 b1 N* ~9 B- E 2 |: F0 y) Q4 F2 J

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

- Q. e8 i+ A* o% D; |; w+ H! w 4 b) E% O$ r' K+ x

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

# J# u. T- w: |% C5 @ 5 A6 V! |- I4 ]9 i

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

5 _3 Q* A; V4 O) k" r. b 2 m& d! L! g/ H/ ^' S1 b

  Command: line

+ {: M. Y. |2 J. `& f1 r; E% @

  From point: int(捕捉交点)

0 I5 |. w `0 c$ }* {# |; n, a% _3 y0 N7 Z" b/ m' d0 b

  of

6 g7 t3 ]" |% ^( s- p& D o $ I% e4 l5 S" C/ O; r% J6 N4 T( v

  To point: 'cal

7 H, A6 S5 }. M, w0 M - X2 ~, R- ^4 F. p% P4 q, M9 M* A

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

# e4 u, O0 k8 [1 N ( q2 u- A; j) Q8 c3 D! F5 N& s3 |

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

m# l/ A# {3 r$ P1 j ) }! k- z4 ^6 V

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

# C! F% f: Y0 x) R8 @0 w. E9 E$ B/ {: W h& v

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

/ u$ `- c2 A2 M7 i- E+ E4 L 4 ?8 b* I7 l. \- q7 F! \" [

  To point:

: j+ z% B3 I1 G. a4 Q* m% I 5 |; P' ~! E9 |0 h

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

' D, c( A% \2 t) G- F1 C) F7 D! p: X. B3 C$ c4 Z

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

* M' ?1 `: _8 ^! S 4 F9 I* I3 O4 m1 U( y; B6 c

  Command: line

! Y0 \9 i- m6 z, [# N9 h( H 5 k# I. J& ~2 y- g

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

, S8 n$ E% j+ _ 3 d2 J7 i$ Z' I8 j0 N/ w

  of

3 \9 K. z/ v4 a- y 9 ]2 `( a$ N: C4 x' l G

  To point: 'cal

* ^; a8 C4 `; s+ j- e* [# B6 x+ c2 S! c* U8 g

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

; K3 K. g5 F# c5 K* \5 J4 | ' }+ G* E3 n7 p5 g' U

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

3 W! r% i; G3 a+ \/ X9 W- |- [) V& o6 E3 X& h! U; k

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

7 G. `: Z3 G9 Q6 o4 Z( {, @& e. G F& Z4 F* ]3 O* D& d9 {

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

) b$ r7 |: D q$ ?# x- X( G. a g: Y& o+ S& _1 g! Q4 l# ?

  to point:

2 J: _3 P- C# l d3 `8 G2 @7 V% Y% K+ U" u

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

. n$ R: J9 y/ S1 B& q
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

中国磨削网

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

GMT+8, 2025-5-18 14:00 , Processed in 0.147221 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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