好好-MEN 发表于 2022-4-26 23:07:03

vitalgg 发表于 2022-4-27 20:53:41

本帖最后由 vitalgg 于 2022-4-27 21:26 编辑

http://atlisp.cn/stable/at-lab/rec-tube.mp4


http://atlisp.cn/package-info/at-lab-stable.html

@lisp 安装请至 http://atlisp.cn

(defun @lab:rec-tube (/ res w h )
(@:help "绘制矩形管")
(setq res (ui:input "请输入参数"
                      '(("Width" 200 "矩形管宽度")
                        ("Height" 300 "矩形管高度")
                        ("t" 10 "矩形管厚度"))))
(while (setq pt (getpoint "请输入绘制位置:"))
    (setq w (* 0.5 (cdr (assoc "Width" res))))
    (setq h (* 0.5 (cdr (assoc "Height" res))))
    (setq t1(cdr (assoc "t" res)))
    (entity:make-rectangle
   (polar (polar pt pi w)
            (* 1.5 pi) h)
   (polar (polar pt 0 w)
            (* 0.5 pi) h))

    (entity:make-rectangle
   (polar (polar pt pi (- w t1))
            (* 1.5 pi)(-h t1))
   (polar (polar pt 0 (- w t1))
            (* 0.5 pi) (-h t1 )))))

e2002 发表于 2022-4-27 22:57:00

这种需求,参数化动态块最方便。

好好-MEN 发表于 2022-4-29 15:06:34

vitalgg 发表于 2022-4-30 11:20:21

好好-MEN 发表于 2022-4-29 15:06
大师,你这是好用,但是我就画一个管,还得安装你这个大插件,有点繁重了

不用的插件可以不安装,只安装核心程序即可。

都不想安装的话,网站有需要的函数源码,你可以自己拼凑一个lsp文件。

自己拼凑,还是安装 @lisp . 都是需要花时间的。

http://atlisp.cn/function/entity:make-rectangle


xyp1964 发表于 2022-4-30 19:17:10


(defun c:tt (); tt(矩形管)
(defun Udist (bit kwd msg def bpt / inp)
(if def
    (setq msg (strcat "\n" msg "<" (rtos def) ">: ")bit (* 2 (fix (/ bit 2))))
    (setq msg (strcat "\n" msg ": "))
)
(initget bit kwd)
(setq inp (if bpt(getdist msg bpt)(getdist msg)))
(if inp inp def)
)
(setq ww (Udist 7 "" "宽度<输入或鼠标直接量取>" ww nil))
(setq hh (Udist 7 "" "高度<输入或鼠标直接量取>" hh nil))
(setq dd (Udist 7 "" "厚度<输入或鼠标直接量取>" dd nil))
(while (setq p0 (getpoint "\n基点<退出>: "))
    (setq p1(list (+ (car p0) ww) (+ (cadr p0) hh))
          p01 (list (+ (car p0) dd) (+ (cadr p0) dd))
          p11 (list (- (car p1) dd) (- (cadr p1) dd))
    )
    (command "Rectang" "non" p0 "non" p1)
    (command "Rectang" "non" p01 "non" p11)
)
(princ)
)

好好-MEN 发表于 2022-5-1 11:15:30

bai0379 发表于 2022-5-1 11:57:30

我的怎么用不起来啊
页: [1]
查看完整版本: 求助有没有可以绘制矩形管的小程序,如图所示,输入宽度,高度。和厚度就生成