nicolas2 Posté(e) le 29 janvier 2009 Posté(e) le 29 janvier 2009 Bonjour à tous ! J'ai des plans faits avec des traits, des arcs, des cercles....Je voudrais tout supprimer, sauf les cercles ØX (questionnement de l'utiisateur sur le Ø à garder) sans gérer cela par le style de calque ou autre mais seulement avec : Cercle et Ø. Merci pour votre aiguillage !
thry0 Posté(e) le 29 janvier 2009 Posté(e) le 29 janvier 2009 Bjr, Perso, j'aurais fait ça par l'intermédiaire des filtres mais bonc'est ma solution n'ayant pas de connaissance en lisp ...
capde06 Posté(e) le 29 janvier 2009 Posté(e) le 29 janvier 2009 (defun c:toto () (setq sel (ssget "x" '((0 . "CIRCLE")))) (command "chprop" sel "" "ca" "cercle" "")) petit prog pour mettre tous les cercles dans le calque cercleil faut avant crer le calque CERCLE Vous fîtes ce que vous pûtes et vous m'épatâtes !!!!
nicolas2 Posté(e) le 30 janvier 2009 Auteur Posté(e) le 30 janvier 2009 Bonjour et Merci à toi Capde06.Si j'utilise ta routine, je me retrouve encore avec une multitude de cercles de Ø différents et le tri n'est pas fini... L'idée est là mais si on peut éviter la création d'un nouveau calque....Une routine avec uniquement : Cercle et Ø (entré par l'utilisateur) peu importe les calques.Merci à tous pour votre aide !
nicolas2 Posté(e) le 30 janvier 2009 Auteur Posté(e) le 30 janvier 2009 Re-bonjour à vous.Ne serait-il pas judicieux (pour que la routine ne soit pas propre à mon soucis, mais ouverte à tous "nettoyage") de copier un objet en dehors du plan et que le nettoyage se fasse par rapport à cet objet :casstet: (mais qu'est-ce qu'il raconte....?) Un exemple : http://img84.imageshack.us/img84/4364/picassoyw7.jpg(Picasso à du soucis à se faire....il paraît que la place est vaquante..) Je copie un objet (un cercle avec tel Ø dans mon cas, mais éventuellement un trait en calque Y ou tout autre objet) je clique dessus et mon plan et "nettoyé" de tous les autres objets.C'est juste une idée pour que le LISP ne soit pas propre à mon cas (y s'répète le gars...! bientôt la maison de retraite.) Merci à tous
speedy Posté(e) le 30 janvier 2009 Posté(e) le 30 janvier 2009 Bonjour à toutes et à tous ;Met tous les cercles de Ø10 dans le calque cercle(defun c:test ()(setq sel (ssget "x" '((0 . "CIRCLE") (40 . 10.0))))(command "_-layer" "_make" "CERCLE" "_color" 20 "" "")(command "chprop" sel "" "ca" "cercle" "")) @+ Michel a
bonuscad Posté(e) le 30 janvier 2009 Posté(e) le 30 janvier 2009 Salut, En un seul click montrant le cercle de rayon à conserver. ((lambda ( / ent dxf_ent js jsc n) (while (null (setq ent (entsel "\nDésigner un cercle pour conserver le rayon: ")))) (setq dxf_ent (entget (car ent))) (cond ((eq (cdr (assoc 0 dxf_ent)) "CIRCLE") (setq js (ssget "_x" (list (assoc 410 dxf_ent) (assoc 67 dxf_ent))) jsc (ssget "_x" (list (assoc 0 dxf_ent) (assoc 410 dxf_ent) (assoc 67 dxf_ent) (assoc 40 dxf_ent))) n -1 ) (repeat (sslength jsc) (ssdel (ssname jsc (setq n (1+ n))) js) ) (if js (command "_.erase" js "")) ) ) )) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
nicolas2 Posté(e) le 3 février 2009 Auteur Posté(e) le 3 février 2009 Bravo et Merci encore Bonuscad :D
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