prospoule Posté(e) le 29 septembre 2010 Posté(e) le 29 septembre 2010 Bonjour, Après de longues recherches infructueuses je me vois obligé de demander de l'aide. J'en peux plus :casstet: Mon problème est que je cherche à obtenir les coordonnées d'un élément text (géométrie ou point d'insertion) en passant pas un ssget. Quelqu'un sait-il si c'est possible ou pas ? Voici mon code : (defun c:B-tsel () (setvar "cmdecho" 0) (prompt "\n-----------------------------------------------------------------------------") (princ "\n Saisir le texte : ") (setq strTselPar (getstring "\n >>> : ")) (prompt "-----------------------------------------------------------------------------") (setq ss1 (ssget "_X" (list '(0 . "TEXT") (cons 8 "01619,01619") (cons 1 strTselPar))) ) ??? (setvar "cmdecho" 1) (princ) ) D'avance merci
Invité ingoenius Posté(e) le 29 septembre 2010 Posté(e) le 29 septembre 2010 Quelque chose comme cela? (setq T1 "new name") ;cambiare qui la dcl dialog (setq ENT1 (ssget "x" (list (cons 0 "TEXT") (cons 1 T1))))
prospoule Posté(e) le 29 septembre 2010 Auteur Posté(e) le 29 septembre 2010 Je pensais plutôt compléter mon code (à la place des ???) avec ceci : (setq enlist(entget ss1)) (setq a (cdr(assoc 10 enlist)) ) (princ "\n" )(princ a) mais apparement il y a une incompatibilité entre ssget et entget, ou alors quelque chose m'échappe.
bonuscad Posté(e) le 29 septembre 2010 Posté(e) le 29 septembre 2010 Bonjour, je cherche à obtenir les coordonnées d'un élément text (géométrie ou point d'insertion) (cons 8 "01619,01619") Un nom de calque avec une virgule ???? Donc en complément ton code pourrait avoir cette forme: (defun c:B-tsel ( / strTsel ss1 n) (setvar "cmdecho" 0) (prompt "\n-----------------------------------------------------------------------------") (setq strTselPar (getstring [surligneur]T [/surligneur] "\nSaisir le texte >>> : ")) (prompt "-----------------------------------------------------------------------------\n") (setq ss1 (ssget "_X" (list '(0 . "TEXT") (cons 8 [surligneur] (getvar "CLAYER") [/surligneur] ) (cons 1 strTselPar)))) (cond (ss1 (repeat (setq n (sslength ss1)) (princ (trans (cdr (assoc 10 (entget (ssname ss1 (setq n (1- n)))))) 0 1)) ) ) (T (princ "\nAucune sélection sur le calque courant!")) ) (setvar "cmdecho" 1) (princ) ) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
prospoule Posté(e) le 29 septembre 2010 Auteur Posté(e) le 29 septembre 2010 Bravo c'est exactement ce qu'il me fallait. Un grand merci à vous.
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