各位大神,已经选好了文字,后如何输入tt,把这些文字连接到一点
本帖最后由 664571221 于 2023-8-19 19:05 编辑各位大神,已经选好了文字,后如何输入tt,把这些文字连接到一点,或则直接说选中图元后如何输入tt,连接到一点
可能是这个意思吧
(defun c:tt ( / ss i pt1 ent1 typeA )
(setq ss (ssget '((0 . "*TEXT"))))
(if ss
(progn
(setq i 0
pt1 (getpoint "\n指定定位点")
)
(repeat (sslength ss)
(setq ent1(entget (ssname ss i))
typeA (cdr (assoc 1 ent1))
i (1+ i)
)
(entmake (list '(0 . "LINE")
(cons 8 "LX")
(assoc 10 ent1)
(cons 11 pt1)
)
)
)
)
)
(princ)
) ;;;首先感谢源码的大佬,忍不住还是修改了一下,不知能不能满足需要。
;;;生成line的函数
(defun c:dwlx()
(if (not (tblsearch "layer" "C-校对审核")) ;_ 判断是否存在 C-校对审核 的图层,无则创建
(command ".-layer" "m" "C-校对审核" "c" 1 "" "lt" "CONTINUOUS" "" "")
(command "layer" "m" "C-校对审核" "c" 1 "" "")
);_ 结束if
(princ "\n选择要定位连线的对象:")
(setq ss (ssget '((0 . "TEXT,MTEXT")))) ;选择文字
(while ss
(setq i 0 pt1 (getpoint "\n指定定位点"))
(repeat (sslength ss)
(setq ent1 (entget (ssname ss i))
typeA (cdr (assoc 1 ent1))
i (1+ i));;;end of setq
(entmake (list '(0 . "LINE" ) (cons 8 "C-校对审核") (assoc 10 ent1) (cons 11 pt1)));;;entmake line
);;;end repeat
;;循环选择
(princ "\n继续选择要定位连线的对象:")
(setq ss (ssget '((0 . "TEXT,MTEXT")))) ;选择文字
);end of while
);end of defun
(princ) 哈哈哈,沙发第一个
http://bbs.mjtd.com/thread-175477-1-1.html 这个也许可以,文字查找并标记 zxh92 发表于 2023-8-19 19:46
哈哈哈,沙发第一个
恭喜恭喜,兄弟是做啥的 jun353835273 发表于 2023-8-19 21:17
http://bbs.mjtd.com/thread-175477-1-1.html 这个也许可以,文字查找并标记
不查找文字内容,比如开始点选文字后,输入tt,拉线 http://bbs.mjtd.com/forum.php?mod=viewthread&tid=175396&extra=&highlight=%CE%C4%D7%D6&page=1 这个[源码] 文字查找定位也许修改一下就是你想要的,可惜我水平有限,你自己修改一下。
技术工作室 发表于 2023-8-19 21:57
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=175396&extra=&highlight=%CE%C4%D7%D6&page=1 这个[源 ...
你好兄弟,我不查询文字内容,就是纯连线,文字我已经选好,选好后输入tt,tt是是用来连线拉线 664571221 发表于 2023-8-19 21:31
恭喜恭喜,兄弟是做啥的
结构,哈哈{:1_1:}{:1_1:}{:1_1:} 664571221 发表于 2023-8-19 22:04
你好兄弟,我不查询文字内容,就是纯连线,文字我已经选好,选好后输入tt,tt是是用来连线拉线
修改后的代码输入命令后,可点选和框选即可
页:
[1]
2