3
使用版大的程序改写了将属性标籤名称加入选取 但因为不太清楚用法 不知道该怎样将没有属性标籤名称所產生的, 如下面这样 (nil #<VLA-OBJECT IAcadAttributeReference2 0f7516f4>) 该怎样去掉此串列呢?
目前的程序如下, 如有错误请在指点指点~谢谢~ (setq ss (ssget '((0 . "insert") (66 . 1)))) (setq n -1) (setq lst '()) (repeat (sslength ss) (setq blkobj (vlax-ename->vla-object (ssname ss (setq n (1+ n))))) (foreach obj (vlax-invoke blkobj 'getattributes) (setq lst (append lst (list (list (if (= (vla-get-tagstring obj) "NU") ;;设置判断属性名称 (vlax-get obj 'insertionpoint) ) obj)) ) ;_ 结束append ) ;_ 结束setq ) ;_ 结束foreach ) ;_ 结束repeat
回传结果如下: ((nil #<VLA-OBJECT IAcadAttributeReference2 0f7516f4>) ((5423.97 846.051 0.0)
#<VLA-OBJECT IAcadAttributeReference2 0f751674>) ((5423.97 786.051 0.0)
#<VLA-OBJECT IAcadAttributeReference2 0f7515f4>) ((5285.76 845.143 0.0)
#<VLA-OBJECT IAcadAttributeReference2 0f752f84>) ((5229.93 845.143 0.0)
#<VLA-OBJECT IAcadAttributeReference2 0f752ee4>) ((5164.51 845.143 0.0)
#<VLA-OBJECT IAcadAttributeRefer |