jacobs33 Posté(e) le 18 mai 2010 Partager Posté(e) le 18 mai 2010 Bonjour, Je viens d'écrire ce bout de code pour renommer les calques avec une incrementation mais le "entmod" ne fonctionne pas la liste des calque ne ce mettre pas jour. Faut t"il passer obligatoirement passer par la commande "renommer".est t'il possible inverser la condition (if (wcmatch ...)) afin d'éviter le (princ). (defun c:ADWG (/ RefLay IncreNumérique Incretexte NouvoNon AncienNon) (setq RefLay (tblnext "layer" t)) (setq IncreNumérique 1) (while RefLay (setq NouvoNon (strcat "xx-" (itoa IncreNumérique))) (setq AncienNon (cdr (assoc 2 RefLay))) (if (wcmatch AncienNon "0,Defpoints,*|*") [surligneur](princ)[/surligneur] (progn (setq RefLay (subst (cons 2 NouvoNon) (assoc 2 RefLay) RefLay)) (entmod RefLay) ) ) (setq IncreNumérique (+ IncreNumérique 1)) (setq RefLay (tblnext "layer")) ) ) Dans ce deuxième code avec la commande "renommer" est t'il nécessaire de faire un "entmod".Pour eviter le (princ) je fait une commande bidon mais c'est pas terrible ..... (defun c:ADWG (/ RefLay IncreNumérique Incretexte NouvoNon AncienNon) (setq RefLay (tblnext "layer" t)) (setq IncreNumérique 1) (while RefLay (setq NouvoNon (strcat "xx-" (itoa IncreNumérique))) (setq AncienNon (cdr (assoc 2 RefLay))) (if (wcmatch AncienNon "0,Defpoints,*|*") [surligneur](command "_layer" "e" "0" "")[/surligneur] (command "_rename" "ca" AncienNon NouvoNon) ) (setq IncreNumérique (+ IncreNumérique 1)) (setq RefLay (tblnext "layer")) ) ) je voudrais faire ce genre de chose sur toutes les tables.je préfère donc avoir un bon code en base.Merci d'avance pour vont commentaires. Lien vers le commentaire Partager sur d’autres sites More sharing options...
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