lecrabe Posté(e) le 21 août 2009 Posté(e) le 21 août 2009 Hello SVP je cherche 2 choses : --- 1 ---- Pour les XDATAs d'AutoCAD / MAP / CIVIL / A D T - Quels sont les objets qui ONT ou qui N'ONT PAS de XDATAs ? 1) Question sur "QUI ONT" ou "QUI N'ONT PAS" (Defaut = qui ont)2) Question facultative: pouvoir donner un nom d'appli XDATA et aussi une valeur pour tester un champ XDATA3) Selection AutoCAD classique ...4) Resultat Texte avec 2 compteurs : nbr d'objets selectionnes (au depart) = xxx ,nbr d'objet correspondants = yyy4) Resultat Graphique avec un jeu de selection en cours (pour en faire ce qu'on veut)Effacer, Forcer Couleur, Changer de calque, etc ... --- 2 --- Pour les Object Data (OD) de MAP / CIVIL Exactement le meme principeSauf que pour lesOD, il faut demander en question facultative :Nom de la table OD a tester !Nom du champ et bien sur valeur Un Champ OD peut etre du type : caractere, entier ou reel/flottant Merci d'avance de votre aide, Le Decapode (Tripatouilleur de XDATA et OD) Autodesk Expert Elite Team
(gile) Posté(e) le 21 août 2009 Posté(e) le 21 août 2009 Salut, Voilà déjà un truc moins sophistiqué que ce tu demandes mais néanmoins efficace (utilisation d'un filtre de sélection).Pour le (ou les) nom(s) d'application, les caractères génériques sont pris en compte. (defun c:xdsearch (/ app ss) (if (= "" (setq app (getstring "\nNom de l'application (ou des applications séparés par une virgule) : " ) ) ) (setq app "*") ) (if (setq ss (ssget (list (list -3 (list app))))) (sssetfirst nil ss) ) (princ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
(gile) Posté(e) le 21 août 2009 Posté(e) le 21 août 2009 Une autre, plus proche de la demande : (defun c:xdsearch (/ ap ss0 ss1 ss2) (sssetfirst nil nil) (if (= "" (setq app (getstring "\nNom de l'application (ou des applications séparés par une virgule) : " ) ) ) (setq app "*") ) (if (setq ss0 (ssget)) (progn (setq ss1 (ssadd) ss2 (ssadd) n 0 ) (while (setq ent (ssname ss0 n)) (if (cdr (assoc -3 (entget ent (list app)))) (ssadd ent ss1) (ssadd ent ss2) ) (setq n (1+ n)) ) (princ (strcat (itoa (sslength ss0)) " objets sélectionnées " (itoa (sslength ss1)) " avec données étendues" ) ) (initget "Avec Sans") (if (= "Sans" (getkword "\nChoisir l'option [Avec/Sans] données étendues : ") ) (sssetfirst nil ss2) (sssetfirst nil ss1) ) ) ) (princ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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