明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖

[讨论] 单行文字合并多行文字后不要跟\N

[复制链接]
 楼主| 发表于 2013-11-9 12:17:42 | 显示全部楼层
如图怎么搞

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2013-11-15 14:13:29 | 显示全部楼层
(defun C:tt1 (/ EN ENT LST LST1 OLDAUN OLDOSM PT SS i ptlst ss1 STR TXT ZG)
  (setq oldaun (getvar "aunits")
oldosm (getvar "osmode"))
  (setvar "aunits" 3)   ;设为弧度
  (setvar "osmode" 0 ) ;设为无捕捉方式
  ;选择封闭方框
  (if(setq ss(ssget '((0 . "LWPOLYLINE")(90 . 5)(70 . 0)))
请高手指正为什么不能实现批量

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2013-11-15 16:51:46 | 显示全部楼层
发表于 2013-11-15 16:52:53 | 显示全部楼层
  1. (defun tt (ss / EN ENT LST LST1 OLDAUN OLDOSM PT SS STR TXT ZG)
  2.   (setq oldaun (getvar "aunits")
  3. oldosm (getvar "osmode"))
  4.   (setvar "aunits" 3)   ;设为弧度
  5.   (setvar "osmode" 0 )                   ;设为无捕捉方式
  6.    (if (not ss)                     ;图中没有插入各种符号
  7.     (progn (alert " 没有选中文本")
  8.            (exit))
  9.     (progn
  10.       (while (> (sslength ss) 0)
  11. (setq ent (entget(setq en (ssname ss 0))));取出第一个数据
  12. (setq pt (cdr(assoc 10 ent))
  13.       txt (cdr(assoc 1 ent))
  14.       zg (cdr(assoc 40 ent))
  15.       lst (cons (list pt txt zg) lst);;获取表
  16.       ss (ssdel en ss))
  17. (entdel  en));删除图元
  18.       (setq lst1 (vl-sort lst
  19.          (function (lambda (e1 e2)
  20.                 (< (cadr(car e1)) (cadr(car e2))) ) ) ));根据y坐标排序
  21.       (setq str "")
  22.       (foreach e lst1
  23. (setq str (strcat (cadr e) "\n" str))
  24. (setq pt (car e);插入点
  25.     zg (caddr e)));字高
  26.       (setq pt (polar pt (* pi 0.5) zg))
  27.       (vl-cmdf "MTEXT" pt "H" zg "W" 0 (substr str 1 (1- (strlen str))) "")))
  28.   (setvar "aunits" oldaun)   ;设为弧度
  29.   (setvar "osmode" oldosm )
  30.   (princ)
  31.   )
  32.   (defun ss2lst (ss / lst n ssnamen)
  33.   (setq n -1
  34. lst '()
  35.   )
  36.   (while (setq ssnamen (ssname ss (setq n (1+ n))))
  37.     (setq lst (cons ssnamen lst))
  38.   )
  39.   (reverse lst)
  40. )
  41.   (defun c:t0 ( / lst p1 p2 pn s1 ss ss0)
  42.   (vl-load-com)
  43.   (setq ss (ssget '((0 . "LWPOLYLINE")))
  44.         lst (ss2lst ss)
  45.   )
  46.   (foreach s1 lst
  47.     (setq pn (vlax-get (vlax-ename->vla-object s1) 'coordinates)
  48.           p1 (list (nth 0 pn) (nth 1 pn))
  49.           p2 (list (nth 4 pn) (nth 5 pn))
  50.           ss0 (ssget "c" p1 p2 '((0 . "*TEXT")))
  51.     )
  52.     (tt ss0)
  53.   )
  54. )
 楼主| 发表于 2013-11-16 21:41:23 | 显示全部楼层
感谢大神,圆满解决
发表于 2015-3-18 20:52:27 | 显示全部楼层
感谢!我找了好久呢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-19 19:20 , Processed in 0.270938 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表