土木在线论坛 \ 建筑设计 \ CAD下载及教程 \ 大家帮忙看两个程序怎么运行不了

大家帮忙看两个程序怎么运行不了

发布于:2009-07-20 18:44:20 来自:建筑设计/CAD下载及教程 [复制转发]
绘制弯头的,程序如下
(defun c:wt50 ()
(wt_draw 90 50)
)
(defun c:wt70 ()
(wt_draw 100 70)
)
(defun c:wt80 ()
(wt_draw 130 80)
)
(defun c:wt100 ()
(wt_draw 160 100)
)
(defun c:wt125 ()
(wt_draw 185 125)
)
(defun c:wt150 ()
(wt_draw 210 150)
)
(defun c:wt200 ()
(wt_draw 260 200)
)
(defun c:wt250 ()
(wt_draw 260 250)
)
(defun c:wt300 ()
(wt_draw 260 300)
)
(defun c:wt350 ()
(wt_draw 300 350)
)
(defun c:wt400 ()
(wt_draw 350 400)
)
(defun c:wt450 ()
(wt_draw 400 450)
)
(defun c:wt500 ()
(wt_draw 450 500)
)
(defun c:wt600 ()
(wt_draw 490 600)
)
(defun c:wt700 ()
(wt_draw 540 700)
)
(defun c:wt800 ()
(wt_draw 640 800)
)
(defun c:wt900 ()
(wt_draw 680 900)
)
(defun c:wt1000 ()
(wt_draw 730 1000)
)
;;;根据输入的弯头半径和管道直径,绘制弯头。
(defun wt_draw (wt_bj wt_gdbj / selecta pointa
pointa1 pointa2 xjla selectb pointb
pointb1 pointb2 xjlb xjlc
)
(if (= plot_scale nil)
;;;调用绘图比例程序
(fun_plot_scale)
)
(setq selecta (select_point))
(setq pointa (cadr selecta))
(setq pointa1 (caddr selecta))
(setq pointa2 (cadddr selecta))
(entmake
(list '(0 . "LINE") (cons 10 pointa1) (cons 11 pointa2))
)
(setq xjla (entlast))
(setq selectb (select_point))
(setq pointb (cadr selectb))
(setq pointb1 (caddr selectb))
(setq pointb2 (cadddr selectb))
(entmake
(list '(0 . "LINE") (cons 10 pointb1) (cons 11 pointb2))
)
(setq xjlb (entlast))
(command "fillet" "r" wt_bj)
(command "fillet" xjla xjlb)
(setq xjlc (entget (entlast)))
(entdel xjla)
(entdel xjlb)
(wt_draw1 xjlc wt_gdbj)
(princ)
)
;;;;;根据圆弧xjlc和管道半径rad1绘制弯头。
(defun wt_draw1 (wt-arc rad1)
(entmake
(subst (cons 40 (- (cdr (assoc 40 wt-arc)) (/ rad1 2.0)))
(assoc 40 wt-arc)
wt-arc
)
)
(command "pedit" (entlast) "y" "w" (* 0.5 plot_scale) "")
(entmake
(subst (cons 40 (+ (cdr (assoc 40 wt-arc)) (/ rad1 2.0)))
(assoc 40 wt-arc)
wt-arc
)
)
(command "pedit" (entlast) "y" "w" (* 0.5 plot_scale) "")
(princ)
)
;;;;;判断圆弧及绘制圆弧的子程序,保证圆弧小于180度角。
;;本子程序暂时无用.
(defun wt_draw2 (wt_centerpoint wt_firstpoint wt_secondpoint)
(setq a (angle wt_centerpoint wt_firstpoint))
(setq b (angle wt_centerpoint wt_secondpoint))
(if (or (and (< (- a b) 0) (< (- a b) (* pi -1)))
(and (> (- a b) 0) (< (- a b) pi))
)
(progn
(setq c wt_firstpoint)
(setq wt_firstpoint wt_secondpoint)
(setq wt_secondpoint c)
)
)
(command "arc" "c" "non" wt_centerpoint "non" wt_firstpoint
wt_secondpoint)
)

全部回复(2 )

只看楼主 我来说两句抢地板
  • zj2000
    zj2000 沙发
    高手给看下,这两个小程序加载后怎么运行不了。
    2009-07-20 18:45:20

    回复 举报
    赞同0
  • zj2000
    zj2000 板凳
    绘制双线管道的:
    (defun c:gd50 ()
    (wt_zgd 50)
    )
    (defun c:gd70 ()
    (wt_zgd 70)
    )
    (defun c:gd80 ()
    (wt_zgd 80)
    )
    (defun c:gd100 ()
    (wt_zgd 100)
    )
    (defun c:gd125 ()
    (wt_zgd 125)
    )
    (defun c:gd150 ()
    (wt_zgd 150)
    )
    (defun c:gd200 ()
    (wt_zgd 200)
    )
    (defun c:gd250 ()
    (wt_zgd 250)
    )
    (defun c:gd300 ()
    (wt_zgd 300)
    )
    (defun c:gd400 ()
    (wt_zgd 400)
    )
    (defun c:gd500 ()
    (wt_zgd 500)
    )
    (defun c:gd600 ()
    (wt_zgd 600)
    )
    (defun c:gd700 ()
    (wt_zgd 700)
    )
    (defun c:gd800 ()
    (wt_zgd 800)
    )
    (defun c:gd900 ()
    (wt_zgd 900)
    )
    (defun c:gd1000 ()
    (wt_zgd 1000)
    )
    ;;;根据输入的管道直径,绘制双线直管。
    (defun wt_zgd (gd_zj / selecta pointa pointa1 pointa2)
    (if (= plot_scale nil)
    ;;;调用绘图比例程序
    (fun_plot_scale)
    )
    (setq selecta (select_point))
    (setq pointa (cadr selecta))
    (setq pointa1 (caddr selecta))
    (setq pointa2 (cadddr selecta))
    (entmake
    (list '(0 . "LINE")
    (cons 10
    (polar pointa1
    (+ (angle pointa1 pointa2) (/ pi 2.0))
    (/ gd_zj 2.0)
    )
    )
    (cons 11
    (polar pointa2
    (+ (angle pointa1 pointa2) (/ pi 2.0))
    (/ gd_zj 2.0)
    )
    )
    )
    )
    (command "pedit" (entlast) "y" "w" (* 0.5 plot_scale) "")
    (entmake
    (list '(0 . "LINE")
    (cons 10
    (polar pointa1
    (- (angle pointa1 pointa2) (/ pi 2.0))
    (/ gd_zj 2.0)
    )
    )
    (cons 11
    (polar pointa2
    (- (angle pointa1 pointa2) (/ pi 2.0))
    (/ gd_zj 2.0)
    )
    )
    )
    )
    (command "pedit" (entlast) "y" "w" (* 0.5 plot_scale) "")
    (princ)
    )
    2009-07-20 18:44:20

    回复 举报
    赞同0
这个家伙什么也没有留下。。。

CAD下载及教程

返回版块

52.09 万条内容 · 682 人订阅

猜你喜欢

阅读下一篇

郁闷。。标注尺寸变大。。。。

用的是CAD2009,在模型空间里做的图,在布局里标注。。。现在遇到一个很郁闷的问题。。。打开的文件。。尺寸成倍的放大。。。郁闷。。。那位高手能帮忙解决一下。。。

回帖成功

经验值 +10