Forum
Download
Galeri
Üye Ol
|
Giriş
AutoCAD
•
AutoLISP
•
Programlama
•
Püfler
•
Komutlar
•
Terimler
•
Eğitim
aLd
•
TCad
•
FacadeCAD
•
Cephe Kot
•
HQ Library
•
FreeMUST
•
Pasdoc.A
Forumlar
>
AutoLISP Kodları
>
Seçilen nesneleri kilitler veya kilitlerini açar
50789
23.07.2009 15:33
ehya
;;; Seçilen nesnelerin layerlarını kilitler. Komut adı
LC
Kod:
(defun lc_hata (s)
(if (/= s "Function cancelled")
(princ (strcat "\nError: " s))
)
(setq *error* olderr)
(princ)
)
(defun c:LC
(/ SS1 E# ENT NAMES LYR)
(setq olderr *error*
*error* lc_hata
)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(princ "\n Kilitlenecek nesneleri seçiniz:")
(setq SS1 (ssget)
E# (sslength SS1)
)
(if (> E# 0)
(progn
(setq ENT (ssname SS1
(setq E# (1- E#))
)
ENT (entget ENT)
NAMES (cdr (assoc 8 ENT))
E# (1- E#)
)
)
)
(while (> E# -1)
(setq ENT (ssname SS1 E#)
ENT (entget ENT)
LYR (cdr (assoc 8 ENT))
NAMES (strcat NAMES "," LYR)
E# (1- E#)
)
)
(command "LAYER" "LO" NAMES "")
(setvar "cmdecho" cmd)
(princ)
)
(princ)
;;; Seçilen nesnelerin layerlarının kilitlerini açar. Komut adı
UC
Kod:
(defun c:UC (/ SS1 E# ENT NAMES LYR)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(princ "\n Kiliti açılacak nesneleri seçiniz:")
(setq SS1 (ssget)
E# (sslength SS1)
)
(if (> E# 0)
(progn
(setq ENT (ssname SS1
(setq E# (1- E#))
)
ENT (entget ENT)
NAMES (cdr (assoc 8 ENT))
E# (1- E#)
)
)
)
(while (> E# -1)
(setq ENT (ssname SS1 E#)
ENT (entget ENT)
LYR (cdr (assoc 8 ENT))
NAMES (strcat NAMES "," LYR)
E# (1- E#)
)
)
(command "LAYER" "UNLOCK" NAMES "")
(setvar "cmdecho" cmd)
(princ)
)
(princ)
50799
24.07.2009 10:33
safakkarman
cok tesekurler arkadasim cok isime yarayacak
50800
24.07.2009 12:00
erdemavis84
hmm güsl anlatımlar :D:D başlangıçla öğreniyordum...
>
1
<
Copyright © 2004-2022 SQL: 0.657 saniye - Sorgu: 54 - Ortalama: 0.01217 saniye