明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1319|回复: 7

【求助】拷贝文字随线角度

[复制链接]
发表于 2018-1-5 16:03:05 | 显示全部楼层 |阅读模式
  1. ;;;拷贝文字随线角度 by x_s_s_1@163.com
  2. (vl-load-com)
  3. (defun c:ctb (/ ent enl pt1 pt2 mid_pt ang)
  4.   (defun emk_t (layer pt1 pt2 text ang n72 n73 h w sty /)
  5.     (entmake (list '(0 . "text")
  6.      '(100 . "AcDbEntity")
  7.      (cons 8 layer)
  8.      '(100 . "AcDbText")
  9.      (cons 10 pt1)
  10.      (cons 1 text)
  11.      (cons 40 h)
  12.      (cons 41 w)
  13.      (cons 7 sty)
  14.      (cons 72 n72)
  15.      (cons 11 pt2)
  16.      (cons 50 ang)
  17.      (cons 73 n73)
  18.       )
  19.     )
  20.   )
  21.   (setq ent (car (entsel "\n选择文字:")))
  22.   (if (= "TEXT" (cdr (assoc 0 (entget ent))))
  23.     (progn
  24.       (while (setq enl (entsel "\n选择对齐线:"))
  25. (if (= "LINE" (cdr (assoc 0 (entget (car enl)))))
  26.    (progn
  27.      (setq pt1  (cdr (assoc 10 (entget (car enl))))
  28.     pt2  (cdr (assoc 11 (entget (car enl))))
  29.     mid_pt (vlax-curve-getClosestPointTo
  30.       (vlax-ename->vla-object (car enl))
  31.       (cadr enl)
  32.     )
  33.     ang  (angle pt1 pt2)
  34.      )
  35.      (if (and (> ang (* 0.5 pi)) (<= ang (* pi 1.5)))
  36.        (setq ang (- ang pi))
  37.      )
  38.      (emk_t (cdr (assoc 8 (entget ent)))
  39.      '(0 0 0)
  40.      (polar mid_pt (+ ang (* 0.5 pi)) 100)
  41.      (cdr (assoc 1 (entget ent)))
  42.      ang
  43.      1
  44.      0
  45.      (cdr (assoc 40 (entget ent)))
  46.      (cdr (assoc 41 (entget ent)))
  47.      (cdr (assoc 7 (entget ent)))
  48.      )
  49.    )
  50. )
  51.       )
  52.     )
  53.   )
  54.   (princ)
  55. )




上面是网上看到的源代码,遇到的问题如下:
1.只能适用于直线,pl线等无法使用,如果调整可以适合其他线性
2.文字平行线性后,距离线太远,如何调整距离

发表于 2019-5-1 22:12:48 | 显示全部楼层
不错,能改为通用函数更好
回复 支持 0 反对 1

使用道具 举报

发表于 2018-1-16 09:28:47 | 显示全部楼层
不好用~~~~~    文字乱跑~
发表于 2018-1-16 09:29:06 | 显示全部楼层
不过感谢分享源码,大神
发表于 2018-1-16 12:05:27 | 显示全部楼层
哥们,这个求助我已经发了两次了,还没有大神帮忙呢
发表于 2018-1-19 12:37:44 | 显示全部楼层
哥们,试试这个,应该可以帮到你,我就用的这个。

本帖子中包含更多资源

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

x
发表于 2018-1-19 12:38:41 | 显示全部楼层
要不再来一个吧,如何,里面数据可自己改一下

本帖子中包含更多资源

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

x
发表于 2021-6-22 19:22:10 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 09:35 , Processed in 0.176446 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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