DenisHen Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Bonjour à tous. Voilà, je dois "associer" deux blocs... Les deux blocs comprennent plusieurs attributs. J'aimerais qu'en cliquant sur un attribut du premier bloc, en sortir la valeur pour pouvoir l'insérer dans un attribut du deuxième bloc avec un petit calcul. Pour l'insertion dans le deuxième bloc et son calcul, je pense pouvoir me débrouiller. Mais pour récupérer la valeur de l'attribut sélectionner du premier bloc, là, j'aimerais bien un petit coup de mains... Donc, si quelqu'un a une astuce ou une idée, je suis preneur... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
didier Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Coucou Utilise NENTSEL pour les entités imbriquées Exemple : tu cliques sur l'attribut dont tu veux stocker la valeur dans la variable val_att (setq val_att (cdr(assoc 1 (entget (car(nentsel)))))) Amicalement PS : tu ne regardes pas souvent l'aide !!! Éternel débutant... Mon site perso : Programmer dans AutoCAD
DenisHen Posté(e) le 27 mai 2016 Auteur Posté(e) le 27 mai 2016 Salut didier, et merci pour ton aide. Effectivement, l'aide ne m'aide guère car elle est en anglais... Pas facile pour moi... Je ne connaissais pas du tout"nentsel"... Je ne savais pas tellement où chercher dans l'aide... Ça fonctionne nickel. Mais comment mettre un petit message avant la sélection, exemple : "Sélectionner le premier attribut :" ? Denis... EDIT : Comme ça :(defun c:JointDeuxAttribut () (setq ValAtt1 (car (nentsel "\nSélectionner le premier attribut :"))) (setq ValAtt1 (cdr (assoc 1 (entget ValAtt1)))) (princ) ) ;_ Fin de defun Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Patrick_35 Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Salut Deux exemples pour récupérer les valeurs d'attributs d'un blocEn Autolisp(defun valatt(ent / lst) (while (/= (cdr (assoc 0 ent)) "SEQEND") (setq ent (entget (entnext (cdr (assoc -1 ent)))) lst (cons (cdr (assoc 1 ent)) lst) ) ) (reverse (cdr lst)) ) (valatt (entget (car (entsel)))) En Vlisp(defun valatt(ent) (mapcar 'vla-get-textstring (vlax-invoke ent 'getattributes)) ) (valatt (vlax-ename->vla-object (car (entsel)))) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
DenisHen Posté(e) le 27 mai 2016 Auteur Posté(e) le 27 mai 2016 Salut, et Mille mercis Patrick_35... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
didier Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Coucou À DenisH et ceux qui ne cherchent pas dans l'aide sous prétexte que c'est écrit en anglais C'est pour des gens comme ça que je me suis décidé à éditer mes centaines de fiches d'aide sur un site internet que je suis en train de monter.J'avais prévu de l'éditer en papier mais les deux éditeurs rencontrés m'ont expliqué leur refus arguant d'un marché français trop petit !! il faut dire qu'en France on se la pète mais quand on se déplace sur la planète peu de gens savent ce qu'est la France. Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
Patrick_35 Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Salut +1 avec Didier. De plus, si on souhaite évoluer et cela quelque soit le langage de programmation, aussi bien avec l'aide qu'avec les forums, l'anglais devient vite incontournable.Heureusement, il y a des outils de traduction @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 27 mai 2016 Posté(e) le 27 mai 2016 Salut, À propos de l'aide AutoLISP, il n'est pas nécessaire d'être capable de lire Shakespeare dans le texte pour s'en servir, notamment la section AutoLISP Functions Reference qui liste toutes les fonctions en précisant le nombre et le type d'arguments ainsi que la valeur de retour. Pour la description, en cas de doute, on peut utiliser un traducteur en ligne (ils de plus en plus performants). De plus, cette aide a été améliorée depuis AutoCAd 2015 avec sommaire alphabétique (par nom) ou thématique (par fonctionnalité) et propose plus systématiques plusieurs exemples. AutoLISP Reference AutoCAD 2015AutoLISP Reference AutoCAD 2017 Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 27 mai 2016 Auteur Posté(e) le 27 mai 2016 Bonjour messieurs. Je n'ai jamais dis que je ne cherchais jamais dans l'aide. Au contraire, j'y vais souvent, notamment pour la syntaxe des commandes, mais j'ai du mal à traduire les termes trop "techniques", même avec Google Translate qui me fait du "petit-nègre"... En l'occurrence, je ne savais même pas quoi chercher ni par ou commencer mes recherches... Et la réponse de didier a été tellement précise et claire que je n'ai pas eu à chercher dans l'aide. Et merci à tous pour l'intérêt que vous portez aux débutants et pour l'aide prodiguée... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
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