用中望CAD繪制圓的漸開線
用中望CAD繪制圓的漸開線
機(jī)械行業(yè)在使用CAD的時(shí)候,常常會(huì)需要繪制圓的漸開線。作為一名CAD設(shè)計(jì)的愛(ài)好者,小編對(duì)這個(gè)問(wèn)題也非常感興趣。查找一些資料,得到了一些基本的概念,并找到一個(gè)通過(guò)LISP程序來(lái)實(shí)現(xiàn)的方法。接下來(lái)小編就和大家分享一下,如何用中望CAD來(lái)繪制圓的漸開線。
用中望CAD繪制圓的漸開線
圓的漸開線:把一條沒(méi)有彈性的細(xì)繩繞在一個(gè)定圓上,拉開繩子的一端并拉直,使繩子與圓周始終相切。繩子端點(diǎn)的軌跡是一條曲線。這條曲線叫做圓的漸開線。這個(gè)定圓叫做漸開線的基圓。
圓的漸開線廣泛應(yīng)用于齒輪的嚙合,齒輪的受力總是沿著與基圓相切的方向。標(biāo)準(zhǔn)齒輪分度圓的壓力角為20度,齒輪上的漸開線壓力角不會(huì)超過(guò)80度。在下面程序中,為了直觀,漸開線的壓力角設(shè)置為360度。
Lisp程序如下:
(defun C:jkx ()
(setvar "_ZW_XSDSCMDPAUSE" 1)
(setq pi1 (/ pi 180))
(setq po0 (getpoint " \n 請(qǐng)輸入中心點(diǎn):"))
(if (= po0 nil)
(setq po0 (list 0 0 0))
)
(SETQ d (GETREAL "\n 請(qǐng)輸入分度圓直徑:"))
(if (= d nil)
(setq d 100)
)
(setq step (getreal "\n 漸開線精細(xì)度(0<精細(xì)度<=10):"))
(if (= step nil)
(setq step 1)
)
(setq rd (/ d 2))
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(command "UCS" "O" po0)
(command "CIRCLE" "0,0" rd)
(SETQ R (* rd (COS (* PI1 20))));標(biāo)準(zhǔn)齒輪分度圓的壓力角為20度
(SETQ ST 0)
(SETQ STR (* PI1 ST))
(SETQ X (* R (+ (COS STR) (* STR (SIN STR)))))
(SETQ Y (* R (- (SIN STR) (* STR (COS STR)))))
(SETQ XY (LIST X Y))
(COMMAND "PLINE" XY)
(SETQ ST (+ st step))
(WHILE (<= ST 360) ;齒輪上的漸開線壓力角
(SETQ STR (* PI1 ST))
(SETQ X (* R (+ (COS STR) (* STR (SIN STR)))))
(SETQ Y (* R (- (SIN STR) (* STR (COS STR))))) (SETQ XY (LIST X Y))
(COMMAND XY)
(SETQ ST (+ st step))
)
(command "")
(setvar "osmode" os)
(command "UCS" "P")
)
繪制結(jié)果如下圖: