日升月恒 发表于 2005-11-27 12:33:00

收到

liushaobo 发表于 2006-2-12 21:33:00

烦请各位高手帮小弟完成此序程孔径列表

liushaobo 发表于 2006-2-12 21:42:00

(defun C:DM()<BR>&nbsp;(setq ooo (list 0.0 0.0 0.0))<BR>&nbsp;(setvar "cmdecho" 0)<BR>&nbsp;(command "layer" "s"&nbsp; "dim" "")<BR>&nbsp;(setq pnd (ssget "X" (list(cons 8 "dim"))))<BR>&nbsp;(command "erase" pnd "")<BR>&nbsp;(setq pnd (ssget "X" (list(cons 8 "center")(cons 40 2.00))))<BR>&nbsp;(command "erase" pnd "")<BR>&nbsp;(command "redraw")<BR>&nbsp;(princ "\n尺寸标注" )<BR>&nbsp;(princ "\n第一端点&lt;&lt;左&gt;&gt;:" )<BR>&nbsp;(setvar "OSMODE" 1)<BR>&nbsp;(setq p0 (getpoint))<BR>&nbsp;(princ "\n第二端点&lt;&lt;右&gt;&gt;:" )<BR>&nbsp;(setq p1 (getpoint))<BR>&nbsp;(setvar "OSMODE" 0)<BR>;(command "dim" "horizontal" p0 p1 pause "" "exit")<BR>&nbsp;(princ "\n尺寸标注" )<BR>&nbsp;(princ "\n第一端点&lt;&lt;上&gt;&gt;:" )<BR>&nbsp;(setvar "OSMODE" 1)<BR>&nbsp;(setq p2 (getpoint))<BR>&nbsp;(princ "\n第二端点&lt;&lt;下&gt;&gt;:" )<BR>&nbsp;(setq p3 (getpoint))<BR>&nbsp;(setvar "OSMODE" 0)<BR>;(command "dim" "vertical" p2 p3 pause "" "exit")<BR>&nbsp;(setq x0 (car p0)) (setq y0 (cadr p0))<BR>&nbsp;(setq x1 (car p1)) (setq y1 (cadr p1))<BR>&nbsp;(setq x2 (car p2)) (setq y2 (cadr p2))<BR>&nbsp;(setq x3 (car p3)) (setq y3 (cadr p3))<BR>&nbsp;(if (&gt; x0 x1)(setq x x0))<BR>&nbsp;(if (&lt; x0 x1)(setq x x1))<BR>&nbsp;(if (&gt; y2 y3)(setq y y2))<BR>&nbsp;(if (&lt; y2 y3)(setq y y3))<BR>&nbsp;(setq dxx (/ (+ x0 x1) 2))<BR>&nbsp;(setq dyy (/ (+ y2 y3) 2))<BR>&nbsp;(setq dx (abs (- x0 x1)))(setq dy (abs (- y2 y3)))<BR>&nbsp;(setq x (+ x 15))<BR>&nbsp;(setq y (+ y 5))<BR>&nbsp;(setq pcx (list dxx dyy 0.0))<BR>&nbsp;(setq px (list x0 y 0.0))<BR>&nbsp;(setq py (list x&nbsp; y1 0.0))<BR>&nbsp;(command "dim" "horizontal" p0 p1 px "" "exit")<BR>&nbsp;(command "dim" "vertical" p2 p3 py "" "exit")<BR>&nbsp;(command "move" "all" "0,0" "" pcx "0,0" "" aa)<BR>&nbsp;(setq pn (ssget "X" (list(cons 0 "CIRCLE")(cons 8 "pin")(CONS 40 2) )))<BR>&nbsp;(setq k0 (ssname pn 0))<BR>&nbsp;(setq o1 (cdr (assoc 10 (entget k0))))<BR>&nbsp;(setq k1 (ssname pn 1))<BR>&nbsp;(setq o2 (cdr (assoc 10 (entget k1))))<BR>&nbsp;(setq o1x (car o1)) (setq o1y (cadr o1))<BR>&nbsp;(setq o2x (car o2)) (setq o2y (cadr o2))<BR>&nbsp;(setq po1 (list o1x (- fyo (/ dy 2))))<BR>&nbsp;(command "dim" "ordinate" o1 po1 "")<BR>&nbsp;(setq po2 (list o2x (- fyo (/ dy 2))))<BR>&nbsp;(command "dim" "ordinate" o2 po2 "")<BR>&nbsp;(if (&gt; o1x o2x)(progn<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq po3 (list (+ (- -5 (/ dx 2)) fxo) o2y)) (setq po o2)(setq poa o1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" o2 po3 "")))<BR>&nbsp;(if (&gt; o2x o1x)(progn<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq po3 (list (+ (- -5 (/ dx 2)) fxo) o1y)) (setq po o1)(setq poa o2)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" o1 po3 "")))<BR>(setq xx (list fxo (+ (- -15 (/ dy 2)) fyo) 0.0))<BR>&nbsp;(setq yy (list (+ (- -15 (/ dx 2)) fxo)&nbsp; fyo))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" oo xx "")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" oo yy "")<BR>&nbsp;(if(/= oo ooo)(progn<BR>(setq xx (list 0.0 (+ (- -15 (/ dy 2)) fyo) 0.0))<BR>&nbsp;(setq yy (list (+ (- -15 (/ dx 2)) fxo)&nbsp; 0.0 0.0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" ooo xx "")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "dim" "ordinate" ooo yy "")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ))<BR>&nbsp;(command "exit")<BR>&nbsp;(initget 128 "0 1 2 " )<BR>&nbsp;(setq bh (getkword "\n请选择 &lt;0&gt;一次冲 &lt;1&gt;第一次冲 &lt;2&gt;第二次冲"))<BR>&nbsp;(if (= bh nil) (setq bh ""))<BR>&nbsp;(if (= bh "0") (setq bh ""))<BR>&nbsp;(setq f "c:\\dwg\\")<BR>&nbsp;(setq fn (getvar "dwgname"));(setq df (strlen (getvar "dwgprefix")))<BR>&nbsp;;(setq df (+ df 1))<BR>&nbsp; (setq nam (substr fn 1 4))<BR>&nbsp;(setq f (strcat f nam))(setq f (strcat f bh))<BR>&nbsp;(setq f (strcat f "pin"))<BR>&nbsp;(setq ap (open f "w"))(princ dx ap)(princ " " ap)(princ dy ap)(princ "\n" ap)<BR>&nbsp;(princ (car po) ap)(princ " " ap)(princ (cadr po) ap)(princ "\n" ap)(close ap)<BR>&nbsp;(setq f1 "c:\\dwg\\")(setq f1 (strcat f1 nam))(setq f1 (strcat f1 bh))&nbsp; (setq f1 (strcat f1 "pin"))<BR>&nbsp;(setq bp (open f1 "w"))(princ dx bp)(princ " " bp)(princ dy bp)(princ "\n" bp)<BR>&nbsp;(princ (car po) bp)(princ " " bp)(princ (cadr po) bp)(princ "\n" bp)<BR>&nbsp;(princ (car poa) bp)(princ " " bp)(princ (cadr poa) bp)(princ "\n" bp)<BR>;(setq py1 (fix (/ dy 2)))<BR>&nbsp;(setq py1 dyy)<BR>&nbsp;(setq cx (/ dx 2))<BR>&nbsp;(setq fx (* 10 (fix (/ (+ dx 19.99999) 10))))<BR>;(setq px1 (+ (* 10 (fix (/ (+ dx 6) 10))) 5))<BR>;(setq dv (- px1 dx))(if (&lt; dv&nbsp; 5)(setq px1&nbsp; (+ px1&nbsp; 10)))<BR>;(princ (/ (+ x0 x1) 2) bp)(princ "\n" bp)(princ (/ (+ y2 y3) 2) bp)<BR>;(princ "-5.0" bp)(princ py1 bp)(princ "\n" bp)(princ px1 bp)(princ " " bp)(princ py1 bp)<BR>&nbsp;(close bp)<BR>&nbsp;(setq do1 (list (- (/ (+ x0 x1) 2) (/ fx 2)) py1 0.0))<BR>;(setq do2 (list px1 py1 0.0))<BR>&nbsp;(setq do2 (list (+ (/ (+ x0 x1) 2) (/ fx 2)) py1 0.0))<BR>&nbsp;(command "layer" "s"&nbsp; "center" "")<BR>&nbsp;(command "circle" do1 "2" )<BR>&nbsp;(command "circle" do2 "2" )<BR>&nbsp;(setq pns (ssget "X" (list(cons 0 "CIRCLE")(cons 8 "center")(CONS 40 2) )))<BR>&nbsp;(command "move" pns "" pcx oo)<BR>&nbsp;(if (/= o1y o2y)(progn<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq pnd (ssget "X" (list(cons 8 "dim"))))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "erase" pnd "")(command "redraw")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq pnd (ssget "X" (list(cons 8 "center"))))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "erase" pnd "")(command "redraw")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "layer" "s"&nbsp; "pin" "")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (princ "\n固定柱未在同一线上,请重新设置")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ))<BR>&nbsp;(setvar "cmdecho" 1)<BR>)<BR>

轩辕凝决 发表于 2006-2-13 10:35:00

时髦的玩意

baohui668 发表于 2006-4-7 15:02:00

<P>QQ:13757306</P>
<P>ARX开发群,另有少数VBA,人数不多了:)</P>

psufngah 发表于 2006-5-18 22:48:00

<P>22584977</P>
<P>CAD交流二次开发的都可以来加!</P>

kbssavor 发表于 2006-12-23 11:47:00

<p>想去聊天室,却遇闭门羹。</p><p>对不起,程序所在目录不是虚拟目录,或设置有错误,Global.asa 没有被执行。本程序需要虚拟目录的支持!</p><p>是怎么一回事呀?</p>

mccad 发表于 2006-12-23 13:03:00

网站程序这段时间升级,一些频道并未完成。

smok 发表于 2007-1-17 09:38:00

<p>既然都满了!那就不加了!</p>

1dpf520 发表于 2007-2-23 16:48:00

<p>[这么多群啊!!!</p><p>这里也有个聊天室,大家有空也可进这里面聊聊啊!!~~~~~~~~~~</p><p>有兴趣交流的可以Q我:279710796说明是"明经"就可以了~V~</p><p></p>
页: 1 2 [3] 4 5
查看完整版本: 明经QQ群汇总