Aller au contenu

Andrew L

Membres
  • Compteur de contenus

    3
  • Inscription

  • Dernière visite

Tout ce qui a été posté par Andrew L

  1. Hello, Merci à tous pour vos réponses ! Après quelques recherches et essais, le code suivant fonctionne bien pour moi. (setq activeDocument (vla-get-activedocument (vlax-get-acad-object))) (setq objets (vla-get-blocks activeDocument)) (vlax-for blocs objets (vlax-for blocRef blocs (if (= (vla-get-objectname blocRef) "AcDbBlockReference") (foreach attribut (safearray-value (variant-value (vla-getattributes blocRef))) (vla-put-textstring attribut "") ) ) ) ) Rebcao je ne sais pas si ça fonctionnera sur une version LT... Bonne journée!
  2. Bonjour, Je vais chercher de ce côté, merci pour l'info! Bonne journée
  3. Hello, Je n'ai commencé à utiliser des scripts sur autocad que très récemment et ils se limitent à l'écriture de lignes de commande que je lance sur plusieurs fichiers grâce à SuperAutoScript (version portable). Ma situation actuelle : j'ai des fichiers de schémas électriques avec plusieurs blocs à l'intérieur pour les disjoncteurs, contacteurs, moteurs, etc. Lorsque je dois modifier un folio, il arrive souvent que tous les folios d'un schéma d'une armoire ont été récupérés sur un autre logiciel au format dxf. Les blocs voient alors certains de leurs attributs être remis à leur valeur d'origine, souvent le nom de l'étiquette. Je dois alors manuellement changer tous les attributs pour les rendre vide. J'ai donc créé des scripts avec des lignes de commande pour chaque bloc et chaque attribut du type : -ATTEDIT N N Y05C0_Y01_0_5_0 COMMENT1 COMMENT1 Je peux alors lancer chaque script sur les folios que je veux modifier grâce à SuperAutoScript. Mon problème : Je dois vérifier chaque folio pour savoir quel bloc il contient et donc adapter les listes de fichiers sur lesquels je lance chaque script. Et j'ai un seul bloc par script, car si dans un seul script j'ai deux blocs mais que l'un des deux n'existe par dans un fichier de ma liste, alors il fera s'arrêter le programme automatique. Mon objectif : écrire un script qui pourra identifier quels types de blocs sont présents dans chaque fichier (ou folio) de ma liste, et ainsi ne modifier que ces blocs là. On peut supposer que je connais les valeur de chaque attribut, ainsi que leurs étiquettes. Bien sûr, si une solution émerge avec un bloc, je la réitérerai pour tous les blocs qui peuvent être présents dans mes folios. Je ne connais pas bien le LISP donc je n'ai pas réussi à trouver de méthode tout seul, besoin d'un peu d'aide pour le coup. Merc d'avance à ceux qui prendront le temps de m'aider. Je vous mets un exemple de script en PJ. script.scr
×
×
  • 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é