2017-07-04 14 views
0

In win2D umgewandelt wird, erhalten Position absolute Maus ist diese (von Win2D Sprite Probe)Wie relativ Mausposition des Bildschirms erhalten, die

var point = e.GetCurrentPoint((UIElement)sender).Position.ToVector2(); 

Aber dies ist Absolute Position,

ich, ob Maus zeigt Game Player

Also habe ich diesen Code gemacht, aber es funktioniert nicht.

 var rpoint = e.GetCurrentPoint(canvas).Position.ToVector2(); 



     // 사각형 길을 보여주기 
     if ((rpoint.X > wizardPosition.X - 64) && (rpoint.X < wizardPosition.X + 64) && (rpoint.Y > wizardPosition.Y - 150) && (rpoint.Y < wizardPosition.Y + 42)) 
     { 
      if (ShowBorder == true) { ShowBorder = false; } 

      else if (ShowBorder == false) 
       ShowBorder = true; 
     } 

Hat jemand dieses Problem gelöst?

Antwort

0

Ich habe mich selbst lösen. Sowieso. Der Code ist dies

  var rpoint = e.GetCurrentPoint(this).Position.ToVector2(); 


     // Invert the display transform, to convert pointer positions into simulation rendertarget space. 
     Matrix3x2 Mtransform; 
     Matrix3x2.Invert(transform, out Mtransform); 

     var xpoint = Vector2.Transform(rpoint, Mtransform); 

     // 사각형 길을 보여주기 
     if ((xpoint.X > wizardPosition.X - 64) && (xpoint.X < wizardPosition.X + 64) && (xpoint.Y > wizardPosition.Y - 150) && (xpoint.Y < wizardPosition.Y + 42)) 
     { 
      if (ShowBorder == true) { ShowBorder = false; } 

      else if (ShowBorder == false) 
       ShowBorder = true; 
     } 
Verwandte Themen