Aller au contenu

Textes horizontaux pour tout SCU


Messages recommandés

Posté(e)

Bonjour à tous,

Voilà, pour être bref, j'aimerai, en VBA, écrire un texte (simple et/ou multiligne) avec une rotation horizontale (qui correspondrait à 100 grade (90°) si mon SCU serai parallèle à la fenêtre).

 

En gros, selon la direction de mon curseur (Résol;rotation). Je pense que cela peut avoir un rapport avec la variable SNAPANG mais..... je but ! !

 

Et aussi, comment créer un nouveau style de police (toujours en VBA)

 

Merci aux créateur de ce site et merci à tous pour l'alimenter...

 

Posté(e)

bonjour,

un peu trop bref, peut être,

 

tu veux que ce texte provienne d'un programme VBA ?

c'est à dire que tu dois écrire des renseignements via un VBA

et tu veux que ce texte obtenu se colle sur l'axe des X du scu courant ?

 

si oui, précise le et on va t'aider...

 

amicalement

Posté(e)

Bien le Bonsoir,

je te fais ça vite fait, sans contrôles donc tiens moi au courant;

l'idée c'est de dessiner une ligne tempo alignée sur l'axe des X,

mesurer son gisement et appliquer celui ci au texte.

à améliorer, mais ce soir je suis gavé.

Sub TexteAxeX()

Dim EntTexte As AcadText

Dim ValTexte As String

Dim lignetest As AcadLine

Dim Pt1(0 To 2) As Double

Dim Pt2(0 To 2) As Double

 

ValTexte = "Ceci est mon Texte"

 

X1 = 0

Y1 = 0

Z1 = 0

X2 = 10

Y2 = 0

Z2 = 0

 

Pt1(0) = X1

Pt1(1) = Y1

Pt1(2) = Z1

Pt2(0) = X2

Pt2(1) = Y2

Pt2(2) = Z2

Pd = ThisDrawing.Utility.TranslateCoordinates(Pt1, acUCS, acWorld, False)

Pa = ThisDrawing.Utility.TranslateCoordinates(Pt2, acUCS, acWorld, False)

 

Set lignetest = ThisDrawing.ModelSpace.AddLine(Pd, Pa)

angledir = lignetest.Angle

lignetest.Delete

 

Set EntTexte = ThisDrawing.ModelSpace.AddText(ValTexte, Pt1, 0.75)

EntTexte.Rotation = angledir

EntTexte.Update

End Sub

amicalement

Posté(e)

Bonjour didier

 

Et merci de ton attention,

 

Ta routine m'a ouverte de nouvelle perspective, surtout grace à "TranslateCoordinates" que je ne connaissais pas.

Je vais juste essayer de l'adapter à mon besoin, c'est à dire forcer un texte horizontal même si le SCU ne l'est pas... mais je bloque un peu...

 

En tout cas, merci encore...

Posté(e)

Bravo didier, très bonne idée,

 

Je suis aussi très intéressé par la création d'un texte toujours horizontal (parallèle au bas de l'écran) quelque soit l'orientation du SCU.

 

Dans la routine, angledir ne serait pas toujours égale à 100gr ?

 

 

Davantage d'avantages avantage davantage

(Bobby Lapointe)

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

Bonjour à tous...

 

Voilà, j'ai un petit souci... La quazi totalitée de mes dessins sont orienté (rotation SCU). J'ai fais une routine pour celà en LiSP et je stock cette variable en mémoire dans le dessin.

 

En VBA, j'ai récupéré cette variable "Angle" qui est en grade...

 

Mon problème est que dans l'extrait de routine qui suit, cette rotation n'est pas bonne :

Set MtextObj = ThisDrawing.ModelSpace.AddMText(returnPnt, 0, Texte)
   MtextObj.Rotation = Val(Angle)
   MtextObj.AttachmentPoint = acAttachmentPointMiddleCenter
   'MtextObj.Width = 0
   MtextObj.Update

 

Je suis en grades mon axe des Y est au NORD et je tourne dans le sens horaire...

 

Si quelqu'un a une ch'tit idée...

 

Merci,

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)
En VBA, j'ai récupéré cette variable "Angle" qui est en grade...

 

 MtextObj.Rotation = Val(Angle)

 

Si ta variable Angle est en grade, à 1ère vu je dirais que c'est à cause de ça

Transforme la valeur en radian.

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Posté(e)

Merci winfield, j'ai maintenant corrigé, Angle est en radian... Mais ça ne convient toujours pas...

 

Je pense que c'est le sens de rotation... AutoCAD travail par défaut dans le sens trigo, et moi en sens horaire...

 

Je cherche mais je n'ai pas trouvé grand chose...

 

Merci à toi,

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

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é