Aller au contenu

extraction d\'attribut


Messages recommandés

Posté(e)

Bonjour à tous,

 

j'essaie désepérément de récupérer la valeur d'un attribut de bloc pour inséerer cette valeur sous forme de texte (le but est de repérer les extrémités d'un acier numéroté par le bloc en question).

je coince pour convertir la valeur extraite en un texte.

 

merci d'avance à tous les cadors du lisp...

 

 

voilà le code:

 

 

(defun c:attlire ()
(setq ent(car(entsel)))

(if(=(cdr(assoc 0(entget ent)))"INSERT")
 (if(=(cdr(assoc 66(entget ent)))1)
   (progn
     (setq liste nil)
     (while(if ent(not(=(cdr(assoc 0(entget ent)))"SEQEND")))
(if(=(cdr(assoc 0(entget ent)))"ATTRIB")
  (setq liste(append liste (list (cdr(assoc 1(entget ent)))))))
(setq ent(entnext ent))
)
     )
   )
 )
(setq ptins_txt (getpoint "\nPoint d'insertion du texte"))
(setq num (rtos liste 2 0))
(command "-texte" "s" "standard" ptins_txt "4.0" "0" pause num)

)

Posté(e)

Bonsoir,

 

je te propose un peu plus simple je pense.

Je te laisse faire les tests à l'interieur du code

 

Choix attribut :

(setq att (car (nentsel)))

 

Récupération valeur Attribut :

(setq val-att (cdr (assoc 1 (entget att))))

 

Choix du point :

(setq pt (getpoint "\n Sélection point :"))

 

Création du texte avec entmake

en type "romans"

sur calque "Calque"

(entmake (list
   '(0 . "MTEXT")
   '(100 . "AcDbEntity")
   '(100 . "AcDbMText")
   '(7 . "romans")
   '(8 . "Calque")
   (list 10 (car pt) (cadr pt) (caddr pt))
   (cons 1  val-att))
 )

 

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Merci beaucoup à BRED pour la réponse très rapide, c'est exactement ce que je cherchait à faire. Merci également à Philouie, mais Burst décompose le bloc, or ce bloc est lié à une nomenclature, je ne peux donc pas le décomposer.

 

 

cordialement

 

 

Dom :D

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é