2012-03-19 12 views
7

Czy istnieje prosty sposób na odwrócenie numeru w języku C# z funkcją? Używam XNA i chciałbym powiedzieć mojemu programowi, że jeśli moja "zmienna" przekroczy pewną liczbę, musi odwrócić jego wartość. Celem jest uzyskanie efektu odbicia.Odwróć numer w C#

 if (ballPosition.X >= screenWidth) 
       { 
        // Invert the ball Direction Vector.X 
       } 

Odpowiedz

27

Wystarczy walnięcie - znak przed nim:

direction.X = -direction.X; 
+0

oh ... Nie wiem, co mogliśmy zrobić to . Wielkie dzięki – phadaphunk

+0

Czy to działa jako podwójny negatyw? Jeśli direction.X wynosi -5 i stosuję direction.X = -direction.X; jest direction.X teraz 5? – phadaphunk

+0

@PhaDaPhunk - Tak. Nie ma problemu. –

7

lub można spróbować użyć Vector.X * -1

+0

ballPosition.X * = -1; – CodeHxr

+0

Hej, to oznacza dodatkowe obliczenia. – Larry

+0

To również nie zadziała z long.MinValue, wartość nadal będzie ujemna –