jiaochen1988 发表于 2009-4-7 21:17

这个程序哪错啦?

(defunc:luoxian
(/)
(setq b1(getpoint"指定螺旋线基点: "))
(setq r(getreal"请输入螺纹平均半径: "))
(setq disp(getreal"请输入螺纹节距: "))
(setq n(getint"请输入每圈细化数:"))
(setq delta(/(*2.0 pi)n))
(setq j(/disp n))
(setq bb(caddr b1))
(setq and 0)
(setq jj 0)
(command "ucs" "0" b1)
(command "3dpoly"(list r 0 0))
(repeat n
    (setq jj (+jj))
    (setq ang(+delta ang))
    (setq pt2(list(*r(cos ang))(*r(sin ang))(+0*(j jj))))
    (command pt2)
    )
(command"")
)我编完后保存到桌面,然后直接关闭了lisp窗口,再把螺线加载后再返回cad中,在命令行输入luoxian但电脑不承认???

tangliangyu 发表于 2009-4-7 23:05

Camello 发表于 2009-4-7 23:09

(defunc:luoxian(/)
(setq b1 (getpoint "指定螺旋線基點: "))
(setq r (getreal "請輸入螺紋平均半徑: "))
(setq disp (getreal "請輸入螺紋節距: "))
(setq n (getint "請輸入每圈細化數:"))
(setq delta (/ (* 2.0 pi) n))
(setq j (/ disp n))
(setq bb (caddr b1))
(setq and 0)
(setq jj 0)
(command "ucs" "0" b1)
(command "3dpoly" (list r 0 0))
(repeat n
    (setq jj (+ jj))
    (setq ang (+ delta ang))
    (setq pt2 (list (* r (cos ang)) (* r (sin ang)) (+ 0 * (j jj))))
    (command pt2)
)
(command "")
)

;; 补了多处空格
;; 但这句改不出来 (setq pt2 (list (* r (cos ang)) (* r (sin ang)) (+ 0 * (j jj))))
;; 这个肯定是错的 ====> (+ 0 * (j jj))

jianlong 发表于 2009-4-8 12:28

看的我头晕啊 天文~

lanzixu3 发表于 2009-4-8 14:38

晕都是这么高的水平了

asianxwq 发表于 2009-4-8 15:09

我也不懂,学习中

jiaochen1988 发表于 2009-4-8 18:47

原来书上是错的,谢谢3楼啊
页: [1]
查看完整版本: 这个程序哪错啦?