逍遥处士 发表于 2013-8-9 11:58:23

[AutoLisp] 快速填充 + 自动匹配图层

将下面一段复制到 AutoCAD 目录下的 acad.lsp 文件末尾,然后重新启动 AutoCAD。画一个圆,输入 ha ,在圆里面点一下就行了。

根据您的情况,将 "5剖面线层" 改成您想放的图层名。ha 也可以改成你喜欢的缩写,只要不与现有命令冲突即可。

若是天河,图层名就不用改了。

(defun c:ha()   
        (command "hpname" "ansi31" "bhatch" (getpoint) "")
        (command "change" (entlast) "" "p" "LA" "5剖面线层" "")
)

zerowing 发表于 2013-8-9 12:01:59

感谢分享啊。逍兄。俺收下了。

Michael0576 发表于 2013-8-9 12:44:33

不错 试试看,挺方面的

苦菩提 发表于 2013-8-9 13:32:33

lsp文件在哪个文件夹下?

arfa1424 发表于 2013-8-9 14:12:12

快捷键吗

ミ百分│汗水 发表于 2013-8-10 10:26:22

收藏,需要用到的时候在搞上

逍遥处士 发表于 2013-8-10 10:38:42

如果用原来的 h 命令,我模拟了一下,要想完成一个剖面线,需要点 8 次键鼠,而用了快捷命令,只需要 4 次(ha俩字母+空格+单击)。

苦菩提 发表于 2013-8-10 11:12:31

有没有画腰型孔的小插件啊

逍遥处士 发表于 2013-8-10 13:47:32

苦菩提 发表于 2013-8-10 11:12 static/image/common/back.gif
有没有画腰型孔的小插件啊

;;;画腰孔程序
(defun c:yk()
        (setvar "cmdecho" 0)
        (prompt "\n*****画横腰孔程序*****")
        (setq var (getvar "osmode"))
        (setvar "osmode" 0)
        (setq lenth(getreal "\n请输入腰孔长度:"))
        (setq width(getreal "\n请输入腰孔宽度:"))
        (if (<= lenth width)
                (progn
                        (princ "\n腰孔宽度小于长度,请重新输入!")
                        (setvar "osmode" var)
                        (exit)
                )
        )
        (setq p0 (getpoint "\n请指定中心点:"))
        (setq LL (/ (- lenth width) 2))
        (setq WW (/ width 2))
        (setq pz0 (polar p0 pi LL))
        (setq py0 (polar p0 0 LL))
        (setq pz1 (polar pz0 (/ pi 2) WW))
        (setq pz2 (polar pz0 (* 3 (/ pi 2)) WW))
        (setq py1 (polar py0 (/ pi 2) WW))
        (setq py2 (polar py0 (* 3 (/ pi 2)) WW))
        (command "line" pz1 py1 "")
        (command "line" pz2 py2 "")
        (command "arc" "c" pz0 pz1 pz2)
        (command "arc" "c" py0 py2 py1)
        (setvar "osmode" var)
        (princ)
)

苦菩提 发表于 2013-8-10 13:53:19

好棒哦。可我依旧找不到lsp文件在哪。搜也没搜到
页: [1] 2
查看完整版本: [AutoLisp] 快速填充 + 自动匹配图层