tangzhij 发表于 2005-4-27 07:38:00

怎样画出螺旋?

<FONT face=宋体 color=#333333>各位大虾: </FONT>



                        我学习CAD有一段时间了,但不知怎样画出立体螺丝线来?

席恩蒂 发表于 2005-5-1 18:58:00

不能在AUTOCAD中直接画出,一般需要编程。

magihand 发表于 2005-5-1 19:22:00

画出来都是近似的,看一圈有多少个控制点,说直观点就是多边形,根本做不出像平面圆那种精确的,最起码理论上是精确的

Joseflin 发表于 2005-5-2 09:30:00

Threads.lsp可以自动画3D solid螺纹。

tangzhij 发表于 2005-5-5 10:09:00

版主:


                               你好,我加载成功后,不知输入什么命令才能画出立体螺丝?

fzfzfz1968 发表于 2005-5-14 06:59:00

<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt">(defun        c:tanhuang(/)<BR>                (setq        p1        (getpoint        "请指定螺旋线基点:"))<BR>                (setq        r        (getreal        "请输入弹簧平均半径:"))<BR>                (setq        d0        (getreal        "请输入弹簧丝直径:"))<BR>                (setq        disp        (getreal        "请输入弹簧节距:"))<BR>                (setq        n0        (getint        "请输入弹簧工作圈数:"))<BR>                (setq        n        (getint        "请输入每圈细化段数        (32/36/40/44/48/52/56/60)        :"))<BR>                (setq        n1        (*        1.25        n))                                                                                                ;支撑圈细化段数                <BR>                (setq        n1        (fix        n1))<BR>                (setq        n2        (*        n0        n))                                                                                                ;工作圈细化段数<BR>                (setq        delta        (/        (*        2.0        pi)        n))                        ;单位转角<BR>                (setq        j        (/        disp        n))                                                                                        ;工作圈轴向位移量                        <BR>                (setq        j0        (/        d0        n))                                                                                                ;支撑圈轴向位移量<BR>                (setq        bb        (caddr        p1))<BR>                (setq        ang        0)<BR>                (setq        jj        0)<BR>                (command        "ucs"        "n"        p1)<BR>                (setq        pt1        (list        r        0        0))<BR>                (command        "3dpoly"        pt1)<BR>                (repeat        n1                                                                                                                                                                                                        ;绘制下支撑圈<BR>                                (setq        jj        (+        jj        1))<BR>                                (setq        ang        (+        delta        ang))<BR>                                (setq        pt        (list        (*        r        (cos        ang))        (*        r        (sin        ang        ))        (*        j0        jj)))<BR>                                (command        pt)<BR>                )<BR>                (setq        p2        (list        0        0        (*        j0        jj)))<BR>                (setq        g1        (*        j0        jj))                                                                                        ;下支撑圈高度<BR>                (setq        jj        0)<BR>                (repeat        n2                                                                                                                                                                                                        ;绘制工作圈<BR>                                (setq        jj        (+        jj        1))<BR>                                (setq        ang        (+        delta        ang))<BR>                                (setq        pt        (list        (*        r        (cos        ang        ))        (*        r        (sin        ang))        (+        g1                (*        j        jj))))<BR>                                (command        pt)<BR>                )<BR>                (setq        p3        (list        0        0                (*        j        jj)))<BR>                (setq        g2        (*        j        jj))                                                                                                ;工作圈高度<BR>                (setq        jj        0)<BR>                (repeat        n1                                                                                                                                                                                                                ;绘制上支撑圈<BR>                                (setq        jj        (+        jj        1))<BR>                                (setq        ang        (+        delta        ang))<BR>                                (setq        pt        (list        (*        r        (cos        ang))                (*        r        (sin        ang))                (+        g1        g2        (*        j0        jj))))<BR>                                (command        pt)<BR>                )<BR>                (setq        g3        (*        j0        jj))                        ;上支撑圈高度<BR>                (command        "")<BR>                (setq        e1        (entlast        ))<BR>                (command        "ucs"        "x"        "")<BR>                (command        "circle"        pt1        (/        d0        2))<BR>                (setq        e2        (entlast))<BR>                (command        "extrude"        e2        ""        "p"        e1)                        ;拉伸弹簧<BR>                (setq        e3        (entlast))<BR>                (setq        pt2        (list        r        (/        d0        4)        0))<BR>                (setq        py        (+        g1        g2        g3        (-        0        (/        d0        4))))<BR>                (setq        pt3        (list        (-        0        r)        py        0))<BR>                (command        "slice"        e3        ""        "zx"        pt2        pt3)                                ;磨平端部支撑面<BR>                (command        "slice"        e3        ""        "zx"        pt3        pt2)<BR>                (command        "ucs"        "w")<BR>        )       

页: [1]
查看完整版本: 怎样画出螺旋?