Aller au contenu

Orientation drawing text en prog vb


Messages recommandés

Posté(e)

Bonjour,

 

Petit soucis vba :

 

Je cherche à créer un texte avec

Set MyText = MyView.Texts.Add("Truc", x , y)

 

Jusque là c'est ok

 

Ensuite je cherche à contrôler son angle avec

MyText.Angle = angleText

 

C'est ok si mon angle est inférieur à 90, sinon il modifie l'angle en ajoutant 180 pour que le texte soit toujours lisible !

C'est le même soucis en interactif, sauf que dans les propriétés du texte, on peut agir sur le 'retournement' pour corriger.

Mais en vb je ne trouve pas cette propriété.

 

Quelqu'un a déjà débroussaillé ce truc ?

 

Marc

Posté(e)

A mon avis c'est un problème 'pur Catia'.

Je réexplique :

 

1- Je crée un texte avec

Set MyText = MyView.Texts.Add("Truc", x , y)

Mon texte est créé, c'est ok.

 

2-Ensuite je cherche à contrôler son angle :

MyText.Angle = 45

C'est l'orientation du texte, 45 degrés et là c'est encore ok.

 

3-De nouveau :

MyText.Angle = 100

Dans ce cas, je dépasse les 90 degrés et mon texte devrait se retrouver un peu 'tête en bas'. Catia doit alors considérer que ce n'est pas lisible, et affecte une propriété de 'Retournement automatique' qui visuellement modifie l'angle du texte (en ajoutant 180 degrés).

 

Voilà.

 

Marc

Posté(e)

As tu essayer en mettant un angle négatif ?

 

sinon tu peux aussi tourner l'écran, non je plaisante ! :cool:

 

Je pense qu'il faut que tu passe en revue tous les parametres de l'objet Texte

Voir bout de code que j'ai donner à G-CAD

 

mais il faut l'adapter au 2D

 

Voici un exemple de code qui passe en revue les parametres d'un composant :

 

 

 

Dim listeParam As Parameters

Set listeParam = ProduitEnCours.Parameters

Dim iParam, VAR As Integer

Dim MonParam As Parameter

 

For iParam = 1 To listeParam.Count

Debug.Print "Parametre " & iParam; " : " & listeParam.ITEM(iParam).Name

Next

 

 

 

 

 

Si tu veux changer la valeur d'un parametre et si tu connais le nom du parametre (facile avec le Debug.print) voici le reste du code

 

For iParam = 1 To listeParam.Count

Debug.Print "Parametre " & iParam; " : " & listeParam.ITEM(iParam).Name

If listeParam.ITEM(iParam).Name Like "*\Nomduparametre" Then

Set MonParam = listeParam.ITEM(iParam)

Exit For

End If

Next

 

'Affiche la valeur du parametre

msgbox EtatActivation.ValueAsString

 

'Change la vakleur du parametre

'EtatActivation.ValuateFromString "nouvelle valeur"

 

 

 

Bon courage

 

Connaître son ignorance est la meilleure part de la connaissance !http://mooneck.pagesperso-orange.fr/confucius_mini.gif

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é