找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 297|回复: 0

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

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

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

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

×

  引言

; a' u/ |+ V6 c; I( @ ' U5 n/ C" `, P8 R$ {3 v, y

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

8 w( W! N' U; o : I* x' e% y6 X

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

. w) ]# }0 ?3 i b2 X9 s6 d! y/ p+ E C

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

3 q9 `% x3 S* u. _ ) ], m3 k2 m+ a" Q. [, T& M! U

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

( f/ b0 o/ D; D' B / {4 n: b5 M. m3 u- G

  1.在两实体间确定中点

1 U2 C( a' z1 t3 ^ 5 s/ p+ C3 E" A3 v5 J

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

0 b4 P2 E, a; M" w+ j$ y( N) ^( e1 p l$ R" ?- j# t

  Command: line

1 A/ C/ H7 w+ _+ S) n. ?6 \5 `# J, y. Y1 Q! O7 j, J: A

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

# X8 z9 [- G& ], h9 r/ H; S$ v 6 l$ j! r! _' R, S" [8 N

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

4 {* e0 R% a+ k5 V 5 g: X, t- N2 j# B( d

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

6 h& H' m+ ]) v/ F- G : s3 O% Z1 T' p i

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

k; Z2 d# q5 P% h , x+ [ m& a" \9 @

  To point:

% {+ y8 G/ w) C! \- |; o/ z , C0 F5 F( a$ T' F' z. {0 l

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

- M( d* X& m$ y2 y# Y/ i 7 c% h* _9 R4 x: ?

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

+ d3 f1 q( n( m2 p( C % {6 N' F: p0 K8 C9 {& u+ s

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

7 [: X: T6 Z, p3 A J6 E4 ?3 A- n! I8 A" L+ U

  Command: line

$ x9 ^- J2 j$ e" ^ + t) y4 z- s! ?/ p) M% C- u

  From point: 'cal

, i; G% n1 O9 r( [+ U0 y% t2 g9 J; d6 K9 X4 _* P+ x

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

+ M. \8 o; f2 S" q- X* B% k 0 I# _# G( O; S

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

5 h4 V r% f& P( Z2 D1 [+ ^ 7 p& z; b7 f3 J8 `

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

7 f" l/ x$ r e: g0 A% J. ? # T) r5 J' h8 V+ M8 I" k S5 _

  To point:

5 l2 Q: D" T& ^* j J$ j) G& `7 C6 E# y$ [8 s" g

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

W6 ~# y; M: d5 z* V0 S: S 4 T, N9 M7 O2 {! {8 P

  3.用相对坐标来确定点

- B+ j6 g$ j) o% s9 E, f/ |, ] ( d/ r* p$ Y% t: @

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

. R- ~3 M* i3 q, S+ O 5 z, f' a* S) r0 B' Q

  Command: line

, A& I. `7 E5 s" v' Z1 m G ( R) d( I# v/ j, n0 S6 T

  From point: 'cal

+ T* N* Y! q# t* J5 K- G% v2 l8 j |7 j& T

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

5 b' }$ y) T( z4 F ' I5 H5 E7 }8 h$ w+ n" S% ~2 i% K$ T* Z

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

: r! U) T3 V- I& G8 }5 [: C# a( _9 V# U7 N& ?

  To point:

& J; S+ U+ E2 {8 w# ] $ n: ]% F/ e: F- U3 z

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

) J5 Y2 n( a' ]3 R5 W* @( F$ K0 l4 X; x

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

# R( o4 |) s9 b5 o4 q x1 b# [ - T) R' E" ?1 b

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

4 g9 ^. G- t9 k9 C; g2 z& } G: F/ e

  Command: circle

( G& h) L# }9 J4 s : X1 W9 E5 h& q" p! U

  3P/2P/TTR/

: 'cal

; P+ D, R& ^9 H; v( A2 m Y, J ~ 9 u8 P2 I4 {# \) L5 H* T. F

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

) @+ R/ X, @6 v4 ^1 D' h $ {( ~' m6 V) l" B$ {

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

' g- m% t/ n7 J( d/ W $ t1 b$ I7 i5 l; ]+ ^

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

p1 w' V0 V6 K* N4 |8 m 1 |9 {5 Z i/ t) h6 I$ A0 R

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

) `8 n. [+ x o4 q: F . U3 |0 q, b) C$ U6 @3 j

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

5 |( P0 O8 T6 z- M. W$ c" E F' B: \ ( K) O6 ~3 Y6 m" S0 ~

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

6 f! }, z6 l2 Q0 u- @1 k 8 p, a# |- I/ m; h% F' \

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

- V7 }$ }: W1 k2 I8 L & }; q( h0 |' x5 T) l) x! O

  Command: line

; v$ J( [8 C- W) H 2 C% Y6 A5 _$ a: v7 K4 Z1 S

  From point: int(捕捉交点)

% q: l# B/ A! T" Y" E0 J 8 ]* `: p% E/ g- \% l4 X& w' O3 }

  of

7 o3 A5 a" r) e0 O) C # t/ Z0 k. K+ C0 U% H. @8 \

  To point: 'cal

/ p+ F# H1 \+ i8 _2 P! j ^/ t+ k4 N

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

* s- n- i5 x- y, R 5 t3 z4 n6 R' u' C# I* O

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

% V5 j5 |' o" {* b; l; ~0 l0 R5 |9 P# R! [: D

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

1 m! u, z5 X B # l0 T7 P9 ]- V' B: N8 p N

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

* J9 J* s8 p' _3 M- D* O$ n9 K q( ?7 C1 i

  To point:

& g6 p- }5 ~. @ A9 P3 A/ f ; l# ^. F+ c' X/ v/ I/ O

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

. Y8 a, K' n$ u " j% H7 F( c9 Z1 j9 o& [* H9 r

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

( F3 H9 ^7 F/ w1 J$ B& B ; ~& W/ L p2 z4 Y, O+ r5 \

  Command: line

! Y& B+ H2 t4 |5 y. w ) W2 Y A+ v3 U( Z/ t7 L

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

) h6 c, {( F& l8 \: o, W# {5 t( @; ^( {) x) I

  of

( O+ D4 H6 g2 ^ 2 z, U) R3 u" W P7 N! @

  To point: 'cal

& p. Y# U2 Q& `& ^ 8 F. A$ j) w8 I8 g$ ^1 O

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

- z& {! o0 o+ F5 [6 U6 q I3 d ) U; D; c* Z0 R

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

8 e- F8 l3 p! M' Z * O0 C( x, a; F1 C

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

- c: R3 a" \+ l/ S; K' b , ^ H# ? i; N* `

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

$ z1 L9 @) M: f {5 H9 g9 e& \ v% O3 X- \; K

  to point:

1 a, \8 C. r+ o( P 6 _/ T7 O ^, G& j) v$ a

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

6 j) z. ]+ W) k3 d. V! c& _
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

中国磨削网

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

GMT+8, 2025-3-1 18:43 , Processed in 0.145876 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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