패스를 걸면 로딩은 되는데 명령어가 먹지 않습니다.
수정 부탁드립니다. 제가 필요한것은 mat_ins란 명령어 입니다.
리습 고수님들 부탁드립니다.
원문내용; DRAW_MAT.LSP
(defun draw_mat(mat_name mat_int mat_dis)
(memvar (strcat “DRAW LINEAR HATCHING ” mat_dis))
(mem_os)(set_os 33)(setq psa (getvar “snapangle”))
(command “layer” “m” “A-WALL-PATT” “C” “8” “” “”)
(setq pt1 (getpoint ($p_com “Pick Base Point”)))
(setq pt3 (getpoint pt1 ($p_com “Pick Point for Width”)))
(setq pt2 (getpoint pt1 ($p_com “Pick Direction Point”)))
(setq ang (angle pt1 pt2))
(setq thk (distance pt1 pt3) dst (distance pt1 pt2))
(setvar “snapang” ang)
(command “insert” (strcat ($bs_dir mat_name)) pt1 thk thk (rtd ang))
(command “array” “l” “” “r” “1” (fix (/ dst (* mat_int thk))) (* mat_int thk))
; (command “explode” “l” “”)
(setq sel_bk (ssget “l”))
(setq sel_lst (ssget “c” pt1 pt2 ))
(setq m 0 n (sslength sel_lst))
(while (< m n)
(if (= “INSERT” (cdr (assoc 0 (entget (setq e (ssname sel_lst m))))))
; (command “explode” e)
(ssadd e sel_bk)
)
(setq m (1+ m))
)
(setq ibc_num (getvar “useri5”))
(setq ibc_num (1+ ibc_num))
(setvar “useri5” ibc_num)
(command “block” (strcat “hatbk” (itoa ibc_num)) pt1 sel_bk “”)
(command “insert” (strcat “hatbk” (itoa ibc_num)) pt1 “” “” “” )
(setvar “snapang” 0)
(term)
)
(defun C:MAC_INS(/ pt1 pt2 pt3 wd wdd ang1 lts1 lts2 lts3)
(memvar “DRAW LINEAR HATCHING. insulation 2 “)
(setq pt1 (getpoint ($p_com “Pick Base Point”)))
(setq pt2 (getpoint pt1 ($p_com “Pick Point for Width”)))
(setq pt3 (getpoint pt1 ($p_com “Pick Direction Point”)))
(setq wdd (distance pt1 pt2))
(setq wd (getreal ($p_com (strcat “Pick Direction Point <" (rtos wdd) ">“))))
(if (= wd nil) (setq wd wdd))
(setq ang1 (angle pt1 pt2))
(setq lts1 (getvar “ltscale”))
(setq lts2 (* wd 1.25))
(setq lts3 (/ lts2 lts1))
(command “layer” “m” “A-WALL-PATT” “C” “8” “” “”)
(set_os 0)
(command “line” (polar pt1 ang1 (* wd 0.5)) (polar pt3 ang1 (* wd 0.5)) “”)
(command “chprop” “l” “” “lt” “std_ins” “s” lts3 “”)
(term)
)
(defun C:MAC_LH1()(draw_mat “mat_ins” 0.5 “
(defun C:MAC_LH2()(draw_mat “mat_gyp” 0.5 “
(defun C:MAC_LH3()(draw_mat “mat_rub” 0.64 “
(defun C:MAC_LH4()(draw_mat “mat_ter” 0.4 “
(defun C:MAC_LH5()(draw_mat “mat_aco” 1 “
(defun C:MAC_LH6()(draw_mat “mat_mem” 0.6 “
(defun C:MAC_LH7()(draw_mat “mat_car” 0.5 “
(defun C:MAC_LH8()(draw_mat “mat_ply” 1.77 “
(defun draw_mh (mat_name mat_dis)
(memvar (strcat “DRAW MATERIAL BLOCK.” mat_dis))
(mem_os)(set_os 33)
(setq ccl (getvar “clayer”))
(command “layer” “m” “A-WALL-PATT” “C” “8” “” “”)
(setq pt1 (getpoint ($p_com “Pick Base Point”)))
(setq pt2 (getcorner pt1 ($p_com “Pick other Corner”)))
(command “insert” ($bs_dir mat_name) pt1 pt2 “0”)
(setvar “clayer” ccl)
(term)
)
(defun C:MAC_MAR()(draw_mh “mat_mar” “MARBLE”))
(defun C:MAC_WD1()(draw_mh “mat_wfn” “WOOD FINISH”))
(defun C:MAC_WD2()(draw_mh “mat_wb” “WOOD BLOCK”))
(defun C:MAC_WD3()(draw_mh “mat_wfr” “WOOD FRAAME”))
(defun C:MAC_WH()
(memvar “BLOCK & BRICK HATCH”)
(setq ccl (getvar “clayer”))
(command “layer” “m” “A-WALL-PATT” “C” “8” “” “”)
(if (= wtk_t nil)(setq wtk_t 200))
(initget 3 “1 2 3”)
(setq an (getkword ($p_com “Block (1), Brick (2) or R.Conc.(3)”)))
(setq wtk (getdist ($p_com (strcat “Wall thickness <" (rtos wtk_t 2) ">“))))
(if (= wtk nil) (setq wtk wtk_t)(setq wtk_t wtk))
(setq p1 (getpoint ($p_com “First point”)))
(while (/= p1 nil)
(setq p2 (getpoint p1 ($p_com “To point”)))
(set_os 0)
(setq ang (angle p1 p2))
(setq l (distance p1 p2))
(setq p3 (polar p2 (+ ang (dtr 90)) wtk))
(setq p4 (polar p1 (+ ang (dtr 90)) wtk))
(s_bh 0)
(command “pline” p1 p2 p3 p4 “c”)
(cond
((= an “1”)(command “hatch” “u” 45 @scale “y” “l” “”))
((= an “2”)(command “hatch” “u” 45 @scale “n” “l” “”))
((= an “3”)(command “hatch” “MAC_RC2” (* @scale 0.03) 0 “l” “”))
)
(command “erase” “p” “”)
(set_os 33)
(setq p1 (getpoint ($p_com “First point”)))
)
(setvar “clayer” ccl)
(term)
)