coube Posté(e) le 29 mai 2014 Posté(e) le 29 mai 2014 Bonjour J'aimerais pouvoir extraire des donner d'une cote a partir de la commande DATAEXTRACTION comme dans mon exemple je veux créé une liste P1 - W10x22x 3 1/16"P2 - W10x22x 3 5/8"P3 - W10x22x 4 5/8" D'habitude j'utilise un bloc pour faire mon dataextraction, avec cette méthode je suis obliger de réécrit la longueur de ma pièce manuellement du de doubler mes info sur mon dessins et aussi de faire des erreur de recopiage. Pour ca que je recherche une méthode pour faire une liste a partir d'une cote, je sait pas si c est possible. merci pour votre aide. J'ai un exemple sur autocad mais je suis pas capable de le publier sur le forumEXEMPLE.pdf
rebcao Posté(e) le 30 mai 2014 Posté(e) le 30 mai 2014 Bonjour, Tu peux intégrer des champs dans tes attributs. Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
coube Posté(e) le 30 mai 2014 Auteur Posté(e) le 30 mai 2014 Salut Pour ce qui est d'un bloc c'est ça que je me sert, pour une cote ça fonctionne pas.
lecrabe Posté(e) le 2 juin 2014 Posté(e) le 2 juin 2014 Hello Pour Info, on peut faire des choses" plus ou moins folles" avec les champs ! Dans l'exemple joint sur les cotes lineaires du rectangle, tu vois aussi le diametre et le rayon du cercle ( En 2eme ligne par l'utilisation du \P qui permet de passer a la ligne suivante ) Et surtout par l'utilisation d'un copier/coller du contenu special champ ... Si tu changes le cercle : un petit RG (REGEN) et HOP Diametre & Rayon suivent ... Bye, lecrabe Autodesk Expert Elite Team
bonuscad Posté(e) le 2 juin 2014 Posté(e) le 2 juin 2014 Bonjour, En faisant un fichier CSV par exemple. Peut être faudra t-il encore ajuster le code pour avoir exactement ce que tu veux. (defun c:dim2csv ( / js dxf_cod mod_sel n lremov file_name cle f_open key_sep str_sep oldim ename l_pt) (princ "\nChoix d'un objet modèle pour le filtrage: ") (while (null (setq js (ssget "_+.:E:S" (list '(0 . "DIMENSION") (cons 67 (if (eq (getvar "CVPORT") 1) 1 0)) (cons 410 (if (eq (getvar "CVPORT") 1) (getvar "CTAB") "Model")) ) ) ) ) (princ "\nCe n'est pas un objet valable pour cette fonction!") ) (vl-load-com) (setq dxf_cod (entget (ssname js 0))) (foreach m (foreach n dxf_cod (if (not (member (car n) '(0 67 410 8 6 62 48 420 70))) (setq lremov (cons (car n) lremov)))) (setq dxf_cod (vl-remove (assoc m dxf_cod) dxf_cod)) ) (initget "Unique Tout Manuel _Single All Manual") (if (not (eq (setq mod_sel (getkword "\nMode de sélection filtrée, choix [unique/Tout/Manuel]<Manuel>: ")) "Single")) (if (eq mod_sel "All") (setq js (ssget "_X" dxf_cod)) (setq js (ssget dxf_cod)) ) ) (setq file_name (getfiled "Nom du fichier a créer ?: " (strcat (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 3)) "csv") "csv" 37)) (if (null file_name) (exit)) (if (findfile file_name) (progn (prompt "\nFichier éxiste déjà!") (initget "Ajoute Remplace annUler _Add Replace Undo") (setq cle (getkword "\nDonnées dans fichier? [Ajouter/Remplacer/annUler] <R>: ") ) (cond ((eq cle "Add") (setq cle "a") ) ((or (eq cle "Replace") (eq cle ())) (setq cle "w") ) (T (exit)) ) (setq f_open (open file_name cle)) ) (setq f_open (open file_name "w")) ) (initget "Espace Virgule Point-virgule Tabulation _SPace Comma SEmicolon Tabulation") (setq key_sep (getkword "\nSéparateur [Espace/Virgule/Point-virgule/Tabulation]? <Point-virgule>: ")) (cond ((eq key_sep "SPpace") (setq str_sep " ")) ((eq key_sep "Comma") (setq str_sep ",")) ((eq key_sep "Tabulation") (setq str_sep "\t")) (T (setq str_sep ";")) ) ; (setq str_sep (vl-registry-read "HKEY_CURRENT_USER\\Control Panel\\International" "sList")) (setq oldim (getvar "dimzin")) (setvar "dimzin" 0) (write-line (strcat "Type" str_sep "Longueur") f_open) (repeat (setq n (sslength js)) (setq ename (vlax-ename->vla-object (ssname js (setq n (1- n)))) l_pt nil) (if (vlax-property-available-p ename 'Measurement) (setq l_pt (cons (cons (vlax-get ename 'TextOverride) (vlax-get ename 'Measurement)) l_pt)) ) (foreach n l_pt (write-line (strcat (car n) str_sep (rtos (cdr n) 2 2)) f_open) ) ) (close f_open) (setvar "dimzin" oldim) (prin1) ) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
coube Posté(e) le 2 juin 2014 Auteur Posté(e) le 2 juin 2014 Salut POur ce que tu me propose lecrabe c'est intéresant mais on peu pas faire un dataextraction pour faire une liste de ce qui est marquer dans la cote. pour ta réponse bonuscadJe sais pas trop comment me servir d un fichier csv dans autocad 1
coube Posté(e) le 2 juin 2014 Auteur Posté(e) le 2 juin 2014 Salut POur ce que tu me propose lecrabe c'est intéresant mais on peu pas faire un dataextraction pour faire une liste de ce qui est marquer dans la cote. pour ta réponse bonuscadJe sais pas trop comment me servir d un fichier csv dans autocad 1
Goldorak44 Posté(e) le 2 juin 2014 Posté(e) le 2 juin 2014 pour ta réponse bonuscadJe sais pas trop comment me servir d un fichier csv dans autocad C'est le Lisp qui créer le fichier CSV. Ensuite tu peux ouvrir ce fichier avec Excel ou un éditeur de texte (bloc note, notepad,...). PIRO CharlesDeveloppeur Revit, RV/RA - Formateur RevitPIRO CIE
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