ssttb Posté(e) le 24 janvier 2007 Posté(e) le 24 janvier 2007 Bonjour,Je cherche une routine ou n'importe quoi pour pouvoir sélectionner des calques nommés E1* et geler les autres de façon automatique. Du genre dès que l'on clique sur un bouton, certains sont sélectionnés et les autres sont gelés.Merci pour votre aide.
Bred Posté(e) le 24 janvier 2007 Posté(e) le 24 janvier 2007 Salut et bienvenue ! En lisp :Geler sauf E1*(defun c:gel-E1 () (command "_-layer" "G" "*" "") (command "_-layer" "L" "E1*" "") (princ) ) Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Didier-AD Posté(e) le 24 janvier 2007 Posté(e) le 24 janvier 2007 voici, sans utiliser (command .... ni (vla*** ;;---Début---------------------------------------------------AD-LstCalques------- ;; << liste des calques répondant à un masque donné >> ;; << >> ;; ;; créée le : jeudi 25 janvier 2007 à 00:08 ;; ;; Admet : ;; ======= ;; masque : Chaine = masque de recherche (exemple : RDC-*) ;; ;; Retourne : Liste = de nom de calque ;; ========== ;------------------------------------------------------------------------------- (Defun AD-LstCalques ( smasque / lcalq ocalq) (setq ocalq (TblNext "layer" T)) ; premier calque (while ocalq (If (WcMatch (cdr (assoc 2 ocalq)) smasque) (setq lcalq (cons (cdr (assoc 2 ocalq)) lcalq)) ) (setq ocalq (TblNext "layer")) ; calque suivant ) (reverse lcalq) ) ;;---fin-----------------------------------------------------AD-LstCalques------- ;;---Début---------------------------------------------------AD-OnOffCalque------- ;; << active ou désactive un calque >> ;; << >> ;; ;; créée le : jeudi 25 janvier 2007 à 00:16 ;; ;; Admet : ;; ======= ;; sNomCalq : Chaine = nom du calque ;; bEtat : Booléen = T si le calque doit être actif Nil si'il doit être inactif ;; ;; Retourne : Sans intérêt = ;; ========== ;------------------------------------------------------------------------------- (Defun AD-OnOffCalque ( sNomCalq bEtat / ocalq linfo iCouleur) (setq ocalq (TblObjName "layer" sNomCalq)) (setq linfo (EntGet ocalq)) (setq iCouleur (abs (cdr (assoc 62 linfo)))) (setq linfo (subst (cons 62 (* iCouleur (if bEtat 1 -1))) (assoc 62 linfo) linfo)) (EntMod linfo) ) ;;---fin-----------------------------------------------------AD-OnOffCalque------- ;;---Début---------------------------------------------------C:EssaiCalques------ ;; << active ou inactive une série de calques >> ;; << répondant à un masque >> ;; ;; créée le : jeudi 25 janvier 2007 à 00:21 ;; ;; Admet : ;; ======= ;; ;; Retourne : Sans intérêt = ;; ========== ;------------------------------------------------------------------------------- (Defun C:EssaiCalques ( / sMasq koiFaire) (setq sMasq (getstring "\ncalques à traiter")) (initget "Activer Inactiver") (setq koiFaire (getkword "\n[Activer/Désactiver] que faut il en faire ? ")) (mapcar '(lambda (sNom) (AD-OnOffCalque sNom (= koiFaire "Activer")) ) (AD-LstCalques sMasq) ) (princ) ) ;;---fin-----------------------------------------------------C:EssaiCalques------ bon courage
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant