#1 Mon 14 October 2013 23:08
- krunch
- Juste Inscrit !
- Date d'inscription: 14 Oct 2013
- Messages: 2
[ACAD MAP 2014] Extraire les OD en Lisp
Bonjour à tous
( OD = Object Data de MAP )
C'est mon premier message ici à l'occasion d'un traitement dans ACAD MAP 2014 que j'ai téléchargé en version d'évaluation ..
J'aurais besoin de faire marcher un Lisp basé sur les Object Datas, j'ai donc cherché dans plusieurs forums et notamment ici mais le code qu'on trouve habituellement pour extraire les OD ne marche pas chez moi (?).
En tous cas ceci renvoie nil sur une entité qui a plusieurs ODs :
Code:
(setq ent (car (entsel "Sélectionne un Mpolygon : "))) (ade_odgettables ent)
Donc je ne passe pas la 1ère étape ..
Savez vous si quelque chose a changé avec la version 2014 ? Je souhaite rester en Lisp ...
Merci d'avance
Hors ligne
#2 Tue 15 October 2013 08:45
- bruno v.
- Participant actif
- Date d'inscription: 22 Mar 2010
- Messages: 89
Re: [ACAD MAP 2014] Extraire les OD en Lisp
En tous cas ceci renvoie nil sur une entité qui a plusieurs OD :
Code:
(setq ent (car (entsel "Sélectionne un Mpolygon : "))) (ade_odgettables ent)
Bonjour,
Si tu as vraiment des OD sur ton entité, ce code devrait te retourner la liste des noms de table. (je n'ai pas 2014 ! mais je pense pas que cela soit la raison de l'échec.)
La seule raison que je vois pour que cela te renvoie nil est que ton entité sélectionnée fasse partie d'un bloc ou d'un Xref...
Essayes avec plutôt la fonction (nentsel) si c'est le cas.
Code:
(setq ent (car (nentsel "Sélectionne un Mpolygon : "))) (ade_odgettables ent)
Hors ligne
#3 Tue 15 October 2013 14:36
- krunch
- Juste Inscrit !
- Date d'inscription: 14 Oct 2013
- Messages: 2
Re: [ACAD MAP 2014] Extraire les OD en Lisp
Bonjour
Non l'entité n'est pas imbriquée, donc avec nentsel c'est pareil.
Finalement ça marche ..
Tout d'abord il est possible que le pack SP1 que j'ai installé ait changé quelque chose.
Ensuite, ce qui est nouveau pour moi c'est qu'une erreur sur l'un des arguments d'une des fonctions d'extraction (ade_odtabledefn ou ade_odgetfield) génère une erreur d'exception (Unhandled Exception 1), et après cette erreur la fonction ade_odgettables renvoie toujours nil.
Il faut quitter AutoCAD MAP et relancer. Ensuite il reste toujours une erreur qui envoie un popup après fermeture (Unhandled Exception FF7BBE80 ou 0), je crois que c'est du à ça mais même pas sûr. Et enfin il arrive que ça bloque quand je relance (au stade Initializing), il faut redémarrer l'ordi.
Bref 2-3 trucs bizarres .. mais bon ça marche, il faut juste faire aucune erreur.
Merci
Dernière modification par krunch (Tue 15 October 2013 14:38)
Hors ligne