Application des transformations "scale" et "translate" à une matrix
	
	
		Bonjour,
Je tente actuellement de porter la fonction suivante - écrire en Java ou swift - à l'aide de C#, dans une bibliothèque Windows Phone :
Voici le code Java :
	Code:
	
1 2 3 4 5 6 7
   |     public Matrix zoom(float scaleX, float scaleY, float x, float y) 
    {
     final Matrix save = new Matrix();
     save.set(anotherMatrix);
     save.postScale(scaleX, scaleY, x, y);
     return save;
    } | 
 et le code swift
	Code:
	
1 2 3 4 5 6 7
   |     public func zoom(#scaleX: CGFloat, scaleY: CGFloat, x: CGFloat, y: CGFloat) -> CGAffineTransform
    {
      var matrix = CGAffineTransformTranslate(_touchMatrix, x, y);
      matrix = CGAffineTransformScale(matrix, scaleX, scaleY);
      matrix = CGAffineTransformTranslate(matrix, -x, -y);
      return matrix;
    } | 
 En C#, dans un univers Windows Phone, je possède bien les classes suivantes :
- System.Windows.Media.Matrix
 - System.Windows.Media.TranslateTransform
 - System.Windows.Media.ScaleTransform
 
Mais... la méthode Transform des classes TranslateTransform et  ScaleTransform fonctionne avec des objets Point et non Matrix.
Comment puis-je alors migrer le code et appliquer les transformations à ma matrice ? 
A noter qu'une classe matrice existe aussi dans l'espace de nom XNA et cette classe présente bien des méthode CreateScale et CreateTranslation. Mais XNA n'est-il pas déprécié ? Quelle classe Matrix dois-je alors utiliser pour arriver à mes fins ?
Merci d'avance pour votre aide !