Bonjour,
voici le probleme qui m'occupe en ce moment
imaginons que nous ayons un rectangle dans un canvas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<Rectangle Fill="#FFFFFFFF" Stroke="#FF000000" HorizontalAlignment="Left"  Width="150" RenderTransformOrigin="0.5,0.5" Height="150" Canvas.Top="100" Canvas.Left="100">
si je lui applique une rotation de 15° (ou 345 en vrai) comme ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<Rectangle.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1"/>
<SkewTransform AngleX="0" AngleY="0"/>
<RotateTransform Angle="15"/>
<TranslateTransform X="0" Y="0"/>
</TransformGroup>
</Rectangle.RenderTransform>
si je change le width du rectangle (en passant a 200 par exemple) les top et left du canvas de l'objet sont recalculé a Canvas.Top="106.547" Canvas.Left="99.151"

j'aimerais savoir si vous avez une idée sur la formule de calcul pour les top et left
j'ai bien tente un bo sinus cosinus mais pour le moment ca donne rien
je vais finir par trouver mais si quelqu'un a deja vu le probleme lol