chrisbric Posté(e) le 18 février 2015 Posté(e) le 18 février 2015 Bonjour à vous,Je cherche une petite routine pour rendre non imprimable un calque rien qu'en le sélectionnant, même à travers les références externes, sans passer par le gestionnaire de calque.Un raccourci du genre "PLG; *layfrz" qui fonctionne partout et simplement.Je ne connait pas le raccourci pour rendre un calque non imprimable sinon j'aurai pu commencer à établir la routine.Et est ce qu'il y a moyen de rendre non imprimable et de geler un calque dans toutes les fenêtres des différents espaces papier en une seul fois rien qu'en le sélectionnant, toujours à travers des X-ref.Merci de votre aide.
didier Posté(e) le 18 février 2015 Posté(e) le 18 février 2015 Coucou sans lisp mais sur la ligne de commande-calquechcliquer une entité du calque à mettre en "courant"TAvaliderle calque courant est devenu non imprimable tu choisis rapidement un nouveau calque courant avec la première partie de la commande. Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
chrisbric Posté(e) le 19 février 2015 Auteur Posté(e) le 19 février 2015 Hello,Merci pour ta solution mais deux choses ne fonctionnent pas tres bien,1 cette méthode ne fonctionne que sur les claques courants du fichier en question en non sur les calques a travers les références externes.2 Sachant que j'ai plusieurs calques à rendre non imprimables, je voulais le faire rien qu'en les sélectionnant et non en les nommant les uns après les autres.
ahbv Posté(e) le 19 février 2015 Posté(e) le 19 février 2015 Salut, sinon il y a la méthode avec un script "calque-a-geler.scr" du genre-calquetra*abcd-non-imprimer*,*|*abcd-xref-non-imprimer* ;;;(c'est basique mais cela fonctionne !!)a+AHBV Hello,Merci pour ta solution mais deux choses ne fonctionnent pas tres bien,1 cette méthode ne fonctionne que sur les claques courants du fichier en question en non sur les calques a travers les références externes.2 Sachant que j'ai plusieurs calques à rendre non imprimables, je voulais le faire rien qu'en les sélectionnant et non en les nommant les uns après les autres.
bonuscad Posté(e) le 19 février 2015 Posté(e) le 19 février 2015 Bonjour, J'ai testé que brièvement (defun c:noplot ( / ent lay_name dxf_lay) (while (setq ent (nentsel)) (setq lay_name (cdr (assoc 8 (entget (car ent))))) (setq dxf_lay (entget (tblobjname "layer" (cdr (assoc 2 (tblsearch "layer" lay_name)))))) (entmod (subst (cons 290 0) (assoc 290 dxf_lay) dxf_lay)) ) (prin1) ) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
chrisbric Posté(e) le 19 février 2015 Auteur Posté(e) le 19 février 2015 Bonjour, J'ai testé que brièvement (defun c:noplot ( / ent lay_name dxf_lay) (while (setq ent (nentsel)) (setq lay_name (cdr (assoc 8 (entget (car ent))))) (setq dxf_lay (entget (tblobjname "layer" (cdr (assoc 2 (tblsearch "layer" lay_name)))))) (entmod (subst (cons 290 0) (assoc 290 dxf_lay) dxf_lay)) ) (prin1) ) c'est génial Bonuscad, c'est ce que je cherchais.Est ce que tu pourrait me compléter un tout petit peu cette routine pour qu'en sélectionnant le calque, celui ci devient non imprimable mais qui se gèle également de façon généralement ou dans toutes les fenêtres peut importe, par le même raccourci, deux fonctions en une :P Merci déjà pour la première étape.
bonuscad Posté(e) le 19 février 2015 Posté(e) le 19 février 2015 Modifié pour ne pas imprimer, geler dans les nouvelle fenêtre et geler tout court. (defun c:noplot ( / ent dxf_lay) (while (setq ent (nentsel)) (setq dxf_lay (entget (tblobjname "layer" (cdr (assoc 8 (entget (car ent))))))) (setq dxf_lay (subst (cons 290 0) (assoc 290 dxf_lay) dxf_lay)) (if (zerop (logand (cdr (assoc 70 dxf_lay)) 1)) (setq dxf_lay (subst (cons 70 (1+ (cdr (assoc 70 dxf_lay)))) (assoc 70 dxf_lay) dxf_lay)) ) (if (zerop (logand (cdr (assoc 70 dxf_lay)) 2)) (setq dxf_lay (subst (cons 70 (+ 2 (cdr (assoc 70 dxf_lay)))) (assoc 70 dxf_lay) dxf_lay)) ) (entmod dxf_lay) ) (prin1) ) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
chrisbric Posté(e) le 19 février 2015 Auteur Posté(e) le 19 février 2015 Modifié pour ne pas imprimer, geler dans les nouvelle fenêtre et geler tout court. (defun c:noplot ( / ent dxf_lay) (while (setq ent (nentsel)) (setq dxf_lay (entget (tblobjname "layer" (cdr (assoc 8 (entget (car ent))))))) (setq dxf_lay (subst (cons 290 0) (assoc 290 dxf_lay) dxf_lay)) (if (zerop (logand (cdr (assoc 70 dxf_lay)) 1)) (setq dxf_lay (subst (cons 70 (1+ (cdr (assoc 70 dxf_lay)))) (assoc 70 dxf_lay) dxf_lay)) ) (if (zerop (logand (cdr (assoc 70 dxf_lay)) 2)) (setq dxf_lay (subst (cons 70 (+ 2 (cdr (assoc 70 dxf_lay)))) (assoc 70 dxf_lay) dxf_lay)) ) (entmod dxf_lay) ) (prin1) ) Génial, un grand merci.Tu me fait gagner un temps précieux, c'est exactement ce que je recherché comme routine.Merci, merci, merci
Steven Posté(e) le 19 février 2015 Posté(e) le 19 février 2015 Salut, Quel est l'intérêt de rendre un calque non imprimable si celui-ci est gelé dans l'espace objet et dans les fenêtres? Steven________________________________________ Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD. Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD. En rêve; AutoCAD sous Linux.
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