大佬们帮忙看下,怎么取消左对齐
本帖最后由 书院扫地僧 于 2022-5-8 18:25 编辑;;;;;本代码来源于论坛,取消左对齐,只要调整行距
(defun c:test1 (/ e1 e2 ent heigh heighy i inpoint k lst ob ob_ptx ob_pty pt pto ptx ss )
(setq ss (ssget '((0 . "text"))))
(setq i 0lst '())
(repeat (sslength ss)
(setq ent (ssname ss i))
(setq inpoint (Vlax-Get (Vlax-Ename->Vla-Object ent) 'InsertionPoint))
(setq lst (append (list (cons ent inpoint)) lst ) )
(setq i (1+ i))
)
(setq lst (vl-sort lst
(function
(lambda (e1 e2)
(< (caddr e1) (caddr e2))
)
)
)
)
(setq ob_ptx (cadr (last lst)))
(setq ob_pty (caddr (last lst)))
(setq heigh (Vlax-Get (Vlax-Ename->Vla-Object (car (last lst))) 'Height))
(setq k 0)
(repeat (length lst)
(setq ob (Vlax-Ename->Vla-Object (car (nth k lst))))
(setq pt (Vlax-Get ob 'InsertionPoint))
(setq ptx (subst ob_ptx (car pt) pt ) )
(setq heighy (- ob_pty (* 2 heigh (- (length lst) (1+ k)))))
(setq pto (subst heighy (cadr ptx) ptx ) )
(Vlax-Put-Property ob 'InsertionPoint (Vlax-3d-Point pto))
(Vlax-Put-Property ob 'Height heigh)
(setq k (1+ k))
)
(princ)
)
这句(setq ptx (subst ob_ptx (car pt) pt ))替换为这句
(setq ptx pt) 试试 大佬们帮忙看下,怎么取消左对齐 本帖最后由 书院扫地僧 于 2022-5-8 20:24 编辑
guosheyang 发表于 2022-5-8 19:19
这句(setq ptx (subst ob_ptx (car pt) pt ))替换为这句
(setq ptx pt) 试试
感谢大佬,可以了,谢啦!!!!!!!! guosheyang 发表于 2022-5-8 19:19
这句(setq ptx (subst ob_ptx (car pt) pt ))替换为这句
(setq ptx pt) 试试
大神,请教一下,这个左对齐+自动排列,这个间距怎么修改呢? A._建筑李工 发表于 2022-5-10 10:11
大神,请教一下,这个左对齐+自动排列,这个间距怎么修改呢?
(setq heighy (- ob_pty (* 2 heigh (- (length lst) (1+ k))))) 改几倍高度* 2 heigh
页:
[1]