ptifab Posté(e) le 4 janvier 2005 Posté(e) le 4 janvier 2005 Bonjour et meilleurs vœux à tous pour cette nouvelles année 2005..J’aimerais gagner du temps en dessin. Je m’explique :Une fois mon plan terminé je dois reprendre tous mes blocs (une 40e) pour en faire une légende. Je n’ai pas envie d’avoir une légende type donc j’en fais une à chaque fois.Ce que je voudrais c’est que lorsque je plante un nouveau bloc dans mon plan il s’incrémente automatiquement dans une légende soit dans l’espace objet soit dans un espace présentation nommé « légende ».Ma première question c’est de savoir si c’est possible ?.Ma deuxième, comment faire?Merci d’avance. Tchus
esbe Posté(e) le 12 janvier 2005 Posté(e) le 12 janvier 2005 Hello Je ne sais pas si j'ai bien compris la question mais pourquoi ne pas utiliser les attributs de blocs pour créer tes légendes ?
Oli553 Posté(e) le 20 janvier 2005 Posté(e) le 20 janvier 2005 je vais peut etre dire une bétise : y'a t'il moyen d'utiliser la commande BCOUNT puis d'exporter le résultat vers un tableau?car si les bloc sont créés, sa va être un peu long de les reprendres pour leurs ajouter un attribut.Merci pour les futur réponses (et ne me taper pas, je cherche juste une...non...aïeuh...solution)[Edité le 20/1/2005 par Oli553] [Edité le 20/1/2005 par Oli553] L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
esbe Posté(e) le 20 janvier 2005 Posté(e) le 20 janvier 2005 Bonjour OLI553 Je viens d'essayer ta commande que je ne connaissais pas mais à part le nom du bloc tu n'as pas d'autre info et puis, dis moi comment exportes-tu la liste ds un tableur, c'est comme pour les attributs, fichier d'extraction? Sinon, je crains que notre ami Ptifab est renoncé à nous fréquenter, il sait pas que les sujets ne sont pas toujours aussi mort qu'ils en ont l'air.... Bonne journée
Oli553 Posté(e) le 20 janvier 2005 Posté(e) le 20 janvier 2005 Le tuto nous explique comment faire mais ligne par ligne, alors lispeur fou on vous attend... L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
esbe Posté(e) le 20 janvier 2005 Posté(e) le 20 janvier 2005 Sur, inserer deux blocs ds deux endroit differents en même tempsçà doit faisable
Patrick_35 Posté(e) le 20 janvier 2005 Posté(e) le 20 janvier 2005 Tout est faisable, il faut juste bien cadrer ce que l'on veut faire1) Quels blocs (pas ceux de l'archi ou du plombier par exemple)2) Où inserer la légende, sur quelle modèle et avec quels éléments (Symbole, Qt, Désignation, référence, etc...)3) Pour faire au plus simple, je ne lance que la commande qui permet de créer la légende4) Ce n'est valable que sur une version pleine ou une LT avec additif Ce peut être très complexe ou relativement simple à faire.Il faut juste bien définir ce que l'on veux faire, et de plus, c'est une exellente occasion pour se mettre au lisp @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Oli553 Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 Il faut juste bien définir ce que l'on veux faire, et de plus, c'est une exellente occasion pour se mettre au lisp C bien pour ça que je me renseignePour ce qu'il faut:On prend comme hypothese de départ que les blocs à mettre en légende sont sur un même calque (elec, plombier...).Ensuite, le minimum requis est : Le bloc, sa définition et si possible le nombre inserer. En plus, on peut avoir: le fabricant (sa devient important de nos jours), la localisation.Voila, j'attend des pistes de départ. Merci :cool: L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
Oli553 Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 Donc:1- au début du programme, il faut lancer la création du tableau2-ensuite inserer les blocs3-les compter4-remplir manuellement les renseignements dont on a besoin en fait, il faudrait surtout automatiser l'insertion des blocs et leurs décomptage (si possible)Le reste peut etre fait manuellementEuh, je suis un peut perduQuelqu'un pourrait me dire où trouver une liste des commande lisp? mercia+ L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
Patrick_35 Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 Un truc vite fait pour compter des blocs sur un calque "MACOUCHE" (setq i (tblnext "block" t)) ; parcourir la table des blocs (while i (if (= (logand (cdr (assoc 70 i)) 4) 0) ; trier les blocs dans les xrefs (progn (setq n (ssget "x" (list (cons 8 "MACOUCHE") (assoc 2 i)))) (if n (princ (strcat "\nIl y a " (itoa (sslength n)) " " (cdr (assoc 2 i)) " dans le dessin")) ) ) ) (setq i (tblnext "block")) ) (princ) @+ ps : le plus dur est fait, il ne reste plus qu'à l'adapter ;) Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Oli553 Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 Super, pour l'instant j'essaye de créer un tableau de 5 colonne et 20 lignes mais je n'arrive pas a comprendre comment mrche "setq" et si c'est la bonne façon ;legende (defun C:LEGENDE () (command "table") (setq a 5) (setq b 20) (princ) ) Merci pour l'aide. Je ne sais toujour pas si il sera possible de le mettre dans un tableau remarqueA+ L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
didier Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 Bonsoir,en réponse à OLI553:il faut renseigner les variables AVANT DE LES UTILISER. (setq a 5 b 20 pins (getpoint"\nInsertion du Tableau ?\n") )(command "-table" a b pins) amicalement Éternel débutant… Mon site perso : Programmer dans AutoCAD
didier Posté(e) le 21 janvier 2005 Posté(e) le 21 janvier 2005 coucouaprès réflexion, eh oui tout arrive ;) Pour insérer ta légende :ajouter un attribut invisible à tes blocs,et ensuite faire une liste des blocs du dessinchoisir dans cette liste ceux que tu veux voir en légende,les insérer dans un tableau, faire un texte à côtéde la valeur de l'attribut invisible.tout à fait faisable :cool: ciao Éternel débutant… Mon site perso : Programmer dans AutoCAD
Oli553 Posté(e) le 24 janvier 2005 Posté(e) le 24 janvier 2005 benh c'est un peu là où je ne voulais pas arriver. j'ai plus d'une centaine de bloc à me reprendre.Bon si y' que sa à faireMerci et bonne semaineSalut L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
Oli553 Posté(e) le 24 janvier 2005 Posté(e) le 24 janvier 2005 Bonsoir,en réponse à OLI553:il faut renseigner les variables AVANT DE LES UTILISER. D'accord, sa marche mieux comme sa(setq a 5 b 20 pins (getpoint"\nInsertion du Tableau ?\n") )(command "-table" a b pins) C'est quoi cette commande "pins" : surement pasun badge (ahahah)? Merci, j'avance L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai. "Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok. "ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana Ma bibliothèque de blocs électrique :symbole elec.dwg
Lip Posté(e) le 27 janvier 2005 Posté(e) le 27 janvier 2005 Un truc vite fait pour compter des blocs sur un calque "MACOUCHE" (setq i (tblnext "block" t)) ; parcourir la table des blocs (while i (if (= (logand (cdr (assoc 70 i)) 4) 0) ; trier les blocs dans les xrefs (progn (setq n (ssget "x" (list (cons 8 "MACOUCHE") (assoc 2 i)))) (if n (princ (strcat "\nIl y a " (itoa (sslength n)) " " (cdr (assoc 2 i)) " dans le dessin")) ) ) ) (setq i (tblnext "block")) ) (princ) @+ ps : le plus dur est fait, il ne reste plus qu'à l'adapter ;) Tu peux aussi faire :OutilsSelection Rapidedans type d'objet tu choisi : Référence du blocdans propriété tu prend le calque voulutu fais OKet tu va lire le nombre de bloc selectionné.je dit ça juste pour qui ont besoin de l'info une fois toute les trente six du mois.Sinon, très bien
Patrick_35 Posté(e) le 28 janvier 2005 Posté(e) le 28 janvier 2005 Pour LipSur autocad, tu as raison, mais c'est un lisp qui est fait pour être continué, pas pour dénombrer des blocs @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
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