注册 发表于 2022-10-26 15:38:43

如何将下面的源码修改成下悬窗或左侧平开窗或者右侧平开窗?

如何将下面的源码修改成下悬窗或左侧平开窗或者右侧平开窗?
;;;拾取内部点创建上悬窗
(defun C:tt5 (/ tc col oldc pt ee pts pa pc)
    (setvar "cmdecho" 0)
    (vl-load-com)
    (princ "\n拾取内部点创建上悬窗: ")
    (while (setq pt (getpoint))
      (setq ee (bpoly pt))
      (setq ss (entlast))
      (vla-offset (vlax-ename->vla-object ee) -50)
      (setq ee (entlast)
            pts (acet-ent-geomextents ee)          ; ET function
            pa (car pts)
            pc (cadr pts)
      )
      (command "_.ERASE" ss "")
      (command "pline" "none" pa "none"
      (mapcar
          (function (lambda (a b) (/ (+ a b) 2)))
          pc
          (list (car pa) (cadr pc))
       )
      "none"
       (list (car pc) (cadr pa))
       ""
      )
    );while
    (princ)
)

飞雪神光 发表于 2022-10-26 17:15:49

(defun C:tt5 (/ ee pt pts ss ys yx zs zx)
        (setvar "cmdecho" 0)
        (vl-load-com)
        (setq pt (getpoint "\n拾取内部点创建上悬窗:"))
        (while pt
                (setq ee (bpoly pt))
                (setq ss (entlast))
                (vla-offset (vlax-ename->vla-object ee) -50)
                (setq
                        ee (entlast)
                        pts (acet-ent-geomextents ee) ; ET function
                        zx (car pts)
                        ys (cadr pts)
                        zs (list (car zx) (cadr ys))
                        yx (list (car ys) (cadr zx))
                )
                (command "_.erase" ss "")
                (command "pline" "none" zx "none" (mapcar '(lambda (a b) (/ (+ a b) 2)) ys zs) "none" yx "")
                (command "pline" "none" zs "none" (mapcar '(lambda (a b) (/ (+ a b) 2)) zx yx) "none" ys "")
                (command "pline" "none" zs "none" (mapcar '(lambda (a b) (/ (+ a b) 2)) ys yx) "none" zx "")
                (command "pline" "none" ys "none" (mapcar '(lambda (a b) (/ (+ a b) 2)) zx zs) "none" yx "")
                (setq pt (getpoint))
        );while
        (princ)
)

e2002 发表于 2022-10-26 15:58:19

门窗这些为什么要去这样画出来呢?做成图块,特别是参数化动态块,而且能附加各种属性,能存储与表达各种设计信息(其实就是BIM的思想)。

注册 发表于 2022-10-26 16:27:10

e2002 发表于 2022-10-26 15:58
门窗这些为什么要去这样画出来呢?做成图块,特别是参数化动态块,而且能附加各种属性,能存储与表达各种设 ...

还停留在原始社会:$

飞雪神光 发表于 2022-10-26 17:17:53

各有需求 有的人都不会做动态块

Sonnenblumen 发表于 2022-10-26 17:26:44

用院长的9点函数

注册 发表于 2022-10-26 18:29:01

飞雪神光 发表于 2022-10-26 17:15
(defun C:tt5 (/ ee pt pts ss ys yx zs zx)
        (setvar "cmdecho" 0)
        (vl-load-com)


谢谢出手----

czb203 发表于 2022-10-27 09:48:57

飞雪神光 发表于 2022-10-26 17:15
(defun C:tt5 (/ ee pt pts ss ys yx zs zx)
        (setvar "cmdecho" 0)
        (vl-load-com)


真是个热心的好人啊~
页: [1]
查看完整版本: 如何将下面的源码修改成下悬窗或左侧平开窗或者右侧平开窗?