帮忙编写个lisp语言程序(简单的数字加减)

帮忙编写个lisp语言程序(简单的数字加减),第1张

;;;已为你写好程序,功能比你要求的还要好

(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展平、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9840606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存