La Lozère Posté(e) le 29 juin 2016 Posté(e) le 29 juin 2016 Bonjour,Je cherche à automatiser le remplissage de mon cartouche.Du coup, je dois renseigner le nombre de page de mon dossier dans mon cartouche, celui-ci correspondant au nombre de présentation.Existe-t-il un champ définissant le nombre de présentations? Merci. Citer www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
lecrabe Posté(e) le 29 juin 2016 Posté(e) le 29 juin 2016 Hello En fait il faudrait pouvoir mette CECI dans un champ : (length (layoutlist)) Desole pas d'AutoCAD en ce moment ... Bye, lecrabe PS1: tu peux stocker le resultat dans une variable Lisp System USERI1, par exemple :(setq useri1 (length (layoutlist)) ) PS2: Ensuite il faut faire sortir USERI1 par une expression Diesel dans un champ !Ce que je ne sais pas faire car je fais tres peu de Diesel !! Citer Autodesk Expert Elite Team
rebcao Posté(e) le 29 juin 2016 Posté(e) le 29 juin 2016 Bonjour, Tu veux une formation DIESEL Monsieur Le CrapoPode ? ça peut donner ça : $(getvar,USERI1) on peut aussi stocker ça dans une variable LISP... Christian Citer Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
lecrabe Posté(e) le 29 juin 2016 Posté(e) le 29 juin 2016 Hello Le CrapoDiesel te remercie decapodiquement ... de ta gentillesse / politesse / delicatesse ...Et Mr Lalozere sans doute aussi... Bonne soirée, lecrabe (A St-Avold) PS1: je sais que tu es LE spécialiste français des 5 Variables System I et R et S ! PS2: comme a dit le Maître Suprême Confucius - L'homme sage connaît ses limites... Citer Autodesk Expert Elite Team
La Lozère Posté(e) le 30 juin 2016 Auteur Posté(e) le 30 juin 2016 Merci à vous.Le truc avec ce système, c'est que si j'ajoute ou enlève une présentation, le chiffre de mon cartouche ne se mettra pas automatiquement à jour. Car il faudra relancer manuellement (setq useri1 (length (layoutlist)) ) J'aurais voulu que ça fonctionne comme par exemple avec le champ CTAB qui renvoi le nom de la présentation. Ou encore le RTEXT $(substr,$(getvar,dwgname),13, 13) qui permet d'extraire certaines parti du nom du fichier. Citer www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
Fundream Posté(e) le 30 juin 2016 Posté(e) le 30 juin 2016 J'ai des conneries de ce genre également pour la numérotation de page automatique etc... comme ça ne se met pas a jour dynamiquement j'ai ajouté l'exécution d'un Lisp avant l'exécution de la publication.Comme ça je ne m'occupe de rien, même si tout est en vrac, que j'ai rajouté des onglets de présentation au milieu ou autre, je lance la publication et tout se met à jour avant de commencer le tirage. Citer Autocad 2015 - Lumion 3D - SCIA EngineerI7 6700K 4 cores @4.0Ghz - 32Go DDR4 - GTX980ti 6Gb - SSD 512Go - Windows 7 64 bits.
rebcao Posté(e) le 4 juillet 2016 Posté(e) le 4 juillet 2016 Hello Le Crabe, Qu'est ce que tu fais de beau à ST-A... ? Christian Citer Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
tbass Posté(e) le 5 juillet 2016 Posté(e) le 5 juillet 2016 Bonjour,Je cherche à automatiser le remplissage de mon cartouche.Du coup, je dois renseigner le nombre de page de mon dossier dans mon cartouche, celui-ci correspondant au nombre de présentation.Existe-t-il un champ définissant le nombre de présentations? Merci. Bonjour il me semble que le jeu de feuilles sert a cela, non ? je ne suis pas spécialiste mais je crois que l'on peut récupérer le nombre total de feuilles du jeu et le numéro de la feuille ...ou bien créer une propriété nombre total de feuilles et l'utiliser dans un champ mais ce n'est pas automatique Citer Thierry Aujourd’hui Collaborateur d'Architecte - Projeteur chez ETECNA 02400Autocad depuis version 2000- Débutant Révit
coco09 Posté(e) le 5 juillet 2017 Posté(e) le 5 juillet 2017 Merci à vous.Le truc avec ce système, c'est que si j'ajoute ou enlève une présentation, le chiffre de mon cartouche ne se mettra pas automatiquement à jour. Car il faudra relancer manuellement (setq useri1 (length (layoutlist)) ) J'aurais voulu que ça fonctionne comme par exemple avec le champ CTAB qui renvoi le nom de la présentation. Ou encore le RTEXT $(substr,$(getvar,dwgname),13, 13) qui permet d'extraire certaines parti du nom du fichier. Il y a le lisp pagine qui peut permettre ceci ! Citer Coco.
capde06 Posté(e) le 5 juillet 2017 Posté(e) le 5 juillet 2017 Salutun petit prog de patrick35 que j'ai adapté pour moica ne correspond pas exactement a ta demande mais je trouve ca tres pratiqueca nomme le 1er onglet "cartouche" et le reste au format "page 1 sur 15" il suffit de mette un champ "ctab" sur chaque presentation (defun c:ren-onglet (/ doc express lay lst n i txt) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object)) n -1 i 1 prefix "0" txt nil long (itoa (- (length (layoutlist)) 1)) ) ;_ Fin de setq (vla-startundomark doc) (if (eval 'acet-ui-progress-done) (progn (acet-ui-progress-init "" (1- (vla-get-count (vla-get-layouts doc))) ) ;_ Fin de acet-ui-progress-init (setq express T) ) ;_ Fin de progn (progn (princ "\nTravail en cours...") (princ) ) ;_ Fin de progn ) ;_ Fin de if (vlax-for lay (vla-get-layouts doc) (setq lst (cons (list (vla-get-taborder lay) lay) lst)) ) ;_ Fin de vlax-for (while (setq lay (assoc i lst)) (cond ((eq n -1) (setq txt "Cartouche") ) ((>= n 0) (setq txt1 (itoa (+ n 1))) (if (< (strlen txt1) 2) (setq txt1 (strcat "0" txt1)) ) (if (< (strlen long) 2) (setq long (strcat "0" long)) ) (setq txt (strcat "Page " txt1 " sur " long) ) ;_ Fin de setq ) ) ;_ Fin de cond ;_ Fin de while (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-put-name (list (cadr lay) txt)) ) ;_ Fin de vl-catch-all-error-p (progn (vla-put-name (vla-item (vla-get-layouts doc) txt) (strcat "c" txt) ;(strcat txt) ) ;_ Fin de vla-put-name (vla-put-name (cadr lay) txt) ) ;_ Fin de progn ) ;_ Fin de if (and express (acet-ui-progress-safe i)) (setq n (1+ n) i (1+ i) ) ;_ Fin de setq ) ;_ Fin de if (and express (acet-ui-progress-done)) (princ (strcat "\nRenumérotation de " (itoa (1+ n)) " présentation(s)." ) ;_ Fin de strcat ) ;_ Fin de princ (vla-endundomark doc) (princ) ) Citer Vous fîtes ce que vous pûtes et vous m'épatâtes !!!!
lecrabe Posté(e) le 7 juillet 2017 Posté(e) le 7 juillet 2017 Hello Christian En fait cette semaine j'etais a Creutzwald (pas loin de St-Avold / Carling) ... Bon WE, Bye, lecrabe Citer Autodesk Expert Elite Team
rebcao Posté(e) le 7 juillet 2017 Posté(e) le 7 juillet 2017 Bonjour Patoche AH ben, c'est une belle Région Depuis la fin des CHARBONNAGES, c'est une région qui souffre un peu par endroit... Mon fief à moi, c'est FORBACH ! Christian Citer Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
lecrabe Posté(e) le 7 juillet 2017 Posté(e) le 7 juillet 2017 Hello À priori en Septembre (ou Octobre), je vais venir 2 fois sur Colmar ! Donc je sens qu'une visite à Benfeld s'impose ? ... Pour voir le cratère de l'impact du Cruise Missile ?! Bye, lecrabe Citer Autodesk Expert Elite Team
rebcao Posté(e) le 8 juillet 2017 Posté(e) le 8 juillet 2017 §!#"@& $*%$£#$Ǿï%&?, @~¢¥$Ƨ©$ǣǾ ##"&éà0@19)\[, ""##@!§?! Christian Citer Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
VDH-Bruno Posté(e) le 10 juillet 2017 Posté(e) le 10 juillet 2017 Merci à vous.Le truc avec ce système, c'est que si j'ajoute ou enlève une présentation, le chiffre de mon cartouche ne se mettra pas automatiquement à jour. Car il faudra relancer manuellement (setq useri1 (length (layoutlist)) ) J'aurais voulu que ça fonctionne comme par exemple avec le champ CTAB qui renvoi le nom de la présentation. Ou encore le RTEXT $(substr,$(getvar,dwgname),13, 13) qui permet d'extraire certaines parti du nom du fichier. Bonjour Ci-dessous quelques ligne de code à glisser dans un des fichiers de chargement automatique d'AutoCAD, normalement tu devrais sur le même model que la solution (setq useri1 (length (layoutlist)) ) avoir accès à une variable lisp *NombrePresentation* qui se met à jour automatiquement, à mettre dans un champ pour renseigner le nombre de présentation. Inconvénient: ceci ne fonctionnera que sur les postes ayant les lignes de codes chargées, pense à convertir le champ en texte avant de distribuer le dwg, ou de diffuser les lignes de code lisp. ;; VDH-Bruno le: 10-07-2017 ;; ----------------- NombrePresentation V 1.00 ------------------------------------- ;; Crée une variable lisp global *NombrePresentation* renseignant le nombre de ;; présentation présente dans le dessin actif. (vl-load-com) ;; Déclaration du réacteur ;; (vlr-remove *command-reactor-NombrePresentation*) (or *command-reactor-NombrePresentation* (setq *command-reactor-NombrePresentation* (vlr-command-reactor "Nombre Presentation" '((:vlr-commandEnded . NombrePresentation-callback)))) ) ;; Routine de mise à jour automatique de la variable lisp *NombrePresentation* (defun NombrePresentation-callback (rea evenement) (and (eq (car evenement) "LAYOUT_CONTROL") (setq *NombrePresentation* (length (layoutlist))) ) (princ) ) ;; Initialisation de la variable (NombrePresentation-callback nil (list "LAYOUT_CONTROL")) A+ Citer Apprendre => Prendre => Rendre
famaice Posté(e) le 10 juillet 2017 Posté(e) le 10 juillet 2017 Hello, :) Pour ma part, j'ai fait comme ci-dessous : 1) Creation d'une macro commande:Dans le menu "Outils/Personnaliser", je crée une nouvelle commande que j'ai appelé "MajNbTotalFolios". A la ligne "Macro", j'ai saisi :^C^C(setenv "TotalNbOfLayout" (rtos (length (layoutlist)))) _Regenall NB : Pour les novices, Attention au Espace après chaque commande pour signifier [Entrée] Et je place cette commande dans un menu personnalisé qui regroupe toutes les macros internes à la société. 2) Ajout d'un attribut "Total Pages" dans le bloc "Cartouche"Dans mon bloc de cartouche, j'ajoute un attribut "Total Pages" et dans le champ "valeur", j'insère un champ exécutant l'expression DIESEL suivante :$(Getenv,"TotalNbOfLayout") :P Je ne sais pas si c'est la bonne méthode mais ça fonctionne pour nous. Seul contrainte, il faut cliquer régulièrement sur la macro-commande "MajNbTotalFolios" pour mettre à jour la valeur dans le bloc avant de sauvegarder. Je vais creuser un peu plus loin avec la solution proposée par VDH-Bruno pour voir si je peux faire un truc un peu plus pro(pre). ;) A plus, Citer ""Nous avons un avenir et il sera fait de nos rêves si nous avons le courage de bousculer les idées reçues" - S. HONDA
DenisHen Posté(e) le 10 juillet 2017 Posté(e) le 10 juillet 2017 NB : Pour les novices, Attention au Espace après chaque commande pour signifier [Entrée]Tu peux remplacer les "espaces" par des point-virgules ";" Citer Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
famaice Posté(e) le 11 juillet 2017 Posté(e) le 11 juillet 2017 Tu peux remplacer les "espaces" par des point-virgules ";" ;) Merci pour l'astuce. Comme quoi, on en apprends toujours...Bien à toi, Citer ""Nous avons un avenir et il sera fait de nos rêves si nous avons le courage de bousculer les idées reçues" - S. HONDA
La Lozère Posté(e) le 11 juillet 2017 Auteur Posté(e) le 11 juillet 2017 C'est bien, je vois que ce post intéresse du monde. :) L'astuce de famaice est pas mal. Il faut que je teste. Maintenant allons plus loin. Si on veut renseigner un cartouche du type le numéro de la page avec le nombre de pages. Genre "Page x/y"On peut mettre un champ avec le truc de famaice pour le chiffre "y"Ensuite, comment renseigner la valeur x en imaginant que les présentations sont dans l'ordre de gauche à droite???? :blink: Citer www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
VDH-Bruno Posté(e) le 12 juillet 2017 Posté(e) le 12 juillet 2017 Maintenant allons plus loin. Si on veut renseigner un cartouche du type le numéro de la page avec le nombre de pages. Genre "Page x/y"On peut mettre un champ avec le truc de famaice pour le chiffre "y"Ensuite, comment renseigner la valeur x en imaginant que les présentations sont dans l'ordre de gauche à droite???? :blink: Bonjour, http://cadxp.com/topic/38099-pagination-automatique/page__view__findpost__p__210208 A voir si cela peut répondre à ton besoin.. A+ Bruno Citer Apprendre => Prendre => Rendre
La Lozère Posté(e) le 12 juillet 2017 Auteur Posté(e) le 12 juillet 2017 Effectivement VDH-Bruno, elle est top ta solution.Pour que cela soit toujours actif, il faut lancer le lisp au démarrage, et le tour et joué... Citer www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
VDH-Bruno Posté(e) le 12 juillet 2017 Posté(e) le 12 juillet 2017 Effectivement VDH-Bruno, elle est top ta solution.Pour que cela soit toujours actif, il faut lancer le lisp au démarrage, et le tour et joué... Oui merci, ça dépanne bien en l'état, même si on pourrait ajouter 2 à 3 petites fonctionnalités au truc pour gagner en souplesse et ergonomie... Citer Apprendre => Prendre => Rendre
famaice Posté(e) le 24 juillet 2017 Posté(e) le 24 juillet 2017 C'est bien, je vois que ce post intéresse du monde. :) L'astuce de famaice est pas mal. Il faut que je teste. Maintenant allons plus loin. Si on veut renseigner un cartouche du type le numéro de la page avec le nombre de pages. Genre "Page x/y"On peut mettre un champ avec le truc de famaice pour le chiffre "y"Ensuite, comment renseigner la valeur x en imaginant que les présentations sont dans l'ordre de gauche à droite???? :blink:Salut le bougnat !!! :D Ben moi, je nomme mes onglet de présentation numériquement (1, 2, 3,...) et je mets dans mon cartouche un attribut "Page" avec comme valeur un champ qui va cherchez la variable système CTAB (champs "Autres" -> "Variables Systèmes" -> "CTAB"). Je coche la case "CONSTANT" dans les propriétés de l'attribut pour éviter une saisie manuelle inopinée de l'utilisateur. Ces deux astuces combinées font que je ne préoccupe plus de la numérotation X/Y de mes folios (au REGEN près) sauf lors de la vérification documentaire avant envoi chez le Client/Fournisseurs. Cette pratique est inscrite dans nos "lignes directrices pour la CAO" (Assurance Qualité... quand tu nous tiens.) B) Bien à toi l'ami ! Citer ""Nous avons un avenir et il sera fait de nos rêves si nous avons le courage de bousculer les idées reçues" - S. HONDA
gricatti Posté(e) le 5 mars 2020 Posté(e) le 5 mars 2020 Hello, :) Pour ma part, j'ai fait comme ci-dessous : 1) Creation d'une macro commande:Dans le menu "Outils/Personnaliser", je crée une nouvelle commande que j'ai appelé "MajNbTotalFolios". A la ligne "Macro", j'ai saisi :^C^C(setenv "TotalNbOfLayout" (rtos (length (layoutlist)))) _Regenall NB : Pour les novices, Attention au Espace après chaque commande pour signifier [Entrée] Et je place cette commande dans un menu personnalisé qui regroupe toutes les macros internes à la société. 2) Ajout d'un attribut "Total Pages" dans le bloc "Cartouche"Dans mon bloc de cartouche, j'ajoute un attribut "Total Pages" et dans le champ "valeur", j'insère un champ exécutant l'expression DIESEL suivante :$(Getenv,"TotalNbOfLayout") :P Je ne sais pas si c'est la bonne méthode mais ça fonctionne pour nous. Seul contrainte, il faut cliquer régulièrement sur la macro-commande "MajNbTotalFolios" pour mettre à jour la valeur dans le bloc avant de sauvegarder. Je vais creuser un peu plus loin avec la solution proposée par VDH-Bruno pour voir si je peux faire un truc un peu plus pro(pre). ;) A plus, J'ai apprécié votre méthode et vous en remercie. J'ai une petite question concernant la macro: Peut on s'affranchir de fournir au client (qui demande les fichiers natifs) la personnalisation de son interface? Je m'explique, si j'ouvre le dessin sur un poste dont la personnalisation des commandes n'est pas faite comme dans votre exemple, le nombre total de folios sort: "-----" vide.J'en ai déduit que sur le poste ou la macro est créée, je peux afficher le nombre total de pages de mon fichier, mais quand j'enregistre mon fichier, la valeur que l'expression diesel avait affiché est réinitialisée et donc n'affiche plus rien sur un poste autre... Question: Peut on lancer la macro a partir du fichier et non par un bouton dans l'interface autocad?Ou: Peut on figer le résultat avant de livrer le fichier? Merci Citer
Messages recommandés