Aller au contenu

[Résolu] Code DXF pour un bloc


DenisHen

Messages recommandés

Bonjour à la communauté,

 

Voilà, j'ai un petit souci avec un code DXF de bloc. J'ai écris ça, mais ça ne fonctionne pas :

  ;;Sélectiondes blocs Arbres pour les changer de calque
 (if (setq Select (ssget "_X" '((0 . "BLOCK") (2 . "VEG52"))) 
     )
   (progn (if (not (tblsearch "layer" "VEGET"))
        	(command "-calque" "n" "VEGET" "")
      	) ;_ Fin de if
      	(command "chprop" Select "" "ca" "VEGET" "")
   )
 )
 (setq Select nil)

 

Le bloc "VEG52" ne change pas de calque...

 

Si quelqu'un a une astuce ou un conseil, je suis preneur...

 

Denis...

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)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Pour apprendre les codes DXF d'entités graphiques, le mieux est d'étudier la liste retournée par entget.

 

Colle l'expression suivante en ligne de commande et sélectionne un bloc (une référence de bloc pour être précis) :

 

((lambda () (mapcar 'print (entget (car (entsel)))) (textscr) (princ)))

  • Upvote 2

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Bonjour messieurs,

 

(gile) : merci pour ton aide, je vais suivre ton conseil.

 

didier : mon jeu de sélection devrait contenir tous les blocs nommés "VEG52", enfin je pense...

 

Merci encore à vous...

 

Denis...

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)

Lien vers le commentaire
Partager sur d’autres sites

J'ai corrigé mon erreur... C'était là :

(0 . "INSERT")

et pas

(0 . "BLOCK")

 

Encore merci à vous...

 

Denis...

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)

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

Donc ton jeu de sélection était vide !!

Vérifier en amont avant de mettre en doute une commande.

Tu aurais cherché longtemps pourquoi ça ne changeait pas de calque alors tu demandais à AutoCAD de changer "rien" de calque ...

 

Amicalement

Lien vers le commentaire
Partager sur d’autres sites

Merci didier,

 

Effectivement, tu as raison, je prenais le problème du mauvais coté...

 

Merci encore...

 

Denis...

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)

Lien vers le commentaire
Partager sur d’autres sites

Salut à tous,

très sympa ce petit lisp, comment faire si on veut sélectionner/filtrer plusieurs noms de blocs ?

peut on utiliser des caractères génériques "*" , "??" ?

Merci d'avance

AHG

 

Merci didier,

 

Effectivement, tu as raison, je prenais le problème du mauvais coté...

 

Merci encore...

 

Denis...

Lien vers le commentaire
Partager sur d’autres sites

Salut

 

Tu peux faire des tests

(setq js (ssget "x" (list (cons 0 "insert") (cons 2 "Bloc*"))))

Puis

(entget (ssname js 0))

(entget (ssname js 1))

 

Ou encore

(setq js (ssget "x" (list (cons 0 "insert") (cons 2 "Bloc1,Bloc2"))))

 

Si le résultat est nil sur le ssget, c'est que la sélection n'a pas fonctionnée ou n'a rien à sélectionner.

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Oui, les caractères génériques fonctionnent, enfin l'"*", les autres, je ne sais pas...

 

J'ai (2 . "EDF*") pour tous mes blocs EDF et ça fonctionne...

 

Denis

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)

Lien vers le commentaire
Partager sur d’autres sites

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é