您的位置:标准吧 > 标准下载 > CAD文字居中插件

CAD文字居中插件

时间:2021-3-24 13:05:38 作者:2911277963 来源:CA 阅读:120次
CAD文字居中插件

CAD表格中文字居中插件,CAD表格中文字居中插件是一款cad插件,可以帮助用户把表格中的文字一键水平居中处理,方便用户统一表格文字格式,是一款很实用方便的小插件,
CAD表格中文字居中插件是一款非常不错的CAD插件,这款插件可以帮助我们把表格中的文字进行一键水平居中处理,这样就可以统一表格文字格式,非常方便快捷。

用于单行文字绘制表格快速居中,使用方法:1,输入AP.在对话框中加载“文字在表格中居中LSP”。2,输入WZJZ快捷键,调用程序。


;;;文字定点在直线方格中心位置

 

(defun c:WZJZ (/ en ptm)

 

;;;从一个点求到某个方向最近直线的距离

  (defun snearlin (pt ang / scsz ss n en pt1 pt2 ptj lst)

    (setq scsz (* (getvar "viewsize"))

  ss   (ssget "f" (list pt (polar pt ang scsz)) '((0 . "LINE")))

    )

    (if ss

      (progn

(setq n 0)

(while (setq en (ssname ss n))

  (setq ent (entget en)

pt1 (trans (cdr (assoc 10 ent)) 0 1)

pt2 (trans (cdr (assoc 11 ent)) 0 1)

ptj (inters pt (polar pt ang 1.0) pt1 pt2 nil)

lst (cons (list (distance pt ptj) en) lst)

n   (1+ n)

  )

) ; while

(apply 'min (mapcar 'car lst))

      )

    )

  )

 

;;;   求文字的中心点

  (defun txtmpt (en / ent box ls pt ang)

    (setq ent (entget en)

  box (textbox ent)

  ang (cdr (assoc 50 ent))

  ls  (mapcar '(lambda (a b) (* 0.5 (+ a b)))

      (car box)

      (cadr box)

      )

  pt  (cdr (assoc 10 ent))

    )

    (polar pt (+ ang (angle '(0 0) ls)) (distance '(0 0) ls))

  ) ; defun

 

;;; main

  (command "undo" "begin")

  (setq ss (ssget '((0 . "TEXT")))

n  0

  )

  (while (setq en (ssname ss n))

    (setq ptm  (trans (txtmpt en) 0 1)

  disn (snearlin ptm (* 0.5 pi))

  diss (snearlin ptm (* 1.5 pi))

  dise (snearlin ptm 0.0)

  disw (snearlin ptm pi)

    )

    (if (and disn diss)

      (setq yy (* 0.5 (- disn diss)))

      (setq yy 0)

    )

    (if (and dise disw)

      (setq xx (* 0.5 (- dise disw)))

      (setq xx 0)

    )

    (or (= 0 xx yy)

(command "move" en "" "non" (list xx yy) "")

    )

    (setq n (1+ n))

  )

  (command "undo" "end")

  (princ)

)

120
国家标准下载

下载说明:
1.请先分享,再下载
2.直接单击下载地址,不要使用“目标另存为”
3.压缩文件请先解压
4.PDF文件,请用PDF专用软件打开查看
5.如果资料不能下载,请联系本站
最新评论
发表评论
大名:
联络: QQ 或者 邮箱
内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。

验证码: 5625