Como todos sabemos, en los juegos, y especialmente en los de rol, necesitamos descubrir la distancia directa entre dos puntos (en este caso A y B)
Una de las formas de obtenerlo sería usando algún tipo de pathfinding, otra y la más sencilla sería utilizando el teorema de Pitagoras:
En un triángulo rectángulo, el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los dos catetos.
¿Y que tiene que ver un triangulo rectángulo con la distancia de dos puntos?
Muy sencillo, si trazamos la distancia en forma vertical y horizontal entre los dos puntos (catetos) y la distancia directa entre dichos puntos (hipotenusa) nos queda formado el triangulo rectángulo:
Ahora, con el triangulo formado podemos aplicar el teorema. Si tenemos los puntos en las siguientes coordenadas A (3,4) y B (13,11) x,y respectivamente obtenemos que el:
cateto x = abs(13 – 3)
cateto y = abs(11 – 4)
¿Porqué el valor absoluto de la resta?
Porque de esta manera no importa el orden de los puntos ya que sería lo mismo (13 – 3) que (3 – 13), si no lo calculamos como valor absoluto deberíamos poner siempre el valor más alto en primer lugar.
Una vez que obtuvimos el valor de los catetos, solamente nos queda de sacar la raíz cuadrada de la suma del cuadrado de los catetos y voile, distancia resuelta.
Les dejo la función en PHP que lo hace por ustedes, como parámetros van las coordenadas de los dos puntos y la función se encarga del resto.
<?php
function pitagoras($x1 ,$y1 ,$x2 ,$y2){
$catetoX = abs($x2 – $x1);
$catetoY = abs($y2 – $y1);
$hipotenusa = sqrt(($catetoX*$catetoX)+($catetoY*$catetoY));
return $hipotenusa;
}
?>













