;;;已为你写好程序,功能比你要求的还要好
(print "图号修改(型如GCGS2010-165-19,若为多行文字请先炸开),命令:thxg")
(defun c:thxg(/ all endno aa bb cc wz tha thh thq th srz)
(if (null xzz) (setq xzz 0))
(setq srz(getint (strcat "输入修正值<" (itoa xzz) ">:")))
(if (not (null srz)) (setq xzz srz))
(setq ALL (ssget(list (cons 0 "text"))))
(if all (SETQ nn (SSLENGTH ALL)))
(print (strcat "设定的修改值为:" (itoa xzz)))
(setq endno 0)
(WHILE (and (< endno nn) all)
(setq aa (ssname all endno))
(setq bb (entget aa))
(setq cc(cdr(assoc 1 bb)))
(setq wz(rinstr cc "-"))
(setq tha(substr cc (+ wz 1) ( - (strlen cc) wz -1)))
(setq thh(itoa (+ (atoi tha) xzz)))
(setq thq (substr cc 1 wz))
(setq th(strcat thq thh))
(setq bb (subst (cons 1 th) (assoc 1 bb) bb))
(entmod bb)
(print (strcat cc "已修改为" th))
(setq endno (+ endno 1))
)
(print)
)
;;;
(defun rinstr(str cset / len i aa)
(if (> (strlen str) 0)
(progn
(setq i (strlen str))
(setq aa(substr str (strlen str) 1))
(while (and (/= aa cset) (>= i 1))
(setq i(1- i))
(setq aa(substr str i 1))
)
)
)
(setq i i)
)
;;;先绘制一个三维对象,
;;;加载本程序后,在命令行输入UP
;;;按下面的次序拾取三点(Z坐标可不为零)
(defun C:UP ( / p1 p2 p3)
(setq p1 (getpoint);新的坐标原点
p2 (getpoint);新的X轴上的一点
p3 (getpoint);新的Y轴上的一点
);;此三个坐标点也可以用其它方式获取
(command "_UCS" "3" p1 p2 p3)
(command "_PLAN" "C")
(princ)
)
以上就是关于帮忙编写个lisp语言程序(简单的数字加减)全部的内容,包括:帮忙编写个lisp语言程序(简单的数字加减)、各位大神请帮我编一个lisp的程序实现用ucs三点建立坐标系后用pian展平、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)