Aller au contenu

Manu_CAD

Membres
  • Compteur de contenus

    22
  • Inscription

  • Dernière visite

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

Manu_CAD's Achievements

Apprentice

Apprentice (3/14)

  • Collaborator Rare
  • One Year In Rare
  • Dedicated Rare
  • First Post Rare
  • Reacting Well Rare

Recent Badges

0

Réputation sur la communauté

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