LUDWIG Posté(e) le 5 avril 2005 Posté(e) le 5 avril 2005 Bonjour, Savez-vous comment [surligneur] copier un bloc de la table des blocs [/surligneur]et l'ajouter dans cette table des blocs (en changeant juste le nom) et sans forcement l'insérer dans le dessin ? En gros, j'ai un dessin et des blocs (A, B, C) définis (mais pas forcement insérés).Je souhaite définir les blocs A2, B2 et C2 (qui sont les copies de respectivement A, B et C) dans le dessin, sans les y insérer.Le résultat devrait être une table des blocs contenant (A, A2, B, B2, C, C2). Autocad 2021 - Revit 2022 - Windows 10
zebulon_ Posté(e) le 5 avril 2005 Posté(e) le 5 avril 2005 Faut-il absolument les dupliquer ? Parce que s'il suffit de renommer ça me semble plus simple. C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme) C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)
Patrick_35 Posté(e) le 5 avril 2005 Posté(e) le 5 avril 2005 Je pense que c'est queque chose dans ce style (setq a (tblsearch "block" "MON_BLOC")) (entmake (list (cons 0 "block")(cons 2 "MON_BLOC2")(assoc 70 a)(assoc 10 a))) (setq b (cdr (assoc -2 a))) (while b (setq c (entget b)) (setq c (vl-remove (assoc -1 c) c)) (setq c (vl-remove (assoc 5 c) c)) (setq c (vl-remove (assoc 330 c) c)) (entmake c) (setq b (entnext b)) ) (entmake '((0 . "endblk"))) (princ) @+ [Edité le 5/4/2005 par Patrick_35] Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
LUDWIG Posté(e) le 6 avril 2005 Auteur Posté(e) le 6 avril 2005 zebulon : oui, il me faut garder l'ancien et le nouveau bloc, donc un rename ne me convient pas... Patrick_35 : [surligneur] entmake[/surligneur], c'est ça qu'il me fallait ! Faut que j'apprenne à m'en servir via ton exemple, mais ça devrait aller. Merci ! Autocad 2021 - Revit 2022 - Windows 10
LUDWIG Posté(e) le 6 avril 2005 Auteur Posté(e) le 6 avril 2005 Ca marche nickel ! Pourrais-tu me commenter un peu le prog, car je ne comprends pas tout : (setq a (tblsearch "block" "MON_BLOC")) [b] --> recherche du bloc "mon bloc"[/b] (entmake (list (cons 0 "block")(cons 2 "MON_BLOC2")(assoc 70 a)(assoc 10 a))) [b] --> création du bloc "mon bloc2" à partir de du type de bloc et du point d'insertion de "mon bloc" (QUESTION : puisqu'on regarde dans la table des blocs, le point d'insertion n'est-il pas FORCEMENT 0,0,0 ?)[/b] (setq b (cdr (assoc -2 a))) [b] --> nom d'entité (QUESTION : c'est quoi par rapport au code -1, c'est le premier objet contenu dans le bloc ou l'ensemble des objets du bloc ?)[/b] (while b (setq c (entget b)) [b] --> sélectionne l'entité du bloc[/b] (setq c (vl-remove (assoc -1 c) c)) (setq c (vl-remove (assoc 5 c) c)) (setq c (vl-remove (assoc 330 c) c)) [b] --> crée une liste comme b mais sans les codes -1, 5 et 330 (??? seront-ils regénérés tous seuls ?)[/b] (entmake c) [b] --> créée le nouvel objet[/b] je ne comprends pas comment les nouveaux objets sont mis dans le nouveau bloc ? (setq b (entnext b)) [b] -->objet suivant[/b] ) (entmake '((0 . "endblk"))) [b] -->identificateur de fin de bloc[/b] (princ) Autocad 2021 - Revit 2022 - Windows 10
BIM G CO Posté(e) le 7 avril 2005 Posté(e) le 7 avril 2005 La plupart des questions ont des réponses dans l'aide d'AutoCAD (référence DXF)les paires -1,5 et 330 ne sont pas à mettre car ce sont des ename unique que SEUL autoCAd sait gérer. Le point 0,0,0 n'est pas forcément le point d'insertion du bloc j'en ai fais la douloureuse expérience (même dans la table des blocs) "entmake c" crée un objet et non pas mets des objets c'est un problème de compréhension de entmake tu devrait voir dans l'aide d'AutoCADc est une liste de paires pointées qui référence entre autre la liste des enames des éléments formant le bloc. Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
Patrick_35 Posté(e) le 7 avril 2005 Posté(e) le 7 avril 2005 J'irai même plus loin en disant que ce sont des identificateurs, ce qui par définition est uniquePour le point d'insertion, même réponse de Maximilienet pour le (cdr (assoc -2 a)), c'est ce qui est retourné depuis la table des block, pas de -1 @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Tramber Posté(e) le 9 avril 2005 Posté(e) le 9 avril 2005 Je suis comblé :cool: Dans ce message, je cherchais un moyen.... ....mais là j'apprends davantage encore.(de temps en temps, faut prendre le temps de lire tranquillement les posts). Seulement, j'apprends des manips qu'on m'avait justement indiquées comme parfaitement inutiles :casstet: [Edité le 9/4/2005 par Tramber] Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
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