求改箍筋间距lsp
将柱箍筋间距,如8@100/150;梁箍筋间距如10@100/200(2);一建改成8@100或10@100(2)模式。如下图示:可附加内容:能改块中箍筋字体最好。
本帖最后由 xyp1964 于 2013-8-23 17:54 编辑
(defun c:tt ()(setq ss (ssget '((0 . "TEXT")))
i-1
)
(while (setq s1 (ssname ss (setq i (1+ i))))
(setq tx (xyp-String-Subst "@100" "@100/200" (xyp-DXF 1 s1))) (defun C:Tc (/ E ELIST I N NV1 SL SS V1)
;; 删掉梁箍筋的非加密区;; by 小萝卜头
(and (setq SS (ssget '((0 . "TEXT") (1 . "%%13#*`@*`/*(#)"))))
(repeat (setq I (sslength SS))
(and (setq E (ssname SS (setq I (1- I))))
(setq ELIST (entget E))
(setq V1 (cdr (assoc 1 ELIST)))
(setq N (vl-string-position 47 V1))
(setq SL (strlen V1))
(setq NV1 (strcat (substr V1 1 N) (substr V1 (- SL 2) SL)))
(entmod (subst (cons 1 NV1) (assoc 1 ELIST) ELIST))
)
)
)
(princ)
)
直接用@100替换@100/200 石井鱼 发表于 2013-8-18 20:44 static/image/common/back.gif
(defun C:Tc (/ E ELIST I N NV1 SL SS V1)
;; 删掉梁箍筋的非加密区;; by 小萝卜头
(and (setq SS ...
还是需要能改的。我想以@为“标志”修改后面的内容。没有()的就全改,有()的就改@~()之间的。但是8和10,分别是1个字符和2个字符,所以指定多少为字符后的内容修改有点难实现。 xyp1964 发表于 2013-8-19 12:31 static/image/common/back.gif
直接用@100替换@100/200
还是不直接 快捷 和 方便 xyp1964 发表于 2013-8-19 12:31 static/image/common/back.gif
直接用@100替换@100/200
院长指点下,想以此例子举一反三啊 本帖最后由 无惢 于 2013-8-23 09:09 编辑
xyp1964 发表于 2013-8-22 18:31 static/image/common/back.gif
院长多了个“@”。。。而且测试也无效 无惢 发表于 2013-8-23 09:03 static/image/common/back.gif
院长多了个“@”。。。而且测试也无效
呵呵,主要是我这测试不出替换效果 本帖最后由 无惢 于 2013-8-23 09:37 编辑
xyp1964 发表于 2013-8-22 18:31 static/image/common/back.gif
;; stsc(实体删除)
(defun c:stsc (/ ilst ll1 ll2 lst-e)
(cmdla0)
http://bbs.mjtd.com/thread-89870-15-1.html
院长 改你这个程序 的上半段,用的很顺手。。。呵呵 但还是没解决通用性问题。只能针对100/200到100。。。100/200是示例之一,变成100才是目的
页:
[1]