平法梁集中标注三行变四行源码-比较粗糙
fujinxi2004
2010年07月08日 17:28:34
只看楼主

;;三行变四行(defun c:a3 (/ ss i ed edlit tmptxt pt orint wheight pt2 poi ntxt ntxt2) (princ "\n-------------标注三行变四行-------\n") (setq ss (ssget '((0 . "text") (1 . "*L*")))) (setq i 0) (command "_.undo" "_begin")

;;三行变四行
(defun c:a3 (/ ss i ed edlit tmptxt pt orint wheight pt2 poi ntxt ntxt2)
(princ "\n-------------标注三行变四行-------\n")
(setq ss (ssget '((0 . "text") (1 . "*L*"))))
(setq i 0)
(command "_.undo" "_begin")
(repeat (sslength ss)
(setq ed (ssname ss i))
(setq edlit (entget ed))
(setq tmptxt (cdr (assoc 1 edlit))
pt (cdr (assoc 10 edlit))
orint (cdr (assoc 50 edlit))
wheight (cdr (assoc 40 edlit))
)
(setq pt2 (polar pt (+ orint (/ pi 2)) (* wheight 1.1)))
(if (setq poi (vl-string-search ")" tmptxt))
(progn
(if (> (strlen tmptxt) (+ poi 1))
(progn
(setq ntxt (substr tmptxt 1 (+ poi 1)))
(setq ntxt2
(vl-string-left-trim " " (substr tmptxt (+ poi 2)))
)
(setq edlit (subst (cons 1 ntxt2) (assoc 1 edlit) edlit))
(entmod edlit)
(command "copy" ed "" "non" pt "non" pt2 "")
(setq ed2 (entlast))
(setq edlit (entget ed2))
(setq edlit (subst (cons 1 ntxt) (assoc 1 edlit) edlit))
(entmod edlit)
)
)
)
)
(setq i (1+ i))
)
(command "_.undo" "_end")
)
免费打赏
fujinxi2004
2010年07月08日 17:39:54
2楼
bb2.gif
回复
fujinxi2004
2010年07月08日 17:56:52
3楼
回复
lee_yf
2010年07月08日 19:08:15
4楼
为何我加载后四行能变五行,而不能五行变四行,且不能整体移动?
回复
fujinxi2004
2010年07月09日 09:23:50
5楼
这段代码是四行变五行的,五行变四行的还没上传,整体移动是用了无极的平法移动插件。
回复
etoxp2
2010年07月11日 13:10:37
6楼
这么简短的代码就能实现功能,很不错啊
回复
小小设计者
2010年07月11日 13:44:07
7楼
不错,喜欢,我是一个一个农的,现在方便了
回复
fujinxi2004
2010年07月20日 18:19:59
8楼
看来用处不是很大呀!
回复
tucaifeng
2020年04月26日 16:35:20
9楼

为什么我加载后,变行后,梁编号不见了

回复

相关推荐

APP内打开