Aller au contenu

Script d'édition de bloc


jms

Messages recommandés

Bonjour,

Je suppose que je devrai tôt ou tard me mettre au lisp, pour régler ce genre de souci, où je m'arrache les cheveux, que le confinement m'a fort heureusement rendu abondant !

Je ne parviens pas à faire tourner un simple script Autocad, avec la commande ATTEDIT, qui me permettrait de sélectionner un bloc, connaissant ses coordonnées, son ehandle et évidemment son nom.

La ligne pourrait tout simplement ressembler à ceci :

(command "ATTEDIT" "Y" "SYMBOLE_NUM" "(handent '555')" "99")

Mais quand il lit ce script, il reste en attente d'une sélection. Si j'ajoute les coordonnées du bloc, il ne trouve rien de mieux.

Quelqu'un•e verrait-il•elle comment solutionner cela ?

Naturellement, ce script contiendrait quelques milliers de lignes similaires, le but étant d'éditer un grand nombre de bloc, et d'une manière récurrente, les valeurs d'attribut étant susceptibles de changer.

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

Je ne suis pas dans mon domaine de compétence sur le sujet des scripts

Mais il me semble que tout ce qui est "sélection" est impossible avec ce langage

Je guette les réponses en espérant y trouver un contradicteur ce qui réglerait ton souci.

En lisp bien évidemment on est dans son domaine d'action efficace

 

Amicalement

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

Je ne suis pas dans mon domaine de compétence sur le sujet des scripts

Mais il me semble que tout ce qui est "sélection" est impossible avec ce langage

Je guette les réponses en espérant y trouver un contradicteur ce qui réglerait ton souci.

En lisp bien évidemment on est dans son domaine d'action efficace

 

Amicalement

 

Il faut voir. Les lignes ci-dessous, par exemple, permettent de sélectionner et hachurer un objet précis, connaissant son ehandle :

SELECT

(handent "5b4")

 

(command "-HATCH" "S" "P" "" "P" "ANSI31" "10" "0" "CO" "T" "100,100,100" "" "")

Si je pouvais en faire autant pour sélectionner l'attribut et l'éditer, je serais comblé ;-)

Lien vers le commentaire
Partager sur d’autres sites

Sans avoir d'exemple de ton bloc, ceci à adapter...

(command "_.-ATTEDIT" "_Yes" "Nom du BLOC" "Nom de l'ATTRIBUT" "*" (handent "HANDLE de L'ATTRIBUT") "_Value" "_Replace" "Nouvelle Valeur" "_Next")

Le "Nom du BLOC" est à adapter, ainsi que "Nom de l'ATTRIBUT"

"HANDLE de L'ATTRIBUT": ici c'est le handle de l'attribut qui est requis, PAS celui de l'insertion du Bloc

"Nouvelle Valeur" la nouvelle valeur que tu veut affecter à ton attribut.

Je n'ai pas essayé en script....

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Sans avoir d'exemple de ton bloc, ceci à adapter...

(command "_.-ATTEDIT" "_Yes" "Nom du BLOC" "Nom de l'ATTRIBUT" "*" (handent "HANDLE de L'ATTRIBUT") "_Value" "_Replace" "Nouvelle Valeur" "_Next")

Le "Nom du BLOC" est à adapter, ainsi que "Nom de l'ATTRIBUT"

"HANDLE de L'ATTRIBUT": ici c'est le handle de l'attribut qui est requis, PAS celui de l'insertion du Bloc

"Nouvelle Valeur" la nouvelle valeur que tu veut affecter à ton attribut.

Je n'ai pas essayé en script....

 

Merci. Je viens d'essayer en script mais ça n'accepte pas la sélection. Les guillemets du handle doivent en principe être remplacés par des apostrophes, pour éviter les guillemets dans les guillemets,

Mais Autocad ne l'entend pas de cette oreille. Au lieu du (handent...) je vais essayer une sélection par coordonnées, puisque je connais celles du bloc...

Lien vers le commentaire
Partager sur d’autres sites

Pas mieux avec les coordonnées !

Par contre, j'ai récupéré ta syntaxe et l'ai introduite en commandes séquentielles. C'est vraiment moins joli, mais...ÇA FONCTIONNE ! :-)

 

_.-ATTEDIT

_Yes

SYMBOLE_NUM

NUM

*

(handent "5c6")

_Value

_Replace

64

_Next

 

MERCI

Lien vers le commentaire
Partager sur d’autres sites

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é