lolb75 Posté(e) le 20 août 2013 Posté(e) le 20 août 2013 Bonjour a tous, Je cherche une commande qui puisse mettre entre parenthèse un texte automatiquement, si possible "cliqué" le texte et "hop" des parenthèses apparaissent autour du texte..... magique :) merci d'avance Cordialement
Julian-Nihon Posté(e) le 20 août 2013 Posté(e) le 20 août 2013 (modifié) Bonsoir, Quelque chose comme ca :(defun c:DIMP (/ ss i d) (if (setq ss (ssget '((0 . "DIMENSION")))) (progn (setq i 0) (repeat (sslength ss) (setq d (entget (ssname ss i))) (entmod (subst (cons 1 "(<>)") (assoc 1 d) d)) ) (setq i (1+ i)) ) ) ) (princ) Bryce m'avait aider a faire quelque chose de ce genre ... En espérant que ça t'aidera. Ju du Japon EDIT : Ups ... J'avais zapper "TEXTE" ... Du coup, ce que j'ai poste ne correspond pas ... Va falloir adapter. Modifié le 20 août 2013 par Julian-Nihon
lolb75 Posté(e) le 20 août 2013 Auteur Posté(e) le 20 août 2013 Merci Ju du Japon, mais la commande ne fonctionne pas, ça ne trouve pas les objets que je sélectionne ... Cordialement
(gile) Posté(e) le 20 août 2013 Posté(e) le 20 août 2013 Salut, Le code donné par Julian-Nihon est prévu pour fonctionner avec les textes de cote. Celui-ci fonctionnera avec les textes et textes multilignes ayant moins de 250 caractères. (defun c:lolb75 (/ n elst) (if (setq ss (ssget '((0 . "*TEXT")))) (repeat (setq n (sslength ss)) (setq elst (entget (ssname ss (setq n (1- n))))) (entmod (subst (cons 1 (strcat "(" (cdr (assoc 1 elst)) ")")) (assoc 1 elst) elst ) ) ) ) (princ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
VDH-Bruno Posté(e) le 21 août 2013 Posté(e) le 21 août 2013 Bonjour, Les variantes que j’avais écrites sur le même thème, le site étant difficilement accessible dernièrement, je n’ai pu les poster avant.. ;; VDH-Bruno - Mettre entre parenthèses "()" les entités textes sélectionnés (defun c:APT () (vl-load-com) (if (ssget '((0 . "*TEXT"))) (vla-delete (vlax-map-collection (vla-get-ActiveSelectionSet (vla-get-ActiveDocument (vlax-get-acad-object))) '(lambda (x) (vla-put-TextString x (strcat "(" (vla-get-TextString x) ")"))) ) ) ) (princ) ) Et pour le jeu la fonction inverse;; VDH-Bruno - Supprimer les parenthèses "()" encadrant les entités textes sélectionnés (defun c:SPT () (vl-load-com) (if (ssget '((0 . "*TEXT"))) (vla-delete (vlax-map-collection (vla-get-ActiveSelectionSet (vla-get-ActiveDocument (vlax-get-acad-object))) '(lambda (x) (vla-put-TextString x (vl-string-right-trim ")" (vl-string-left-trim "(" (vla-get-TextString x))))) ) ) ) (princ) ) A+ Apprendre => Prendre => Rendre
lolb75 Posté(e) le 22 août 2013 Auteur Posté(e) le 22 août 2013 Super merci a tous, je test ça de suite :) Cordialement PS: c'est vrai que site était inaccessible hier.... d'où ma réponse tardive...
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant