- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Lien permanent
- Imprimer
- Signaler
Bonjour,
Je souhaiterais créer un lisp permettant en un clic d'attribuer une valeur à un attribut spécifique d'un block précis.
Pour ceci mon lisp suivant fonctionne très bien:
(defun C:test () (command "-attedit" "y" "TBM_DISTR_FN" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1178" "") (princ) )
Là où je coince c'est lorsque je modifie mon lisp comme ceci:
(defun C:test () (command "-attedit" "y" "TBM_DISTR_F" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1178" "") (command "-attedit" "y" "TBM_DISTR_FN" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1178" "") (command "-attedit" "y" "TBM_DISTR_N" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1177" "") (command "-attedit" "y" "TBM_DISTR_NF" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1177" "") (princ) )
Dans mes dwg, soit j'ai le block TBM_DISTR_F ou TBM_DISTR_FN ou TBM_DISTR_N ou TBM_DISTR_NF
Je n'en ai jamais deux différents dans un même dwg.
Je ne sais pas comment détecter les noms de mes blocks.
J'aimerais donc arriver à quelque chose comme ceci:
(defun C:test () ;if block TBM_DISTR_F alors value = 1178 (command "-attedit" "y" "TBM_DISTR_F" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1178" "") ;if block TBM_DISTR_FN alors value = 1178 (command "-attedit" "y" "TBM_DISTR_FN" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1178" "") ;if block TBM_DISTR_N alors value = 1177 (command "-attedit" "y" "TBM_DISTR_N" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1177" "") ;if block TBM_DISTR_NF alors value = 1177 (command "-attedit" "y" "TBM_DISTR_NF" "AT_DISTR" "" "-999999,-999999" "999999,999999" "" "v" "r" "1177" "") (princ) )
Est ce que l'un d'entre-vous pourrait m'aider ?
D'avance merci,
Lewis185
Résolu ! Accéder à la solution.