![]() |
谁帮我写一个autolisp程序
谁帮我写一个autolisp程序
www.dimcax.com 谁帮我写一个autolisp程序 本人因为工作关系经常要计算一个值很是浪费时间,谁帮我写一个谢谢!! d 好吧... (defun c:ll () (setq l1 (getdist "\nl1=") l2 (getdist "\nl2=") w1 (getdist "\nw1=") w2 (getdist "\nw2=") s (+ (/ l1 w1)(/ l2 w2)) ) (setq p0 (getpoint "\nbase point: ")) (command "pline" p0 (polar (getvar "lastpoint") 0 l2) (polar (getvar "lastpoint") (* 0.5 pi) w2) (polar (getvar "lastpoint") (- pi)(+ l2 w1)) (polar (getvar "lastpoint") (- (* 0.5 pi))(+ l1 w2)) (polar (getvar "lastpoint") 0 w1) "cl" ) (command "extrude" (entlast) "" s "") (princ) ) 汉略(上海)信息技术有限公司 产品设计总监 d 还是谢谢你,我的意思是.... 首先谢谢你的热心帮助!! 我的意思不是用这个程序去画图,而是用这个程序 去算这个s值,即加载这个程序后,然后选择要计算 的图案,最后自动算出s d wer d (defun c:ll () graphscr (setq p1 (getpoint "\n选取第一点") p2 (getpoint "\n选取第二点") p3 (getpoint "\n选取第三点") p4 (getpoint "\n选取第四点") p5 (getpoint "\n选取第五点") (setq dx1 (- car(p3) car(p2)) dy1 (- cadr(p3) cadr(p2)) dx2 (- car(p2) car(p1)) dy2 (- cadr(p2) cadr(p1)) dx3 (- car(p4) car(p3)) dy3 (- cadr(p4) cadr(p3)) dx4 (- car(p5) car(p4)) dy4 (- cadr(p5) cadr(p4)) l1 (getdist (sqrt (+ dx1*dx1 dy1*dy1))) w1 (getdist (sqrt (+ dx2*dx2 dy2*dy2))) l2 (getdist (sqrt (+ dx3*dx3 dy3*dy3))) w2 (getdist (sqrt (+ dx4*dx4 dy4*dy4))) ) dist (- (/ l1 w1) (/ l2 w2)) (princ "\n距离为:") (princ dist) (princ) ) d 改为 dist (+ (/ l1 w1) (/ l2 w2)) |
| 所有的时间均为北京时间。 现在的时间是 05:41 PM. |