bigsyke Posté(e) le 6 août 2014 Posté(e) le 6 août 2014 Bonsoir à toutes et tous, Est il possible de recuperer via un lisp, le nom d'une image raster en la selectionnant.J'ai eu beau regardé du coté des variables systemes je n'ai rien trouvé. Ce qui est bizarre c'est que je n'arrive pas a mettre la main sur le code dxf qui me donnerais le nom de l'image raster a coup de entget et de entnext alors que je le retrouve si j'enregistre mon dessin en dxf et que je le lis avec un editeur de texte... Quelqu'un peut il m'aider :unsure: Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson
Big666 Posté(e) le 6 août 2014 Posté(e) le 6 août 2014 tu a une image qui a disparue dans ton fichier, il apparait le chemin dans un cadre.tu voudrait via un lisp récupérer l'image? Nous vivons tous dans le ventre d'un chien géantTout le monde le sait mais personne ne dit rien du tout ultra Vomit
bigsyke Posté(e) le 6 août 2014 Auteur Posté(e) le 6 août 2014 tu a une image qui a disparue dans ton fichier, il apparait le chemin dans un cadre.tu voudrait via un lisp récupérer l'image? Merci de ta reponse. J'ai deja eu ce problème d'image avec seulement un cadre avec le chemin qui apparait a l'interieur mais j'ai pu le resoudre.Ce que je voudrais (si c'est possible bien sur) c'est cliquer sur une image raster et recuperer via un lisp le nom de cette image.J'ai essayé avec(entget (car (entsel)) de "balayer" l'ename pour retrouver le nom de mon image raster mais sans succes Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson
Goldorak44 Posté(e) le 6 août 2014 Posté(e) le 6 août 2014 (modifié) Tu peux récupérer son nom facilement en vlisp : (vla-get-Name (vlax-ename->vla-object (car (entsel)))) Et en lisp : (setq a (entget (car (entsel)))) (setq b (entget (cdr (assoc 340 a)))) (setq c (entget (cdr (assoc 330 B)))) (cdr (assoc 3 c)) ;) Edit : j'ai supprimé le x de vla-get-Name ! Modifié le 6 août 2014 par Goldorak44 PIRO CharlesDeveloppeur Revit, RV/RA - Formateur RevitPIRO CIE
bigsyke Posté(e) le 6 août 2014 Auteur Posté(e) le 6 août 2014 Re-bonjour à tous et merci d'avoir pris un peu de temps pour me repondre :) Goldorak44, j'ai essayé ton code suivant: (vlax-get-Name (vlax-ename->vla-object (car (entsel)))) Malheuresement cela n'a pas marché :( .Voilà ce que j'obtiens: Commande: (vlax-get-Name (vlax-ename->vla-object (car (entsel)))) Choix de l'objet: ; erreur: no function definition: VLAX-GET-NAME Effectivement j'ai essayé de trouver VLAX-GET-NAME dans l'aide autocad partie aide au developpeur mais j'ai rien trouvé (ni meme quelque chose qui y ressemble). Pourtant cela m'aurais bien été utile avec cette simple ligne de commande :P Pour ce qui est du lisp (setq a (entget (car (entsel)))) (setq b (entget (cdr (assoc 340 a)))) (setq c (entget (cdr (assoc 330 B)))) (cdr (assoc 3 c)) Je l'ai essayé mais j'ai decouvert qu'il me donnait toujours la meme reponse hélas.J'ai donc executé ligne par ligne le lisp.Déjà j'ai été étonné de constater qu'il pouvait y avoir des especes de "sous-ename" :huh: Enfin bref, j'ai deroulé les differentes strates des enames jusqu'a tomber sur (0 . "DICTIONARY"). Je comprends maintenant pourquoi lorsque j'utilisais le lisp j'obtenais toujours la meme reponse...Dans DICTIONARY sont listés tous les noms de mes images raster en code dxf 3. Lorsque je fait (cdr (assoc 3 c)) il me prends le premier code en 3. Comment distinguer le bon nom de l'image raster des autres noms.... :unsure: Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson
Goldorak44 Posté(e) le 6 août 2014 Posté(e) le 6 août 2014 Alors pour le code c'est de ma faute, j'ai glissé un X en trop !! c'est vla-get-Name !et si cela ne fonctionne pas, fait (vl-load-com) avant ! Pour le deuxième, exact, il les liste tous (c'est logique ). J'avais pas fait attention. Tu peux le récupérer ainsi : (setq a (entget (car (entsel)))) (setq b (entget (cdr (assoc 340 a)))) (cdr (assoc 1 B)) Cela ne te donne pas le nom direct de l'image mais le chemin de celle-ci avec son nom a la fin ! PIRO CharlesDeveloppeur Revit, RV/RA - Formateur RevitPIRO CIE
bigsyke Posté(e) le 6 août 2014 Auteur Posté(e) le 6 août 2014 C'est parfait!!!Merci mille fois pour le coup de pouce! Bien pratique ce Vlisp Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson
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