周末曾经是懒散的心情
谢谢好主意-BIGAL bpoly
打嗝:如果一个单元格中有两个以上的文本实体,则所有实体都重叠
请仅在外框处单击。。
- (vl-load-com)
- (defun c:m2cen (/ ss en i lp pl tx p obj box ll rr)
- ;hanhphuc 23.03.2018
- (and
- (while (not ss)
- (setq
- ss (ssget "_:S:E+."
- '((0 . "LWPOLYLINE") (-4 . "&=") (70 . 1) (90 . 4))
- )
- )
- )
- (setq lp '((en)(mapcar 'cdr (vl-remove-if ''((x) (/= (car x) 10)) (entget en))))
- en (ssname ss 0)
- pl (lp en)
- tx (ssget "_WP" (mapcar ''((x)(trans x en 1)) pl) '((0 . "*TEXT"))))
- (repeat (setq i (sslength tx))
- (setq obj (vlax-ename->vla-object (ssname tx (setq i (1- i) )))
- p (vlax-get obj 'InsertionPoint))
- (if (vlax-property-available-p obj 'AttachmentPoint)
- (vla-put-AttachmentPoint obj 5)
- )
- (and
- (setq box (bpoly (trans p 0 1)))
- (setq pl (lp box)
- mp
- (reverse
- (cons
- 0.0
- (mapcar ''((f) (/ (apply '+ (mapcar 'f pl)) (length pl)))
- (list cadr car)
- )
- )
- )
- )
- (entdel box)
- (progn
- (vla-getboundingbox obj 'll 'ur)
- (vlax-invoke
- obj
- 'move
- (apply 'mapcar
- (cons ''((a b) (* (+ a b) 0.5))
- (mapcar 'vlax-safearray->list (list ll ur))
- )
- )
- mp
- )
- )
- )
- )
- )
- (princ)
- )
为什么@OP不使用内置(命令:table)来填充数据?
我更喜欢activeX自动添加方法更简单、更灵活 |