1227588 发表于 2021-8-28 11:11:29

哪位大神帮忙改写下编号居中问题


[*]现在不能把编号居中
[*]

[*]

[*](defun c:tt () 编号代码
[*](setq i 0 )
[*](setq ss (ssget))
[*](setq pts nil)
[*](setq pts1 nil)
[*](repeat (sslength ss)
[*]    (setq ty (cdr (assoc 10 (entget (ssname ss i )))))
[*]   
[*]    (setq pts (append pts (list ty)))
[*]   
[*]   
[*]    (setq i (1+ i))
[*]   
[*])
[*](setq pt1 (nth 0 pts ))
[*](setq pt2 (nth 1 pts ))
[*](setq jl (distance pt1 pt2))
[*](setq jl2 (polar pt1 0 ( / jl 2)))
[*](setq jl3 (polar jl2 (* pi 1.5)(/ jl 2)))
[*](setq jl4 (distance pt1 jl3))
[*]   (setq
[*]    lst (vl-sort
[*]      pts
[*]      (function
[*]          (lambda (e1 e2)
[*]      (if (equal (cadr e1) (cadr e2) )
[*]            (< (car e1) (car e2))
[*]            (> (cadr e1) (cadr e2))
[*]      )
[*]          )
[*]      )
[*]      )
[*]      ) ;左右 上下
[*];(foreach p lst (getpoint p))
[*](setq i 1)
[*](foreach plst (command "_.text" "j" "mc" "non" (setq pp (polar p(* pi 1.85)jl4 ))
[*]               (getvar "textsize") 0 (itoa i))
[*]    (setq i (1+ i))
[*])      
[*])

1227588 发表于 2021-8-28 11:15:58

C:\Users\Administrator\Desktop\1\5

1227588 发表于 2021-8-28 11:17:26

哪位大神帮忙改写下编号居中问题


[*]


start4444 发表于 2021-8-28 18:07:14

选的都是矩形?应该用外框函数求中点而不是用10组码,jl4也不对,如果矩形大小不一样文字位置就乱七八糟了

1227588 发表于 2021-8-29 05:13:57

start4444 发表于 2021-8-28 18:07
选的都是矩形?应该用外框函数求中点而不是用10组码,jl4也不对,如果矩形大小不一样文字位置就乱七八糟了

大神您说的外框函数求中心点是哪个函数呢?

start4444 发表于 2021-8-29 10:09:36

1227588 发表于 2021-8-29 05:13
大神您说的外框函数求中心点是哪个函数呢?

;;单体外框左下、右上角点
(defun enbox (ename / ll ur)
      (vla-getboundingbox (vlax-ename->vla-object ename) 'll 'ur)
      (mapcar 'vlax-safearray->list (list ll ur))
    )
页: [1]
查看完整版本: 哪位大神帮忙改写下编号居中问题