Aller au contenu

Routines LISP

Postez ici vos routines LISP. Une routine est du code court destiné à être réutilisé. Par exemple, un programme mettant à jour la valeur d'un attribut de bloc est une routine. Ne postez pas d'applications ici!


1 364 sujets dans ce forum

  1. decomposer polyligne

    • 3 réponses
    • 5 k vues
  2. charger lisp dans autocad

    • 3 réponses
    • 2,8 k vues
  3. État des blocs et xrefs

    • 0 réponse
    • 1,8 k vues
    • 1 réponse
    • 2,1 k vues
  4. Rotation aléatoire

    • 6 réponses
    • 3 k vues
  5. Interférences 2D

    • 4 réponses
    • 2,5 k vues
    • 3 réponses
    • 2,8 k vues
    • 2 réponses
    • 2,2 k vues
    • 11 réponses
    • 3,2 k vues
  6. Modifier des blocs 1 2

    • 42 réponses
    • 10 k vues
    • 4 réponses
    • 2,5 k vues
    • 1 réponse
    • 2,4 k vues
    • 10 réponses
    • 2,7 k vues
    • 5 réponses
    • 2,2 k vues
  7. modifier un programme !!

    • 16 réponses
    • 3,7 k vues
    • 10 réponses
    • 3,2 k vues
  8. CAMERAS facile

    • 7 réponses
    • 2,9 k vues
    • 0 réponse
    • 1,7 k vues
  9. texte en point

    • 4 réponses
    • 2,5 k vues
    • 3 réponses
    • 6,1 k vues
    • 7 réponses
    • 3 k vues
  10. nouveau defi

    • 7 réponses
    • 2,9 k vues
    • 0 réponse
    • 1,6 k vues
  11. type ligne

    • 1 réponse
    • 1,8 k vues
  12. frozen layer

    • 4 réponses
    • 2,2 k vues


  • Statistiques des forums

    • Total des sujets
      49,3 k
    • Total des messages
      298,9 k
  • Sujets

  • Messages

    • Bonjour @Déméter_33 Je ne suis pas sûr de bien comprendre. Est-il possible d'avoir un visuel du rendu souhaité en image ? Est-ce qu'on travaille bien avec du MTEXT, j'ai bien une idée, mais je voudrais voir ce rendu souhaité avant de répondre à côté si je me fourvoie. Amicalement
    • J'y ai pensé (je suis allé sur la même page), mais la liste des 255 caractères ASCII ne comporte pas les deux caractères, seulement les caractères < et > qui ne sont pas assez visuellement explicites dans l'utilisation de nos plans... https://www.purebasic.com/french/documentation/reference/ascii.html Il s'agit d'Alt codes issus de la table de codage graphique de la page de code 850, en fait si je tape (setq A ►) j'ai nil comme réponse, donc je pense juste que ça ne devrai pas être possible... SAUF QUE quand j'utilise le code duquel je me suis inspiré ça fonctionne, donc mon problème doit être ailleurs... Je cherche encore.
    • Essaye ça : ;Modification des apparences des Mtext - Background bylayer (defun c:bg () (setq MTsel (ssget "_X" '((0 . "MTEXT")))) ;Sélectionne uniquement les objets Mtext (setq Setlen (sslength MTsel) Count 0 ) ;setq "Setlen" au nombre d'objets dans "MTsel" et "count" à 0 (repeat SetLen ;Début de la boucle (setq Nmtxt (ssname MTsel Count)) ;setq "Ntxt" comme étant la (Count)ième entité dans la selection Tsel (setq jsF (ssadd (entlast)) NMtxt (entlast)) ;setq "NMtext" comme la dernière entité Mtext créée (setq dxf_ent (entget NMtxt)) ;Lis le code DXF de l'entité "Nmtext" (setq LayEnt (cdr (assoc 8 dxf_ent))) ;Trouve le calque de l'entité (setq ColMt (cdr (assoc 62 (entget (tblobjname "LAYER" LayEnt)))));Trouve la couleur du calque de l'entité (entmod ;lance la modification de l' objet (append dxf_ent ;ouvre la liste dxf de l'objet (list ;suivant la liste (cons 62 7) ;Couleur du texte sur noir (7) (cons 90 19) ;Encadrement et arrière plan (19) (cons 45 1.2) ;Bordure (1.2) (cons 63 ColMt) ;Couleur de l'arrière plan (variable) ) ;fin de la liste ) ;ferme la liste dxf de l'objet ) ;fin de entmod (setq Count (+ 1 Count)) ;Ajoute 1 au compteur ) ;Fin de Repeat (princ) ) Je fais lire la couleur du calque à chaque texte, et je l'applique en couleur du fond de chaque texte après avoir changé sa couleur en noir. Avoir la couleur "ducalque" n'existe pas dans cette fonctionnalité, aussi tu es forcé de choisir une couleur. La parade serait de lancer une routine comme celle ci-dessus à chaque fois que tu change des textes de calques, ce qui est automatisable sûrement mais là je ne sais pas faire.
    • En passant par chr, ça pourrait peut-être fonctionner ? Source : https://www.da-code.fr/chr/
    • Bonjour, Dans une routine assez imposante de fusion d'un fichier natif dans un modèle pré-paramétré, je cherche à transformer l'apparence et la composition de certains "TEXT" en éléments "MTEXT" avec l'insertion de préfixes et suffixes composés de caractères unicodes , ◄ en préfixes et ► en suffixes. Pour cela, j'ai adapté un morceau de LISP (PTX-STX) trouvé sur ce même forum, mais dans lequel je n'arrive pas à paramétrer les caractères UNICODE, même en les entrants manuellement. (defun TextDp1b2Mtext (/ doc ent Pref Suff) (setq TDPsel (ssget "X" '((0 . "TEXT") (8 . "Sectionnement_PlotsAnno")))) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark doc) (setq Pref (getstring "\Entrer alt+17")) ;Définition du préfixe manuelle (setq Suff (getstring "\Entrer alt+16")) ;Définition du suffixe manuelle (while (< i (sslength TDPsel)) (setq ent (vlax-ename->vla-object (ssname TDPsel i))) (vla-put-textstring ent (strcat Pref (vla-get-textstring ent) Suff)) (setq i (1+ i)) ) (vla-endundomark doc) (setq Setlen (sslength TDPsel) Count 0 ) (repeat SetLen (setq Ntxt (ssname TDPsel Count)) (command "_txt2mtxt" Ntxt "") (setq jsF (ssadd (entlast)) NMtxt (entlast)) (setq dxf_ent (entget NMtxt)) (entmod (append dxf_ent (list (cons 90 19) ;Encadrement (cons 8 "G-ANNOTATIONS") ;Calque (cons 40 0.15) ;Hauteur de texte (cons 45 1.2) ;Bordure (cons 441 0) ;Echelle (cons 41 1.4) ;Largeur ) ) ) (setq Count (+ 1 Count)) ) (princ) ) Le résultat du code joint me donne bien l'apparence désirée mais n'insère pas les caractères demandés. Help me please.
  • Sujets

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