Aller au contenu

Manu_CAD

Membres
  • Compteur de contenus

    22
  • Inscription

  • Dernière visite

Tout ce qui a été posté par Manu_CAD

  1. Non il y a des textes et des multitextes. Si le texte ou multitexte se trouve dans le layer INFO_FR, on doit remplacer SF6 par GAZ et s'il se trouve dans le layer INFO_NL, on doit SF6 par GAS. C'est enfonction de la langue d'utilisation. Oui, pas de problème
  2. Bonjour @didier Je me doute, mais je suis embêté de demander et qu'on me fasse le lisp 😞 Vous m'avez fait une bonne base et je pensais pouvoir partir de là. En fait le travail est bien plus compliqué car, la première partie est bonne et après il faudrait faire pour tous les blocs qui commencent par S_IO_BO et S_IO_BI qui ont l'attribut I/O_DESCR_FR remplacer SF6 par GAZ et et I/O_DESCR_NL SF6 par GAS. Et une troisième étape pour des textes et multitextes s’il est dans le layer INFO_FR SF6 par GAZ et s’il est dans le layer INFO_NL SF6 par GAS. Mais je vois que travailler les blocs est vraiment un haut niveau 😉
  3. Bonjoue @didier Je dois garder ce bloc, il est imposé par le client. Merci pour ton aide
  4. Bonjour @didier Je suis désolé, je pensais qu'avec le nom du bloc et le champ à modifier, j'étais complet. Je vais regarder pour faire un message complet. Amicalement Folio_020.dwg
  5. Bonjour @didier Je regarde pour comprendre le lisp que tu m'as fait. J'ai mis des commentaires et j'essaie de l'adapter pour le bloc "S_IO_BI16" qui se trouve dans le même dwg. Je pensais juste adapter ton lisp en changeant le nom du bloc et de l'attribut, mais il bloque. Je pense que la cause est dû au fait que le champ I/O_DESCR_FR du bloc S_IO_BI16 est en multitexte ? Manu_Cad-01_ajout BI_BO.lsp Merci pour ton aide
  6. Bonjour @didier Merci, c'est vrai. Je vais appliquer votre conseil. Merci 😉
  7. Merci @JPhil
  8. Bonjour @didier Je peux encore abuser un peu? Est-il possible d'avoir des commentaires pour essayer de comprendre le code ? Je n'avais pas encore vu cette commande en lsp : vl-string-search Merci
  9. Bonjour @didier C'est tout a fait ça 🙂 Merci
  10. Bonjour @didier Je souhaite faire un lisp car après, je dois faire pour d'autres champs et sur des centaines de plans. Voici un example de plan, j'ai fait un nuage autour du symbole. Merci Folio_020.dwg
  11. Bonjour à toutes et tous, Mes meilleurs voeux pour cette nouvelle année. Je débute en lisp et je suis bloqué. J'ai des blocs avec comme nom "DREF_INC_DOWN" et avec un attribut "REF_0A". Je voudrai quand il trouve ce bloc, qu'il lise le champ "REF_01" et si il trouve dans la chaine de caractère de cet attribut "SF6" il doit remplacer par "GAS" Voici le début de ma routine: (setvar "cmdecho" 1) ;;; voir le défilement des commandes ;(setvar "cmdecho" 0) ;;; supprimer le défilement des commandes (setvar "SECURELOAD" 0) ;;; voir le défilement des commandes ;;; ----------------------------------------- ;;; Fonction principale ;;; (defun C:SF6() (graphscr) ;;; bascule sur l'éditeur GRAPHIQUE... (lire_attrib) (princ) );defun C:SF6 (graphscr) ;;; bascule sur l'éditeur graphique ;;; ----------------------------------------- ;;; Fonction secondaire ;;; (princ) ;;; ---------------------------------- ;;; lire les données du cartouche ;;; (defun lire_attrib() ;;; nom bloc cartouche = DREF_INC_DOWN / DREF_INC_UP / DREF_INC_RIGHT / DREF_INC_LEFT ;;;(setq ENTALL (ssget "X" '( (0 . "INSERT") (and (2 . "DREF_INC_DOWN" ) (2 . "DREF_INC_UP" ) (2 . "DREF_INC_RIGHT" ) (2 . "DREF_INC_LEFT" ) ) ) ) (setq ENTALL (ssget "X" '( (0 . "INSERT") (2 . "DREF_INC_DOWN" ) ) ) NOMBLOC (ssname ENTALL 0) NUM 0 );setq ;;; --------------------------------------- ;;; récupère le NOM du bloc DYNAMIQUE (setq NOMBLDYN (vla-get-EffectiveName (vlax-ename->vla-object NOMBLOC) ) );setq (while NOMBLOC ;;; --------------------------------------- ;;; récupère le N° ENTITE (bloc) (setq NOMBLOC (entnext NOMBLOC) ) ;;; --------------------------------------- ;;; récupère le TYPE D'ENTITE (if NOMBLOC (setq VERIFATT (cdr (assoc 0 (entget NOMBLOC ) ) ) );setq );if ;;; --------------------------------------- ;;; TESTE si arrive à la fin des ATTRIBUTS) (if (= VERIFATT "SEQEND") (setq NOMBLOC nil) );if ;;; ------------------------------------------- ;;; Affiche la liste des étiquettes d'ATTRIBUTS (if NOMBLOC (setq ETIQUETTE (cdr (assoc 2 (entget NOMBLOC ) ) ) VALATT (cdr (assoc 1 (entget NOMBLOC ) ) ) );setq );if (if (= ETIQUETTE "REF_01") (setq RENV VALATT) ;;;;(atoi RENV) ;;;;(if (= RENV (WCMATCH "RENV" "*SF6*")) (subst "GAZ" "SF6" RENV) ;;;;);if );if (setq NUM (+ NUM 1) ) );while (princ) );defun lire_attrib Merci pour vos retours 🙂
  12. Bonjour, Je débute sur Inventor 2024 et je voulais savoir si c'était possible de faire le développement d'un tube avec des découpes dedans? D'avance merci pour vos retours.
  13. Merci Eric pour l'explication 🙂
  14. Bonjour, Pouvez-vous me dire s'il y a une différence si je sauvegarde mon fichier autoCAD sous une version inférieure à celle de mon client ? Pour moi, il n'y a pas de différence si je sauvegarde mon fichier en 2013 au lieu de 2018 et de toute façon, il ne voit même pas sous quelle version le fichier est sauvegardé, non ? Merci pour vos retours Manu
  15. Un grand merci Gilles, le lisp fonctionne très bien 🙂 J'ai suivi une petite formation pour apprendre le lisp, j'aimerai pouvoir le métriser comme toi 🙂 Merci et bonne soirée
  16. Il ne change pas le calque du graphique des blocs ( ex: les ligne qui sont dans Eplan200, doit être mis dans le claque ELEC). Je te joins le fichier pour toi voir. Merci _3.dwg
  17. Merci pour l'outil 🙂 Mais sait-on le faire tourner en script ? Car j'ai toujours la boite de dialogue qui s'ouvre. Merci
  18. Bonjour Gilles, Comme les plans ont été exporté d'un autre logiciel, je dois corriger certains paramètres. Et dans les blocs, je dois modifier le calque de tous les objets graphiques du bloc et les mettre dans le layer 'ELEC". Je ne sais pas si c'est faisable ? D'avance merci pour ton aide
  19. Je dois faire ça sur des centaines de plans. C'est pour ça, que je me demandais si on pouvait automatiser, en plus les noms de bloc peuvent être différents. Merci
  20. Salut Gile, Super, ça marche merci ! Puis-je encore solliciter ton aide 😉 Après le attsync, j'ai le TAG "14" qui s'est mis en rotation 0° au lieu de 90° et est-il possible de changer le layer du graphique d'un bloc en lisp? Les dwg sont le résultat d'un export d'un autre logiciel et on doit remettre certaine valeur pour le client. Un grand merci pour ton aide
  21. Bonsoir, Je dois remplacer le layer des attributs de tous les blocs dans le layer "ELEC". Pouvez-vous me dire si c'est possible et si un lisp existe ? D'avance merci
×
×
  • 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é