![]() |
【转帖】[原创] 绘制箭头程序(直箭头,弯箭头,大弯箭头)
[原创] 绘制箭头程序(直箭头,弯箭头,大弯箭头)
www.dimcax.com [原创] 绘制箭头程序(直箭头,弯箭头,大弯箭头) 通过工具菜单->加载应用程序 可加载该程序,然后可直接在命令行输入相关命令运行。如需要每次启动时均加载该程序,则可以将该文件放在启动组中。 文件预览: 加载之后,直接在命令行输入jt,就可以了。呵呵 d 虽然工作中用不上,但觉得很新颖,还得谢谢楼主! d 谢谢楼主,我喜欢这个东西,顶 不过怎么在用c项时会有这个提示呢 参数类型错误: point: nil d 修改了“ 参数类型错误: point: nil”这个错误,欢迎使用。呵呵 通过工具菜单->加载应用程序 可加载该程序,然后可直接在命令行输入相关命令运行。如需要每次启动时均加载该程序,则可以将该文件放在启动组中。 文件预览: d (cmdbe) (setq oldmode (getvar "osmode") p1mode t) (setvar "osmode" 0) (while p1mode (initget "a b c") (if enda enda (setq enda "a")) (setq p1 (getpoint (strcat "\n指定箭头的尖端位置或设置类型[直箭头(a)/弯箭头(b)/大弯箭头(c) <" enda ">]:"))) (cond ((= p1 "a") (setq enda "a") ) ((= p1 "b") (setq enda "b") ) ((= p1 "c") (setq enda "c") ) ((and (listp p1) (/= p1 nil)) (setq p2 (getpoint p1 "\n箭头的另一端:") dd (distance p1 p2) ) (prompt (rtos dd 2 4)) (setq w (* dd 1.2) an (angle p1 p2) p3 (polar p2 (+ an (* pi 0.5)) (/ w 2.0)) p4 (polar p2 (+ an (* pi 1.5)) (/ w 2.0)) ) (cond ((= enda "a") (command "solid" p1 p3 p1 p4 "" "pline" p2 "w" (* w 0.4) (* w 0.4) (polar p2 an (getdist p2)) "") ) ((= enda "b") (command "pline" p1 "w" "0" w p2 "w" (* w 0.4) (* w 0.4) "a" pause "") ) ((= enda "c") (command "pline" p1 "w" "0" w p2 "w" (* w 0.4) (* w 1.2) "a" pause "") ) ) ) ((= p1 nil) (setq p1mode nil) ) ) );end_while (setvar "osmode" oldmode) (cmde) 我也自己改了一下 d 不錯喔! 蠻新鮮的程序, 收藏學習. |
所有的时间均为北京时间。 现在的时间是 07:36 PM. |