Aller au contenu

Messages recommandés

Posté(e)

Bonsoir à tous,

Depuis que j'ai utilisé VETORWORKS, je suis revenu sur autocad avec quelques habitudes que j'ai trouvé sympas.

Grâce au background mask pour les textes, plus besoin de déplacer les textes qui tombaient sur des murs des tas de lignes etc... Cela faisait toujours une tache noire et on ne savait plus lire ce qu'il y avait décrit.

Alors ma question est la suivante. Est-ce qu'il existe une variable qui permette, justement, de régler d'office les textes avec le mode background mask de telle sorte que lorsque j'écris un nouveau texte, celui-ci possède directement le background mask.

 

Merci d'avance

 

Posté(e)

Salut,

 

Clic droit dans la fenêtre de texte multiligne," Masque d'arrière-plan..." dans le menu contextuel.

 

Nouveauté 2005

 

A plus...

Posté(e)

Avec les paramètres de codes DXF suivants :

(90 3) (63 9) (421 13158600) (45 1.25) (441 -1) : Masqué

(90 2) : non-Masqué

ceci n'est valable que pour les textes multilignes

 

Remarque : Le masquage est inopérent après une sauvegarde

sur les AutoCAD(s) dont la version est < 2005

 

 

Voici ee que fait cette nouveauté 2005 après avoir étudier les répercutions des codes DXF des textes multilignes:

 

"Masquage" :

 (defun TXTMASK2005 (ARG_ENAME / PRIVE_BLANC PRIVE_BIBLE)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;; Masque le Texte Multiligne pointée par l'ARG_ENAME                 ;;;
;;;  avec les paramètres de codes DXF suivants :                       ;;;
;;;  (90 3) (63 9) (421 13158600) (45 1.25) (441 -1) : Masqué          ;;;
;;;  (90 2)                                          : non-Masqué      ;;;
;;;                                                                    ;;;
;;; Argument :                                                         ;;;
;;;    ARG_ENAME   : Entier correspondant au style Standard du BE      ;;;
;;;                                                                    ;;;
;;; Retourne       : Le nom d'entité du texte multiligne               ;;;
;;;                                                                    ;;;
;;; Remarque       : Le masquage est inopérent après une sauvegarde    ;;;
;;;                  sur les AutoCAD(s) dont la version est < 2005     ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

 ;; PRIVE_BLANC correspond à blanc de chez "SKIP" en AutoCAD 2005
 ;; et blanc cassé en version antérieure
 (setq PRIVE_BLANC (- (expt 2 32) 1))

 ;; Charge la bibliothèque une bonne fois pour toute
 (setq	PRIVE_BIBLE
 (tri_bibliotheque
   '(0 . "PROG")
   (lit_bibliotheque "PUBLIC_STYLE")
 )
 )
 ;; Réaffecte la longueur
 (setq	ARG_ENAME (subst
	    (cons 41
		  (* (cdr (assoc 42 ARG_ENAME))
		     (cdr (assoc "DécalageTXT" PRIVE_BIBLE))
		  )
	    )
	    (assoc 41 ARG_ENAME)
	    ARG_ENAME
	  )
 )
 ;; Masquer le texte
 (if (assoc 90 ARG_ENAME)
   (setq ARG_ENAME
   (subst (cons 90 3)
	  (assoc 90 ARG_ENAME)
	  ARG_ENAME
   )
   )
   (setq ARG_ENAME (append ARG_ENAME (list (cons 90 3))))
 )
 (if (assoc 63 ARG_ENAME)
   (setq ARG_ENAME
   (subst (cons 63 9)
	  (assoc 63 ARG_ENAME)
	  ARG_ENAME
   )
   )
   (setq ARG_ENAME (append ARG_ENAME (list (cons 63 9))))
 )
 (if (assoc 421 ARG_ENAME)
   (setq ARG_ENAME
   (subst (cons 421 13158600)
	  (assoc 421 ARG_ENAME)
	  ARG_ENAME
   )
   )
   (setq ARG_ENAME (append ARG_ENAME (list (cons 421 13158600))))
 )
 ;; La valeur 45 correspond au pourcentage de l'encombrement par rapport
 ;; à celui du texte multiligne (définit par le standard du BE) 
 (if (assoc 45 ARG_ENAME)
   (setq ARG_ENAME
   (subst
     (cons 45 (expt (cdr (assoc "DécalageTXT" PRIVE_BIBLE)) 4))
     (assoc 45 ARG_ENAME)
     ARG_ENAME
   )
   )
   (setq ARG_ENAME
   (append
     ARG_ENAME
     (list
       (cons 45 (expt (cdr (assoc "DécalageTXT" PRIVE_BIBLE)) 4))
     )
   )
   )
 )

 ;; La valeur 441 correspond à la couleur du masquage
 (if (assoc 441 ARG_ENAME)
   (setq ARG_ENAME
   (subst (cons 441 PRIVE_BLANC)
	  (assoc 441 ARG_ENAME)
	  ARG_ENAME
   )
   )
   (setq ARG_ENAME
   (append ARG_ENAME (list (cons 441 PRIVE_BLANC)))
   )
 )
 ;; Applique les modif au texte!
 (entmod ARG_ENAME)
 ;; reprend les valeurs réellement affectées
 (setq ARG_ENAME (entget (cdr (assoc -1 ARG_ENAME))))
 (cdr (assoc -1 PRIVE_ENAME))
)

 

