giovedì 4 dicembre 2008

Teorema di Pitagora e ActionScript

In un sistema cartesiano come quello di flash è possibile ottnere la distanza tra due punti utilizzando il teorema di Pitagora.

Teorema: La lunghezza della ipotenusa è pari alla radice della somma delle aree costruite sui due cateti.

In Flash ottenuti i 2 punti di partenza e i 2 punti di arrivo sull'asse x e sull'asse y si può procedere per ottenere la lunghezza della "linea di movimento" con il teorema.

Problema di esempio
La sfera è a x 10 e y 10.
La sfera deve andare a x 30 e y 46.
Quale è la distanza che intercorre tra i due elementi?

trace(calcolaDistanza(10, 30, 10, 46));

function calcolaDistanza(x1:Number, x2:Number, y1:Number, y2:Number):Number {
var distanzaX:Number = x2 - x1;
var distanzaY:Number = y2 - y1;
return Math.sqrt(distanzaX * distanzaX + distanzaY * distanzaY);
}

Soluzione
La soluzione è ottenere la distanza dei punti sull'asse x e sull'asse y. Una volta ottenuti si hanno i due cateti del triangolo. A quel punto applicare il teorema di pitagora per trovare l'ipotenusa.