找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 3596|回复: 5

CAD2004画三维螺纹

[复制链接]
发表于 2009-4-21 14:37:55 | 显示全部楼层 |阅读模式
我听我一个朋友说以前他用过CAD2004里面有个命令输进去可以出来螺纹的,请大家帮忙,谢谢
回复

使用道具 举报

发表于 2009-4-21 15:16:51 | 显示全部楼层
你是指07版以上的autocad吧,04版没有这个功能的。
 楼主| 发表于 2009-4-22 07:15:08 | 显示全部楼层
我那个朋友不会骗我吧,他说原来学的时候画过,是照书上的一个指令,可惜他那本书掉了,07是可以用螺旋线的,不过还是谢谢你,以后有问题还有请教
发表于 2009-4-26 12:43:54 | 显示全部楼层
;;;-----------彈簧的程式----------  
0 x0 ]4 ]& Y% }6 W( }4 p, t3 I(defun c:spring(/)  2 p7 M. C/ I7 d$ V5 R! A& F2 e
(setq p1(getpoint "基點:"))  ! G0 D1 s6 c1 D# J
(setq r(getreal "平均半徑:"))  
# P, j6 F0 }* z& B; e5 h" V8 N(setq d0(getreal "直徑:"))  
9 i/ `3 `' W- T5 t# C5 J(setq disp(getreal "節距:"))  & S/ V  o' r& h: t1 R6 p+ s0 a% ~
(setq n0(getint "工作圈數:"))  5 |* y- K! U8 |- \+ f0 R0 x
(setq n(getint "細化段數(16/20/24/28/32/36/40/48/52/56/60/100):"))  
, F( v7 J+ H) A. o; U$ _6 ?9 s(setq n1(* 1.25 n)) ;支撐圈細化段數  
1 |5 V5 q! U' z9 X9 P(setq n1(fix n1))  
: `0 p& @0 B  l/ {! o, I3 a& O(setq n2(* n0 n)) ;工作圈細化段數  8 G: g' R; W6 u& v# A7 D
(setq delta(/ (* 2.0 pi) n)) ;單位轉角  
1 K+ e( R; V$ z5 t(setq j(/ disp n)) ;工作圈軸向位移量  
# a7 c7 }. K8 y3 ^+ q9 O( B(setq j0(/ d0 n)) ;支撐圈軸向位移量  
8 Y  V5 c& M" ~9 @(setq bb(caddr p1))  3 }/ W- V2 `8 V# [9 q6 f8 }, b
(setq ang 0)  + O. m) y/ g  `% |6 N" z* O4 t
(setq jj 0)  
4 ^' T6 T0 t% D- C4 C! ^2 r(command "ucs" "o" p1)  
9 V! t0 G# i: l! M8 W. j! C% \(setq pt1(list r 0 0))  ' _/ ?. ~; R# d7 {" M' D0 S
(command "3dpoly" pt1)  4 l" z' e# R5 r" e2 |: J! @
(repeat n1 ;繪製下支撐圈  
/ L# g6 y) V1 R" ?4 {  H(setq jj(+ jj 1))  ' j7 z% j0 a+ |( e4 G
(setq ang(+ delta ang))  ' |* M. K# s4 B7 ^# J
(setq pt(list (* r (cos ang)) (* r (sin ang)) (* j0 jj)))  2 I1 ]) W- W4 c
(command pt)  
' _  O0 e/ Z/ q( P8 Q)  
, y' ^5 @' M$ Y; z(setq p2(list 0 0 (* j0 jj)))  " Q- {$ k, Z2 C1 r$ @
(setq g1(* j0 jj)) ;下支撐圈高度  
6 p' S! b4 T  P* O6 N. B(setq jj 0)  
+ t+ w* ?# E% _' I- T5 Y* j; g(repeat n2 ;繪製工作圈    b3 @  x+ s$ h2 b1 x* U' A/ n1 v- [
(setq jj(+ jj 1))  
1 U1 M* n; z9 L; U$ X2 r(setq ang(+ delta ang))  
! y7 r( H. l- m# V(setq pt(list (* r (cos ang)) (* r (sin ang)) (+ g1 (* j jj))))  6 q/ ^/ j+ L8 _- }/ ?
(command pt)  7 z$ A5 T& Z& q: W
)  
5 S2 ~6 Q' j# [- v7 O* t$ R(setq p3(list 0 0 (* j jj)))  
% }9 D# |' Z% Z$ N) c" y(setq g2(* j jj)) ;工作圈高度  5 L% G5 O! ?$ ]+ {/ r
(setq jj 0)  6 y$ u" m: m6 R* `6 J
(repeat n1 ;繪製上支撐圈  
# h+ S1 I& j* n. o' q(setq jj(+ jj 1))  
: t! F7 u6 t+ Z7 P7 c! O0 W; Q/ l9 S(setq ang(+ delta ang))  & }- A$ F# i7 ?7 }  b9 Z; Y
(setq pt(list (* r (cos ang)) (* r (sin ang)) (+ g1 g2 (* j0 jj))))  
  E& Z; Q( i1 H1 E- o: X; J(command pt)  1 @( B8 F2 l3 L1 J
)  
0 g8 r4 B4 `3 M) w: u(setq g3(* j0 jj)) ;上支撐圈高度  * Q. C; w  W+ u9 i  b" O) e* T
(command "")  ( B1 Y6 w/ u! l8 d( F, }
(setq e1(entlast))  : u& f1 {$ V& J" Q0 E1 ^; e  a/ y% h
(command "ucs" "x" "") ;拉伸彈簧  ( N' q7 M- b0 T. T& t) h+ L
(command "circle" pt1 (/ d0 2))  2 A7 \6 Z% b# J* p+ A
(setq e2(entlast))  
; r8 Z  U' B, w$ U9 ^# Y(command "extrude" e2 "" "p" e1)  ( i1 ^1 M1 J8 X9 q+ D2 V
(setq e3(entlast))  4 T, M2 G4 y+ u2 f, Q1 R7 s
(setq pt2(list r (/ d0 4) 0)) ;磨平  - J5 O4 `) C, f( w  }8 G5 v0 G( k9 a$ L( c4 q
(setq py(+ g1 g2 g3 (- 0 (/ d0 4))))  
# C: v; C7 d% g; o0 _5 W  J(setq pt3(list (- 0 r) py 0))  
/ A) f! a9 _4 f# ]# R0 y$ A(command "slice" e3 "" "zx" pt2 pt3)  
; _/ l2 v, V" O(command "slice" e3 "" "zx" pt3 pt2)  
$ D8 h! ^* \" u: X0 `7 n2 z6 @/ R, o(command "ucs" "w")  7 y- c2 o- u6 ?) e
& L; Z( A. _5 g5 P9 W
)  4 E: b/ |( v0 E6 s' w
;;;---------end----------彈簧程式結束!
& n; A; R5 w" M兄台把這個程序載入CAD就可以繪製3D彈簧了
发表于 2009-5-25 01:54:18 | 显示全部楼层
以前一直没搞出来,有机会试试,谢啦
发表于 2012-5-15 08:46:30 | 显示全部楼层
求螺纹??
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-8-7 01:31 , Processed in 0.073983 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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