Aller au contenu

Polyligne + "XDATA"


rebcao

Messages recommandés

Bonjour à Toutes et à Tous,

 

En pièce jointe un dessin contenant une Polyligne ! Je pensais pouvoir traiter les données étendues de cette polyligne avec liste XDATA des EXPRESS TOOLS, mais ça affiche des erreurs !!!

 

Quel serait la fonction LISP ou VLISP pour pouvoir lire les données étendues : NUMERO, FEUILLE SECTION, etc... C'est un peu comme les attributs des blocs !

 

Je pensais y arriver en utilisant les CHAMPS ! Mais aucune trace de ces données !

 

Quel serait le meilleur moyen de lire et surtout d'afficher ces données sur le principe des CHAMPS ?

 

Je vous remercie pour votre aide.

 

Christian

polyligne XDATA.zip

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 @)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Je n'ai pas de problème pour lire les données étendues de la polyligne avec les express Tools :

Commande: XDLIST

Initialisation...
Choix de l'objet:
Enter application name <*>:


* Registered Application Name: AcMap_E615D161-C9D7-11d3-839F-0060B0FB6B57
* Code 1071, 32-bit signed long integer: 2
* Code 1071, 32-bit signed long integer: 26135
* Code 1071, 32-bit signed long integer: 1

Object has 16365 bytes of Xdata space available.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à toutes et tous,

 

Ok chez moi aussi=>

 

nitialisation...
Choix de l'objet:
Enter application name <*>:


* Registered Application Name: AcMap_E615D161-C9D7-11d3-839F-0060B0FB6B57
* Code 1071, 32-bit signed long integer: 2
* Code 1071, 32-bit signed long integer: 26135
* Code 1071, 32-bit signed long integer: 1

Object has 16365 bytes of Xdata space available.

Commande:

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Je vous remercie pour vos réponses... Il s'agit d'une version MAP 2011 ! Par contre, j'ai toujours l'erreur ! Il doit y avoir un problème quelque part, parce les commandes de la barre CALQUE II ne fonctionnent pas !

 

En utilisant le LISP de Gilles ça marche...

 

Sinon, voila les données que je retrouve dans les propriétés : post-2403-0-70484600-1456500820_thumb.png

 

Que j'aimerais bien retrouver sous une forme LISP ou autre ?

 

Merci

 

 

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 @)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Il me semble que tu confonds les données étendues (xdata) et les données d'objet (ObjectData) spécifiques à MAP/CIVIL.

 

Il existe des fonctions LISP spécifiques à MAP/CIVIL pour accéder à ces données.

 

Tu trouveras ici les explications pour récupérer la documentation.

Je ne peux pas t'aider beaucoup plus, je ne connais pas MAP, peut-être que si bonuscad ou fabcad passent par là...

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Merci pour vos réponses ! Je vais jeter un oeil...

C'est justement pour pouvoir exploiter ces données hors MAP !

 

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 @)

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

 

Ce que j'utilise pour transcrire des OD de Map vers des XData.

Cependant cette procédure ne peut être faite que sous une version Map.

Une fois fait, les XData pourront être lues depuis une version classique

 

Le code:

 

(defun C:MyOD2XD ( / LstTable Jeu I iNbJeu Elt EltLstTable iEltLst iNbEltLst EltTable oTableDef sNomTable exdata oLstChamp iChamp
                 iNbChamp sNomChamp sTypeChamp sValChamp exdata newent)
 (setq LstTable (ade_odtablelist))
 (setq Jeu (ssget))
 (setq I 0 iNbJeu (sslength JEU))
 (repeat iNbJeu
   (setq Elt (ssname Jeu I))
   (setq I (1+ I))
   (if (setq EltLstTable (ade_odgettables Elt))
     (progn
     (setq iEltLst 0 iNbEltLst (length EltLstTable))
     (repeat iNbEltLst
       (setq EltTable (nth iEltLst EltLstTable))
       (setq iEltLst (1+ iEltLst))
       (setq oTableDef (ade_odtabledefn EltTable))
       (setq sNomTable (cdr (assoc "Tablename" oTableDef)))
       (regapp sNomTable)
       (setq exdata (list sNomTable))
       (setq oLstChamp (cdr (assoc "Columns" oTableDef)))
       (setq iChamp 0 iNbChamp (length oLstChamp))
       (repeat iNbChamp
         (setq sNomChamp (cdr (assoc "ColName" (nth iChamp oLstChamp))))
         (setq sTypeChamp (cdr (assoc "ColType" (nth iChamp oLstChamp))))
         (setq sValChamp (ade_odgetfield Elt EltTable sNomChamp 0))
         (setq iChamp (1+ iChamp))
         (setq exdata
           (append exdata
             (list
               (cond
                 ((eq sTypeChamp "Real") (cons 1040 sValChamp ))
                 ((eq sTypeChamp "Integer") (cons 1070 sValChamp ))
                 ((eq sTypeChamp "Point") (cons 1010 sValChamp ))
                 ((eq sTypeChamp "Character") (cons 1000 sValChamp ))
               )
             )
           )
         )
       )
       (setq exdata (list (list -3 exdata)))
       (setq newent (append (entget Elt) exdata))
       (entmod newent)
     )
     )
   )
 )
)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité