[原创] 绘制箭头程序(直箭头,弯箭头,大弯箭头)
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
不錯喔!
蠻新鮮的程序,
收藏學習.