1樓:朱正偉
圖層鎖定或解鎖,**如下。
;圖層鎖定及解鎖
(defun c:tes ( / ent lay1)
(vl-load-com)
(while (and (setq ent (entsel "\n請選擇要鎖定或解鎖的圖元")) (setq lay1 (cdr (assoc 8 (entget (car ent))))))
(w1712251 lay1)
)(princ)
)(defun w1712251 (lay1 / lay lay1)
(vlax-for lay (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))
(if (= (vla-get-name lay) lay1)
(progn
(if (= (vla-get-lock lay) :vlax-true);如果圖層鎖定
(vla-put-lock lay :vlax-false) ;解鎖
(vla-put-lock lay :vlax-true) ;鎖定)))))
2樓:許權逯雅達
在百思論壇上找到的,用autocad2008自帶的visual lisp編輯器存入,並用載入應用程式執行過,**如下
laymod.lsp
;__________________________
;解決r14「bonus」工具的移植
;圖層管理工具
;-------------------------------------------
;圖層物件選擇,將標註歸入dim層,文字歸入txt層
;___________________________________________
(defun c:laymod(/ lm_ssd lm_sst)
(if (not (tblsearch "layer" "dim"))
(command "-layer" "n" "dim" "c" "1""dim"""));endif
(if (not (tblsearch "layer" "txt"))
(command "-layer" "n" "txt" "c" "1""txt"""));endif
(setq lm_ssd (ssget "x" '((0 . "dimension")))
lm_sst (ssget "x" '((-4 . ""))));endsetq
(if lm_ssd (command "chprop" lm_ssd "" "la" "dim"""))
(if lm_sst (command "chprop" lm_sst "" "la" "txt"""))
);end defun
;-------------------------------------
;圖層孤立顯示,通過選擇物件單顯某圖層
;_____________________________________
(defun c:layiso(/ l9_ss l9_ent l9_lay ii)
(setq l9_ss "" ii 0)
(princ "\n選擇要保留顯示的圖層:")
(setq l9_ss (ssget))
(if l9_ss (command "-layer""off""*""y"""))
(repeat (sslength l9_ss)
(setq l9_ent (entget (ssname l9_ss ii)))
(setq l9_lay (cdr (assoc 8 l9_ent)) ii (1+ ii))
(command "-layer""on" l9_lay "")
);end repeat
);end defun layiso
;--------------------------
;開啟所有圖層
;__________________________
(defun c:layon()(command "-layer""on""*"""))
;--------------------------
;解除所有圖層鎖定
;__________________________
(defun c:layul()(command "-layer""u""*"""))
;--------------------------
;解除所有圖層凍結
;__________________________
(defun c:layuk()(command "-layer""t""*"""))
;--------------------------
;通過選擇解除圖層鎖定
;__________________________
(defun c:layulk(/ l9_ss l9_ent l9_lay)
(setq l9_ss (entsel "\n選擇要解鎖的圖層:"))
(while l9_ss
(setq l9_ent (entget (car l9_ss)))
(setq l9_lay (cdr (assoc 8 l9_ent)))
(command "layer""u" l9_lay"")
(setq l9_ss (entsel "\n選擇要解鎖的圖層:"))
);end while
);end defun
;--------------------------
;通過選擇鎖定圖層
;__________________________
(defun c:laylck(/ l9_ss l9_ent l9_lay)
(setq l9_ss (entsel "\n選擇要鎖定的圖層:"))
(while l9_ss
(setq l9_ent (entget (car l9_ss)))
(setq l9_lay (cdr (assoc 8 l9_ent)))
(command "layer""u" l9_lay"")
(setq l9_ss (entsel "\n選擇要鎖定的圖層:"))
);end while
);end defun
;--------------------------
;通過選擇凍結圖層
;_________________
(defun c:layfrz(/ l9_ss l9_ent l9_lay l9_clay ii)
(setq l9_clay (getvar "clayer"))
(princ "\n選取凍結圖層參考物件: ")
(setq l9_ss (ssget))
(setq ii 0)
(command "-layer")
(repeat (sslength l9_ss)
(setq l9_ent (entget (ssname l9_ss ii)))
(setq l9_lay (cdr (assoc 8 l9_ent)))
(command "f" l9_lay)
(setq ii (1+ ii))
);end repeat
(command "")
);end defun layfrz
;--------------------------
;通過選擇隱藏圖層
;__________________________
(defun c:layoff(/ l9_ss l9_ent l9_lay l9_clay ii)
(princ "\n選取隱藏圖層參考物件: ")
(setq l9_ss (ssget))
(setq l9_clay (getvar "clayer"))
(setq ii 0)
(command "-layer")
(repeat (sslength l9_ss)
(setq l9_ent (ssname l9_ss ii))
(setq l9_lay (cdr (assoc 8 (entget l9_ent))))
(if (/= l9_lay l9_clay)
(command "off" l9_lay)(command "off" l9_lay"y")
);end if
(setq ii (1+ ii))
);end repeat
(command "")
);end defun layoff
;--------------------------
(princ "\n---------->> 圖層調整
(laymod)layiso/layon/layuk/layulk/laylck/layfrz/layoff<<----------")
(prin1)
3樓:
(defun c:8 (/ es en el a)
(princ "凍結視口圖層.")
(setq es (ssget) a 0 en "" el nil fl nil)
(while (/= en nil)
(setq en (ssname es a) el (cons en el) a (1+ a)))
(setq el (cdr el) fl (cdr (assoc ' 8 (entget (car el)))) el (cdr el))
(repeat (- a 2)
(setq en (cdr (assoc ' 8 (entget (car el))))
fl (strcat en "," fl) el (cdr el)) )
(command "vplayer" "f" (eval fl) "")
(princ))
4樓:匿名使用者
(command "vplayer" "f" laname "" )有問題:
"vplayer"應為"layer"吧。
"f" 應為"u" 吧。
求一個cad的lisp程式 50
5樓:
不要什麼lisp程式,工具-選項-開啟儲存-檔案儲存 另存為 選擇你要的版本,確定 退出,以後就儲存你選擇的版本了。
求vb的求數平方的程式設計,求一個vb的求一個數平方的程式設計
樓主您好!什麼也不用畫,直接複製貼上 簡單就一句 msgbox 這個數的平方為 val inputbox 請輸入要求平方的數 提示視窗 2 64 vbokcancel vbdefaultbutton1,提示視窗 多寫點就這樣 dim number1 as double dim number2 as ...
求一個健身計劃,求一個完整的健身計劃。
原創 在健身房的條件下,建議每週鍛鍊3 4天,先有氧運動30分鐘以上,再進行力量訓練,起初體力不夠時,有氧運動時間可酌減 1 減脂主要靠大量的有氧運動,如慢跑 騎動感單車 跳繩 這些同樣可以提高你的肺活量 2 增肌要靠力量訓練,你可以隔天一練,分3個部分 a.胸部 三頭肌 腹部。b.背部 二頭肌 腹...
求一電腦配置,求一個電腦配置
cpu amd athlon64 x2 7750 黑盒 1 440 主機板 技嘉 ga ma770 ud3 rev.1 699 記憶體 威剛 2g ddr2 800 萬紫千紅 1 145硬碟 wd 500gb 7200轉 16mb 串列埠 gp 1 380 顯示卡 影馳 9600gt中將版 1 69...