Aller au contenu

Rotation texte et mtext


Messages recommandés

Posté(e)

Bonjour,

 

je me suis placé dans un scu tourné de 180° par rapport au SCG et j'ai créé un TEXT et un MTEXT.

 

En regardant les propriétés du TEXT :

Commande: (vlax-dump-object e)

; IAcadText: Interface AutoCAD Text

; Valeurs de propriétés:

; Alignment = 0

; Application (RO) = #<VLA-OBJECT IAcadApplication 000000014005d910>

; Backward = 0

; Document (RO) = #<VLA-OBJECT IAcadDocument 00000000362b9668>

; EntityTransparency = "DuCalque"

; Handle (RO) = "2C3"

; HasExtensionDictionary (RO) = 0

; Height = 150.0

; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 000000002d21d188>

; InsertionPoint = (787.296 2013.97 0.0)

; Layer = "REPNM-50"

; Linetype = "ByLayer"

; LinetypeScale = 1.0

; Lineweight = -1

; Material = "ByLayer"

; Normal = (0.0 0.0 1.0)

; ObjectID (RO) = 47

; ObjectID32 (RO) = 47

; ObjectName (RO) = "AcDbText"

; ObliqueAngle = 0.0

; OwnerID (RO) = 45

; OwnerID32 (RO) = 45

; PlotStyleName = "ByLayer"

; Rotation = 3.14159

; ScaleFactor = 1.0

; StyleName = "$fersys-nom"

; TextAlignmentPoint = (0.0 0.0 0.0)

; TextGenerationFlag = 0

; TextString = "toto"

; Thickness = 0.0

; TrueColor = #<VLA-OBJECT IAcadAcCmColor 000000002d21cfa0>

; UpsideDown = 0

; Visible = -1

T

on voit une rotation de pi. On en conclu que la propriété "Rotation" est relative au SCG

 

Les propriétés du MTEXT :

Commande: (vlax-dump-object e)

; IAcadMText: Interface AutoCAD Mtext (texte multiple)

; Valeurs de propriétés:

; Application (RO) = #<VLA-OBJECT IAcadApplication 000000014005d910>

; AttachmentPoint = 7

; BackgroundFill = 0

; Document (RO) = #<VLA-OBJECT IAcadDocument 00000000362b9668>

; DrawingDirection = 5

; EntityTransparency = "DuCalque"

; Handle (RO) = "2BE"

; HasExtensionDictionary (RO) = 0

; Height = 150.0

; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 000000002d21dae8>

; InsertionPoint = (952.856 1257.44 0.0)

; Layer = "REPNM-50"

; LineSpacingDistance = 250.0

; LineSpacingFactor = 1.0

; LineSpacingStyle = 1

; Linetype = "ByLayer"

; LinetypeScale = 1.0

; Lineweight = -1

; Material = "ByLayer"

; Normal = (0.0 0.0 1.0)

; ObjectID (RO) = 46

; ObjectID32 (RO) = 46

; ObjectName (RO) = "AcDbMText"

; OwnerID (RO) = 45

; OwnerID32 (RO) = 45

; PlotStyleName = "ByLayer"

; Rotation = 0.0

; StyleName = "$fersys-nom"

; TextString = "toto"

; TrueColor = #<VLA-OBJECT IAcadAcCmColor 000000002d21d9c0>

; Visible = -1

; Width = 0.0

on voit une rotation de 0.0 et on conclu que la propriété "Rotation" dépend du scu local.

 

Je me demande en quoi c'est logique ?

 

Amicalement

Vincent

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Bonjour,

 

Voici comment je peux expliquer la chose...

 

Je vais partir des codes DXF

Pour un texte tu auras outre le point d'insertion (dxf 10):

(50 . 1.5708) (11 0.0 0.0 0.0)

 

Pour un mtexte tu auras ceci:

(11 2.83277e-016 1.0 0.0) (50 . 0.0) qu'on peut assimiler à -> (11 0.0 1.0 0.0) (50 . 0.0)

 

