明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
123
返回列表 发新帖
楼主: KO你

[源码] 快属性批量编辑

[复制链接]
发表于 2023-11-6 13:36:27 | 显示全部楼层

顶一下,顶出高手
 楼主| 发表于 2023-11-6 22:38:03 | 显示全部楼层
wlj96167 发表于 2023-11-6 13:36
顶一下,顶出高手

uualice2020不是搞出来了吗,但不肯分享源码我也没办法,他的快捷键太多插件都是这个命令,我只好放弃了
 楼主| 发表于 2023-11-6 22:39:27 | 显示全部楼层
wlj96167 发表于 2023-11-6 13:36
顶一下,顶出高手

虾版解答的(c:torient)还实用点,什么字都可以旋转
发表于 2023-11-30 15:05:04 | 显示全部楼层
本帖最后由 alexmai 于 2023-11-30 15:17 编辑

;;文字角度为0度,


(defun c:te0 ( / ss flt j mode)
(acet-error-init
(list (list  "cmdecho" 0
             "highlight" (getvar "highlight")
              "limcheck" 0
             "pickstyle" 0
       );list
       T
);list
);acet-error-init

(setq flt '((-4 . "<OR")
             (0 . "TEXT")
             (0 . "ATTDEF")
             (0 . "MTEXT")
            

(-4 . "<AND")
              (0 . "INSERT")
              (66 . 1)
             (-4 . "AND>")
            (-4 . "OR>")
           )
);setq
(princ "\nSelect TEXT, MTEXT, ATTDEF, or BLOCK inserts w/attributes...")
(if (and (setq ss (ssget flt))
         (setq ss (car (acet-ss-filter (list ss
                                             '(("LAYERUNLOCKED") ;Dis-allow locked layers, non-current-space
                                               ("CURRENTUCS")    ;and dis-allow objects not in current ucs
                                              )
                                             T
                                       );list
                       );acet-ss-filter
                  );car
         );setq
    );and
    (progn
     (setq ss (bns_annotation_ss ss))
     (setq mode 0);setq
     (setvar "highlight" 0)
     (setq j (bns_trot ss mode))
     (if ss
         (command "_.select" ss "")
     );if
     (princ (strcat "\n" (itoa j) " objects modified."))

    );progn then
    (princ "\nNo valid objects selected.")
);if
(acet-error-restore)
);







(defun bns_trot ( ss mode / na e1 n a b j )
  (setq j 0)
  (setq n 0)
  (repeat (sslength ss)
    (setq na (ssname ss n)
          e1 (entget na)
    );setq
    (if (= "MTEXT" (cdr (assoc 0 e1)))
        (setq a (cdr (assoc 50 e1)))
        (setq a (acet-geom-angle-trans (cdr (assoc 50 e1)) na 1))
    );if
    (setq a (- a (getvar "angbase")))

    (if (not mode)
        (progn
         (setq a (* (/ 180.0 pi) a))
         (if (< a 0)
             (setq a (+ a 360));setq
         );if
         (if (and (> a 100.0) (< a 280.0))
             (progn
              (bns_rotate_text e1 pi)
              (setq j (+ j 1));setq
             );progn then
         );if
        );progn then most-readable
        (progn
         (setq a (- mode a));setq
         (bns_rotate_text e1 a)
         (setq j (+ j 1));setq
        );progn else
    );if

    (setq n (+ n 1));setq
  );repeat

  j ;the number of objects modified.
);defun bns_trot




(defun bns_rotate_text ( e1 ang / p1 p2 a)

(setq p1 (acet-geom-textbox e1 0.2)
      p1 (acet-geom-midpoint (car p1) (caddr p1))
       a (cdr (assoc 50 e1))
       a (+ ang a)
      e1 (subst (cons 50 a) (assoc 50 e1) e1)
);setq
(entmod e1)
(entupd (cdr (assoc -1 e1)))

(setq e1 (entget (cdr (assoc -1 e1))))

(setq p2 (acet-geom-textbox e1 0.2)
      p2 (acet-geom-midpoint (car p2) (caddr p2))
       a (acet-geom-delta-vector p2 p1)
       a (trans a 1 na T)
      p1 (cdr (assoc 10 e1))
      p1 (acet-geom-vector-add p1 a)

      p2 (cdr (assoc 11 e1))
      p2 (acet-geom-vector-add p2 a)

      e1 (subst (cons 10 p1) (assoc 10 e1) e1)
      e1 (subst (cons 11 p2) (assoc 11 e1) e1)
);setq

(entmod e1)
(entupd (cdr (assoc -1 e1)))

);defun bns_rotate_text




 楼主| 发表于 2024-4-10 06:54:28 | 显示全部楼层

朋友,能私下发源码我吗
905494034@qq.com
发表于 2024-4-10 20:00:03 | 显示全部楼层
KO你 发表于 2024-4-10 06:54
朋友,能私下发源码我吗


本帖子中包含更多资源

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

x
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2024-4-12 22:30:31 | 显示全部楼层
 楼主| 发表于 2024-4-16 06:26:05 | 显示全部楼层

把代码里的颜色选项这里的随层色        colorlist (cons "ByLayer" colorlist))
改成随块色效果更佳        colorlist (cons "ByBlock" colorlist))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 19:39 , Processed in 0.168527 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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