Aller au contenu

Pb de mirroir des tesxtes dans les blocs et attributs


Messages recommandés

Posté(e)

bonjour,

 

(j'ai déjà chercher dans les sujets existants !)

 

j'ai recupéré un dessin avec des textes sous formes d'attributs et à chaque fois que je fais un mirroir le text se retrouve à l'envers, idem pour les blocs qui contiennent des textes.

 

Y a-t-il une solution ?

 

J'ai changer la valeur "mirrtext" mais ça ne change rien. :casstet:

Posté(e)

Salut

 

Non pas à ma connaissance.

Pour les attributs la commande BURST te permettra de les transformer en simple texte donc de faire des miroirs mais pour les blocs eh ben c'est pas gagné.

 

 

@+

 

 

Posté(e)

as-tu essayé de redéfinir le bloc avec son attribut, d'écraser la définition de bloc existante et de synchroniser les attributs existants avec ATTSYNC ?

Posté(e)

J'avais commencé un truc (pas très satisfaisant), mais je ne l'ai pas vraiment achevé...

Il faut dire que c'est plus complexe qu'il n'y parait surtout avec les justification des textes.

 

Mais bon à l'aide des grips tu peux replacer ton attribut au bon endroit.

 

Si ça peu donner des idées à ceux qui voudrait compléter !

 

(defun c:reflete_text ( / e_sel dxf_att typ_ent flag_on flag dxf_flag)
(while (not (member typ_ent '("ATTRIB" "ATTDEF" "TEXT")))
	(while (null (setq e_sel (nentsel "\nChoix de l'attribut/definition attribut/texte à reflèter:"))))
	(setq
		dxf_att (entget (car e_sel))
		typ_ent (cdr (assoc 0 dxf_att))
	)
	(if (not (member typ_ent '("ATTRIB" "ATTDEF" "TEXT")))
		(princ "\nN'est pas un Attribut, Définition d'Attribut ou du Texte!")
	)
)
(setq flag_on (cdr (assoc 71 dxf_att)))
(cond
	((zerop flag_on) (setq flag "Normal"))
	((eq flag_on 2) (setq flag "Y"))
	((eq flag_on 4) (setq flag "X"))
	((eq flag_on 6) (setq flag "Double"))
)
(princ (strcat "\nActuelement le texte " (if (zerop (getvar "MIRRTEXT")) "N'EST PAS" "EST")  " reflété."))
(initget "Normal X Y Double")
(setq flag (getkword (strcat "\nSymétrie [Normal/X/Y/Double] [b]<[/b]" flag ">: ")))
(cond
	((not flag) (setq dxf_flag (cons 71 flag_on)))
	((eq flag "Normal") (setq dxf_flag '(71 . 0)))
	((eq flag "Y") (setq dxf_flag '(71 . 2)))
	((eq flag "X") (setq dxf_flag '(71 . 4)))
	((eq flag "Double") (setq dxf_flag '(71 . 6)))
) 
(setq dxf_att (subst dxf_flag (assoc 71 dxf_att) dxf_att))
(entmod dxf_att)
(if (eq (type (car (last e_sel))) 'ENAME)
	(entupd (car (last e_sel)))
	(entupd (car e_sel))
)
(prin1)
)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Là j'arrête ça devient un peu trop compliqué pour moi

 

Pour l'écrire peut être, mais pour l'utiliser...

 

C'est simple, la démarche pour tester:

1- Tu fais un copier du code contenu dans le listing

2- Tu le colles DANS la ligne de commande d'autocad

3- Tu tapes REFLETE_TEXT (comme pour une commande Autocad), et tu te laisses guider...

 

Pas besoin de mettre dans un fichier (quand tu veux juste tester) ;)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

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é