iowa13 Posté(e) le 22 août 2018 Partager Posté(e) le 22 août 2018 Bonjour.N'ayant pu retrouver le Lisp sur ce forum, je cherche à transformer une multiligne fermé en polyligne (en fait le Lisp ajout des sommets à chaque coin de la multiligne.)A moins que quelqu’un n'ai une façon plus simple de créer des bavettes de fenetre (avec rayon) en coupe.Par avance merci.https://www.noelshack.com/2018-34-3-1534923757-tole.jpg200x100https://www.noelshack.com/2018-34-3-1534923757-tole.jpg[/img] Lien vers le commentaire Partager sur d’autres sites More sharing options...
lecrabe Posté(e) le 22 août 2018 Partager Posté(e) le 22 août 2018 Hello Deja avant meme de chercher un Lisp quelconque, il est tres facile d'obtenir des Polylignes depuis une Multi-Ligne !1) Decomposer/Exploser la Multi-Ligne2) Selectionner TOUTES les Lignes generees, puis J Vois tu ce que je veux dire !? Bye, lecrabe Autodesk Expert Elite Team Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 22 août 2018 Auteur Partager Posté(e) le 22 août 2018 Hello Deja avant meme de chercher un Lisp quelconque, il est tres facile d'obtenir des Polylignes depuis une Multi-Ligne !1) Decomposer/Exploser la Multi-Ligne2) Selectionner TOUTES les Lignes generees, puis J <Entree> Vois tu ce que je veux dire !? Bye, lecrabe Bonjour.oui mais cela fait plus de boulot (partisan du moindre effort), a moins que cela puisse ce faire en lisp ou autre? (j'y connais rien en codage)avant, je faisait la forme, un coupe de "creation" de sommet sur la multiligne et après je faisait mes raccords.merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aleck_Ultimate Posté(e) le 22 août 2018 Partager Posté(e) le 22 août 2018 Salut. Ça me parais relativement simple, même si pour moi ça prendrait la demi-journée (un pro le ferait en 10-15 minutes je suis sûr). La seul difficulté (que je remarque) c'est de vérifier que l'utilisateur sélectionne bien une multiligne. La méthode pourrait être plus rapide pour toi même manuellement avec les bons alias, en jouant avec l'isolement des objets. - Sélectionner les multilignes- les isoler avec ISOLATEOBJECTS- sélectionner tout avec [Ctrl + A] et tout décomposser- tout sélectionner à nouveau et tout joindre- annuler l'isolation des objets avec UNISOLATEOBJETS Comme ça tu évite d'avoir à sélectionner manuellement toutes les lignes de la multiligne décomposée. Si j'ais le temps et si personne d'autre ne l'a fait d'ici là j'essaierai de faire ce lisp. Ça me fera un peut de pratique, c'est pas tout le temps que je trouve des objectifs atteignables pour progresser. Cordialy. Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux. Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage ! Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;]) Utilisateur d'AutoCAD 2021 sous Windows 10 Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 22 août 2018 Auteur Partager Posté(e) le 22 août 2018 Il n'y a pas besoin de faire de sélection sur tout un plan, c'est juste de temps de temps, lors de la création de la multiligne, juste pour pouvoir mettre des rayons à une multiligne que je viens de créer. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aleck_Ultimate Posté(e) le 22 août 2018 Partager Posté(e) le 22 août 2018 Il n'est pas forcément question de tout le plan mais uniquement de ta sélections. Le fait d'isoler la ou les multiligne.s permet d'ensuite sélectionner rapidement tout les éléments créés par la décomposition (par [Ctrl + a] mais aussi par sélection par fenêtre si tu préfère) sans risquer de sélectionner d'autres objets parasites au moment de joindre le tout, ou sans avoir par exemple à verrouiller tout le reste. Depuis que j'ais mis en alias ISOLATEOBJETS, HIDEOBJECTS et UNISOLATEOBJETS je me rend compte que bien utilisées ses commandes peuvent faire gagner beaucoup de temps. Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux. Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage ! Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;]) Utilisateur d'AutoCAD 2021 sous Windows 10 Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 22 août 2018 Auteur Partager Posté(e) le 22 août 2018 Il ne serait pas non plus possible de créer une macro qui fait la commande decomposer, puis joindre ce qui vient d’être decomposé.? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Olivier Eckmann Posté(e) le 22 août 2018 Partager Posté(e) le 22 août 2018 Bonjour, le code suivant devrait faire l'affaire(defun C:ML2PO ( / JEU oMLine oLine) (while (and (setq oMLine (car (entsel "\nSélectionner un Multi-ligne : "))) (= "MLINE" (cdr (assoc 0 (entget oMLine)))) ) (setq oLine (entlast)) (command "_explode" oMLine) (setq JEU (ssadd)) (while (setq oLine (entnext oLine)) (ssadd oLine JEU) ) (command "PEDIT" "M" JEU "" "j" "" "") (setq JEU nil) (princ "\n\n\n") (princ) ) ) Olivier Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 23 août 2018 Auteur Partager Posté(e) le 23 août 2018 Bonjour, le code suivant devrait faire l'affaire(defun C:ML2PO ( / JEU oMLine oLine) (while (and (setq oMLine (car (entsel "\nSélectionner un Multi-ligne : "))) (= "MLINE" (cdr (assoc 0 (entget oMLine)))) ) (setq oLine (entlast)) (command "_explode" oMLine) (setq JEU (ssadd)) (while (setq oLine (entnext oLine)) (ssadd oLine JEU) ) (command "PEDIT" "M" JEU "" "j" "" "") (setq JEU nil) (princ "\n\n\n") (princ) ) ) Olivier Merci mais je voudrais qu'automatiquement les lignes soient en polyligne et jointe sans avoir a passer par des commande supplémentaire. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aleck_Ultimate Posté(e) le 23 août 2018 Partager Posté(e) le 23 août 2018 (while (and (setq oMLine (car (entsel "\nSélectionner un Multi-ligne : "))) (= "MLINE" (cdr (assoc 0 (entget oMLine)))) ) La vache ! Juste un combo while-and-setq-egal Moi je voulais partir sur une boucle, le truc pas facile d’accès pour un débutant, et en fait il suffisait de deux petites lignes. Et pour le cas où on voudrait sélectionner plusieurs types entités il suffirait de remplacer egal par or. C'est tellement plus simple. J'ais apris un bon truc, merci. Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux. Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage ! Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;]) Utilisateur d'AutoCAD 2021 sous Windows 10 Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 23 août 2018 Auteur Partager Posté(e) le 23 août 2018 (while (and (setq oMLine (car (entsel "\nSélectionner un Multi-ligne : "))) (= "MLINE" (cdr (assoc 0 (entget oMLine)))) ) J'y connais rien mais juste avec ce code, la multiligne se transforme en poly.? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aleck_Ultimate Posté(e) le 23 août 2018 Partager Posté(e) le 23 août 2018 Non, pas du tout. En faite ce bout-là fait que si tu clique sur un objet qui n'est pas une multiligne rien ne se passe. Par contre si une entité et sélectionnée, et que son type d’entité est égale à MLINE le reste du code lui est appliqué. Ça évite de décomposer-recomposer un élément qui n'a rein à voire en cas d’erreur de sélection, ce qui me posait le plus problème pour coder ça. Une ligne c'est pas grave, un bloc ça l'est plus. Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux. Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage ! Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;]) Utilisateur d'AutoCAD 2021 sous Windows 10 Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 23 août 2018 Auteur Partager Posté(e) le 23 août 2018 après ce lisp sert dans la continuité de ma tache, je créer la tôle en multiligne et après je la recompose en polyligne pour y ajouter des angles arrondis Lien vers le commentaire Partager sur d’autres sites More sharing options...
lecrabe Posté(e) le 23 août 2018 Partager Posté(e) le 23 août 2018 Hello 1) MERCI Olivier ! 2) Mais il faut rajouter la ligne suivante (apres la ligne DEFUN) pour etre tranquille ! ( setvar "PEDITACCEPT" 1 ) Bye, lecrabe Autodesk Expert Elite Team Lien vers le commentaire Partager sur d’autres sites More sharing options...
iowa13 Posté(e) le 23 août 2018 Auteur Partager Posté(e) le 23 août 2018 MERCI c'est tout a fait cela...... voici le code (je regroupe vos codes.. :) ) (defun C:ML2PO ( / JEU oMLine oLine) ( setvar "PEDITACCEPT" 1 ) (while (and (setq oMLine (car (entsel "\nSélectionner un Multi-ligne : "))) (= "MLINE" (cdr (assoc 0 (entget oMLine)))) ) (setq oLine (entlast)) (command "_explode" oMLine) (setq JEU (ssadd)) (while (setq oLine (entnext oLine)) (ssadd oLine JEU) ) (command "PEDIT" "M" JEU "" "j" "" "") (setq JEU nil) (princ "\n\n\n") (princ) ) ) 1 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