Aller au contenu

changer layer d\'un bloc dynamique en lisp


Messages recommandés

Posté(e)

Bonjour,

Voilà, j'ai un bloc dynamique que j'insere en tant que bloc

je l'explose et là j'ai donc acces à mes option du bloc dynamique

le probleme est que j'aimerais après explode, pouvoir le mettre sur le bon calque

je sais faire sans exploser mon bloc mais pas avec explode

 

(command "_layer" "CH" "calque-toto" "")

(command "-insert" "c:/toto.dwg" pause "" "" "" "_explode" "d")

 

j'ai pensé à un entlast ou entget ???????????????

 

 

Posté(e)

(entlast ne te donne que la dernière entité. Il te faut donc utiliser la ruse de sioux comme le dit zebulon_

Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier

Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To

GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office

 

PlaquetteDeplianteMars2024.pdf

Posté(e)

Salut

Tu stockes la dernière entité (setq der (entlast)) dans une variable avant de décomposer l'insertion

Tu décompose

Et les (setq der (entnext der)) te donnes les élements qui ont étés décomposés

 

@+

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

Posté(e)

bonjour et merci à vous deux

c'est exactement ce que je veux avec entlast et entnext seulement je dois pas le mettre dans le bon ordre

mon bloc dynamique s'insère bien

la fonction entlast retourne le nom de la derniere entité (toto.dwg) je suppose

mon bloc s'explose bien pour pouvoir avoir accès à mes fonctions dynamiques

je récupère ma derniere entité et je lui change son layer

ça c'est ce que j'aimerais qui ne marche pas :mad:

 

(command "-insert" "c:/toto.dwg" pause "" "" "")

(setq der (entlast))

(command "_explode" "d")

(setq der (entnext der))

(command "_layer" "CH" "toto" "")

 

pouvez vous corriger mes lacunes

merci

Posté(e)

Pour mettre les éléments décomposés sur le calque "toto"

 

(command "_.insert" "c:/toto.dwg" pause "" "" "")
(setq der (entlast) js (ssadd))
(command "_.explode" der)
(while (setq der (entnext der))
 (ssadd der js)
)
(command "_.chprop" js  "" "_layer" "toto" "")

 

ps : Si tu as un bloc avec attribut, lors de l'utilisation de la commande _.insert, pense à la variable attreq

 

@+

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

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é