找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2063|回复: 8

[原创] 修正贱人工具箱文字排序

[复制链接]
发表于 2008-12-12 15:51:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
贱人工具箱中的文字排序功能,排序是按照选择次序排序的。这样窗选和窗交选择排序出来的结果就不一样了。这样会打乱原来文字之间的次序,这样还不如不用呢。
本附件中的两个程序是根据文字原来的坐标做的排序。不会打乱原来的次序。其功能就像WORD中的对齐。用这个程序画出来的图纸就会很整洁。特别是在电力设计的端子排上文字多。用本程序可以原理图上复制标号下来。然后用它调整到合适的位置。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2008-12-12 20:01:41 | 显示全部楼层
试了,很好,为什么要把捕捉打开呢,这样只会不方便,选都不好选择?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-12-13 00:06:12 | 显示全部楼层
试试~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-15 13:59:25 | 显示全部楼层
这是我的个人习惯!如果不习惯可以打开文件找到这句语句 (setvar "SNAPMODE" 1)在前面加上一个英文的分号就可以了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-12-17 15:46:36 | 显示全部楼层
学习学习!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-12-18 17:40:45 | 显示全部楼层
不错
但也有不足
文字总是斜的(在用户坐标下)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-12-23 10:29:13 | 显示全部楼层
为了这个我要发多少帖子啊- -||
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-23 11:53:45 | 显示全部楼层
不可能文字总是斜的。

这个程序自带有格式刷的功能在里面,如果你选择的坐标为第一个字体是斜的就会总是斜的。

我们全公司的人都在用,就没有发现这样的问题!我们公司用的是2004 2005,不知道在其他版本的CAD中应用有没有什么问题我就不知道了。

原代码:
  1. ; ================================================
  2. ;           页序
  3. ;            版本  
  4. ;            Ver: 1.0  作者:罗志勇 200701204
  5. ;;    邮箱:hustluo932@126.com
  6. ; ================================================
  7. ;**************************************************
  8. (setq DIST1 "10")
  9. (defun C:YPAIXU( / s90 an0 cc0 p0 varosmulu sm0 sm1 sm2 sm3 sm4 sm5 sm6
  10.             sm01 sm11 sm21 sm31 sm41 sm12 sm22 sm32 sm42 sm52 sm62
  11.            cc1 n0 txt_t ss ss_list sslen a b c n1 a1 a2 b2 c2 a_1 a_2
  12.             x y x2 y2 bool n_n en1 en newn yexu len_ss_list newt xn
  13.                 )
  14.   ;(setvar "SNAPMODE" 1)
  15.   (setvar "ORTHOMODE" 1)
  16.   (setvar "CMDECHO" 0)
  17. (setq DIST (getstring T (strcat "\n请输入距离:<"DIST1">")))
  18.    (if (= DIST "")
  19.     (setq DIST DIST1)
  20.     (setq DIST1 DIST)
  21.     )
  22.   (SETQ DIST (ATOF DIST))
  23. (setq varosmulu (getvar "OSMODE"))
  24.    (setvar "OSMODE" 0)
  25. (setq ss (ssadd))
  26. (setq ss (ssget '((0 . "TEXT"))))
  27. ;;;(setq ss (ssget))
  28. (setq ss_list nil)
  29. (if (/= nil ss) ;;;if1
  30.   (progn  ;;;progn1
  31.      (setq sslen (sslength ss))
  32.      (setq n1 1)
  33.     (setq en1 (ssname ss 0))
  34.     (setq a (entget en1)
  35.           b (cdr (assoc 10 a)))
  36.     (setq ss_list (cons (cons 1 (list en1 b)) ss_list))
  37.     (while (< n1 sslen);;;while1
  38.        (progn  ;;;progn2
  39.          (setq en1 (ssname ss n1))
  40.          (setq a (entget en1)
  41.                b (cdr (assoc 10 a)))
  42.          (setq n1 (+ n1 1))
  43.          (setq ss_list (cons (cons n1 (list en1 b)) ss_list))
  44.          ))
  45.     (setq len_ss_list (length ss_list))
  46.     (setq n1 1)
  47.     (while (< n1 len_ss_list);;;while1
  48.        (progn  ;;;progn2
  49.          (setq a1 (assoc n1 ss_list)
  50.                b (caddr a1 )
  51.                y (cadr b ))
  52.          (setq n_n n1)
  53.          (setq n2 (+ n1 1))
  54.          (while (<= n2 len_ss_list)
  55.            (progn
  56.              (setq a2 (assoc n2 ss_list)
  57.                b2 (caddr a2 )
  58.                y2 (cadr b2 ))
  59.              (if (> y2 y)
  60.                  (setq n_n n2
  61.                        y y2)
  62.                )
  63.              (setq n2 (+ n2 1))
  64.              ))
  65.          (if (/= n_n n1)
  66.            (progn
  67.            (setq a_1 (cons n_n (cdr a1 ))
  68.                  a2 (assoc n_n ss_list)
  69.                  a_2 (cons n1 (cdr a2)))
  70.            (setq ss_list (subst  a_2 a1 ss_list))
  71.            (setq ss_list (subst  a_1 a2 ss_list))
  72.            ))
  73.          (setq n1 (+ n1 1))
  74.          ));y
  75.     (setq en1 (nth 1 (assoc 1 ss_list)))
  76.      (setq a_1 (entget en1)
  77.            b (assoc 10 a_1)
  78.            x (car (cdr b))
  79.            y (cadr (cdr b))
  80.            b2 (assoc 11 a_1)
  81.            x2 (car (cdr b2))
  82.            y2 (cadr (cdr b2)))
  83.     (setq n1 2)
  84.     (while (<= n1 len_ss_list);;;while1
  85.       (progn
  86.         (setq en1 (nth 1 (assoc n1 ss_list)))
  87.         (setq a (entget en1))
  88.         (setq b (cons 10 (list x (- y (* dist (- n1 1))) 0)))
  89.         (setq b2 (cons 11 (list x2 (- y2 (* dist (- n1 1))) 0)))
  90.         (setq a (subst b (assoc 10 a) a))
  91.         (setq a (subst b2 (assoc 11 a) a))
  92.         (setq a (subst (assoc 40 a_1) (assoc 40 a) a))
  93.         (setq a (subst (assoc 50 a_1) (assoc 50 a) a))
  94.         (setq a (subst (assoc 41 a_1) (assoc 41 a) a))
  95.         (setq a (subst (assoc 51 a_1) (assoc 51 a) a))
  96.         (setq a (subst (assoc 7 a_1) (assoc 7 a) a))
  97.         (setq a (subst (assoc 71 a_1) (assoc 71 a) a))
  98.         (setq a (subst (assoc 72 a_1) (assoc 72 a) a))
  99.         (setq a (subst (assoc 73 a_1) (assoc 73 a) a))
  100.         (entmod a)
  101.         (entupd en1)
  102.         (setq n1 (+ n1 1))
  103.        ))
  104.   );;;progn1
  105. );;;if1
  106. (setvar "OSMODE" varosmulu)
  107. );;;defun

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2020-8-8 20:56:51 | 显示全部楼层
来看看什么呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-16 16:12 , Processed in 0.280188 second(s), 48 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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