"Démasquage" :

(defun TXTUNMASK2005 (ARG_ENAME / PRIVE_BLANC PRIVE_BIBLE)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;; Masque le Texte Multiligne pointée par l'ARG_ENAME                 ;;;
;;;  avec les paramètres de codes DXF suivants :                       ;;;
;;;  (90 3) (63 9) (421 13158600) (45 1.25) (441 -1) : Masqué          ;;;
;;;  (90 2)                                          : non-Masqué      ;;;
;;;                                                                    ;;;
;;; Argument :                                                         ;;;
;;;    ARG_ENAME   : Entier correspondant au style Standard du BE      ;;;
;;;                                                                    ;;;
;;; Retourne       : Le nom d'entité du texte multiligne               ;;;
;;;                                                                    ;;;
;;; Remarque       : Le masquage est inopérent après une sauvegarde    ;;;
;;;                  sur les AutoCAD(s) dont la version est < 2005     ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

 ;; PRIVE_BLANC correspond à blanc de chez "SKIP" en AutoCAD 2005
 ;; et blanc cassé en version antérieure
 (setq PRIVE_BLANC (- (expt 2 32) 1))

 ;; Charge la bibliothèque une bonne fois pour toute
 (setq	PRIVE_BIBLE
 (tri_bibliotheque
   '(0 . "PROG")
   (lit_bibliotheque "PUBLIC_STYLE")
 )
 )
 ;; Réaffecte la longueur
 (setq	ARG_ENAME (subst
	    (cons 41
		  (* (cdr (assoc 42 ARG_ENAME))
		     (cdr (assoc "DécalageTXT" PRIVE_BIBLE))
		  )
	    )
	    (assoc 41 ARG_ENAME)
	    ARG_ENAME
	  )
 )
 ;; Démasquer le texte
 (if (assoc 90 ARG_ENAME)
   (setq ARG_ENAME
   (subst (cons 90 2)
	  (assoc 90 ARG_ENAME)
	  ARG_ENAME
   )
   )
   (setq ARG_ENAME (append ARG_ENAME (list (cons 90 2))))
 )
 (if (assoc 63 ARG_ENAME)
   (setq ARG_ENAME
   (vl-remove
     (assoc 63 ARG_ENAME)
     ARG_ENAME
   )
   )
 )
 (if (assoc 421 ARG_ENAME)
   (setq ARG_ENAME
   (vl-remove
     (assoc 421 ARG_ENAME)
     ARG_ENAME
   )
   )
 )
 ;; La valeur 45 correspond au pourcentage de l'encombrement par rapport
 ;; à celui du texte multiligne (définit par le standard du BE) 
 (if (assoc 45 ARG_ENAME)
   (setq ARG_ENAME
   (vl-remove
     (assoc 45 ARG_ENAME)
     ARG_ENAME
   )
   )
 )

 ;; La valeur 441 correspond à la couleur du masquage
 (if (assoc 441 ARG_ENAME)
   (setq ARG_ENAME
   (vl-remove
     (assoc 441 ARG_ENAME)
     ARG_ENAME
   )
   )
 )
 ;; Applique les modif au texte!
 (entmod ARG_ENAME)
 ;; reprend les valeurs réellement affectées
 (setq ARG_ENAME (entget (cdr (assoc -1 ARG_ENAME))))
 (cdr (assoc -1 PRIVE_ENAME))
)

 

[Edité le 31/5/2005 par Maximilien]

Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier

Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To

GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office

 

PlaquetteDeplianteMars2024.pdf

  • 6 mois après...
Posté(e)

comment peux t-on appliquer le même

facteur de decalage de bordure

a savoir 1

sur tous les mtext existants d'un dessin

sans que les autres proprietes de ces MTEXT soient changées

par exemple que la largeur reste

merci

 

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é