自贡黄明儒 发表于 2024-8-20 09:42:54

属性块包围盒

万一哪一天用得上,自己好找一点,故放在这里
(defun t1t1t1 (e / A B EB EN L NAME OBJ)
(setq en (entget e))
(setq name (cdr (assoc 2 en)))
(setq eb (TBLOBJNAME "Block" name))
(while (setq eb (entnext eb))
    ;;如果不是*TEXT,ATTDEF ,求包围盒
    (setq name (cdr (assoc 0 (entget eb))))
    (if      (not (wcmatch name "*TEXT,ATTDEF"))
      (progn
      (setq obj (vlax-ename->vla-object eb))
      (vla-GetBoundingBox obj 'a 'b)
      (setq a (safearray-value a))
      (setq b (safearray-value b))
      (setq L (cons a L))
      (setq L (cons b L))
      )
    )
)
;;如果L存在,求包围盒
(if L
    (list
      (apply 'mapcar (cons 'min L))
      (apply 'mapcar (cons 'max L))
    )
)
)


;;选择块
(defun C:t1 (/ A B E L OBJ)
(setq e (car (entsel)))
;;此块的外围盒
(setq obj (vlax-ename->vla-object e))
(vla-GetBoundingBox obj 'a 'b)
(setq a (safearray-value a))
(setq b (safearray-value b))
(princ (list a b))

;;块最小包围盒
(princ (t1t1t1 e))
(princ)
)

moshouhot 发表于 2024-8-20 10:55:12

黄总,这个问题能解决不?
http://bbs.mjtd.com/thread-190830-1-1.html

小菜123 发表于 2024-8-20 11:10:46

看不懂要干什么?属性的坐标没有变换

jun470 发表于 2024-8-20 12:39:39

大佬,动态块可以包围吗?

自贡黄明儒 发表于 2024-8-21 07:11:03

小菜123 发表于 2024-8-20 11:10
看不懂要干什么?属性的坐标没有变换

检查属性文字是否太长,超出图框范围

cghdy 发表于 2024-8-22 09:54:49

jun470 发表于 2024-8-20 12:39
大佬,动态块可以包围吗?

我也想问这个问题

qazxswk 发表于 2024-8-22 20:08:48

我mark一下。

muai2010 发表于 2024-8-22 20:33:52

感谢分享....
页: [1]
查看完整版本: 属性块包围盒