Pour un MTEXT le code 11 est un vecteur (un peu comme le code d'extrusion 210) qu'on peut comprendre comme scu objet, alors que pour un TEXT le code 11 est un point d'alignement. (voir l'aide DXF)

Donc pour avoir l'angle dans le SCG, il faut faire la transformation vectorielle en s'aidant du code 11.

 

J'espère avoir été compréhensible?

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

Posté(e)

Salut,

 

C'est quand même assez énorme qu'il n'y ait aucune propriété correspondant à la direction avec COM/ActiveX.

On l'a en DXF comme l'a montré bonuscad ou avec (getpropertyvalue mtexte "Direction").

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Merci c'est très clair !

 

Les lignes de repères multiples sont d'ailleurs très voisines des textes multiples de ce point de vue. Ce qui est surtout gênant, c'est le fait que les propriétés aient le même nom "Rotation" et qu'elles n'aient pas la même signification selon le cas.

 

Pour un MTEXT, si on regarde le code de groupe 50, on le voit évoluer en fonction du scu également

Commande: (entget e)

((-1 . <Nom d'entité: 7ffffb61d40>) (0 . "MTEXT") (330 . <Nom d'entité: 7ffffb649f0>) (5 . "24C") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "REPNM-50") (100 . "AcDbMText") (10 282.581 164.981 0.0) (40 . 150.0) (41 . 0.0) (46 . 0.0) (71 . 1) (72 . 5) (1 . "Toto") (7 . "$fersys-nom") (210 0.0 0.0 1.0) (11 -1.0 1.22465e-016 0.0) (42 . 406.617) (43 . 152.456) (50 . 0.0) (73 . 1) (44 . 1.0))

Commande: scu

Nom du SCU courant: *AUCUN NOM*

Spécifiez l'origine du SCU ou [Face/NOMmé/OBjet/Précédent/Vue/Général/X/Y/Z/axEZ] <Général>:

Commande: (entget e)

((-1 . <Nom d'entité: 7ffffb61d40>) (0 . "MTEXT") (330 . <Nom d'entité: 7ffffb649f0>) (5 . "24C") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "REPNM-50") (100 . "AcDbMText") (10 282.581 164.981 0.0) (40 . 150.0) (41 . 0.0) (46 . 0.0) (71 . 1) (72 . 5) (1 . "Toto") (7 . "$fersys-nom") (210 0.0 0.0 1.0) (11 -1.0 1.22465e-016 0.0) (42 . 406.617) (43 . 152.456) (50 . 3.14159) (73 . 1) (44 . 1.0))

 

Alors que pour le texte "ligne", ce code de groupe 50 reste constant quel que soit le scu

Commande: (entget e)

((-1 . <Nom d'entité: 7ffffb61d50>) (0 . "TEXT") (330 . <Nom d'entité: 7ffffb649f0>) (5 . "24D") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "REPNM-50") (100 . "AcDbText") (10 -234.379 470.607 0.0) (40 . 150.0) (1 . "Lig") (50 . 3.14159) (41 . 1.0) (51 . 0.0) (7 . "$fersys-nom") (71 . 0) (72 . 0) (11 0.0 0.0 0.0) (210 0.0 0.0 1.0) (100 . "AcDbText") (73 . 0))

Commande: scu

Nom du SCU courant: *AUCUN NOM*

Spécifiez l'origine du SCU ou [Face/NOMmé/OBjet/Précédent/Vue/Général/X/Y/Z/axEZ] <Général>:

Commande: (entget e)

((-1 . <Nom d'entité: 7ffffb61d50>) (0 . "TEXT") (330 . <Nom d'entité: 7ffffb649f0>) (5 . "24D") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "REPNM-50") (100 . "AcDbText") (10 -234.379 470.607 0.0) (40 . 150.0) (1 . "Lig") (50 . 3.14159) (41 . 1.0) (51 . 0.0) (7 . "$fersys-nom") (71 . 0) (72 . 0) (11 0.0 0.0 0.0) (210 0.0 0.0 1.0) (100 . "AcDbText") (73 . 0))

 

Il en est de même si on scrute la rotation de ces objets dans la fenêtre propriétés.

 

Amicalement

Vincent

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

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é