Hola
Montes28, que tal.
Preparé un ejemplo:
Código Javascript
:
Ver original<html>
<head>
<meta charset="utf-8">
<title>@GBreagan - coordenadas</title>
<script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(document).mousemove(function(e){
$('#posicion_cursor').html("Pos x : " + e.pageX + " | Pos y : " + e.pageY);
});
var s = false; //evalúa los click's
// COORDENADAS: puntos (iX,iB) y (fX,fY)
var iX = 0; var iB = 0; var fX = 0; var fY = 0;
$('html').on({
click:function(e){
if (!s) { // ...evalúo primer click
iX=e.pageX;
iY=e.pageY;
s = true; // ¡primer click ejecutado!
} else if(s) { // ...evalúo segundo click
fX=e.pageX;
fY=e.pageY;
s = false;// ¡segundo click ejecutado!
var d = pitagoras(iX,iY,fX,fY);//llamo a mi función que está más abajo
alert(d);//resultado - la distancia es:
}
}
})
function pitagoras(iX,iY,fX,fY){
//un poco de algebra analítica para hallar la distancia no dirigida
return r = Math.sqrt((Math.pow((iX-fX),2))+(Math.pow((iY-fY),2)));
}
});
</script>
</head>
<body>
<div id="posicion_cursor" style="position:fixed"></div>
</body>
</html>
Debo decirte que la precisión que usa JavaScript para sus algoritmos de cálculos es notablemente menor en comparación con otros lenguajes de programación.
- Por ejemplo: 0.119 * 100 mostraria como resultado 11.899999999999999
Un valor en JavaScript tiene 16 dígitos de precisión. Esto parece ser una de las limitaciones para efectuar cálculos matemáticos con JavaScript.
Es por eso que te recomiendo que realices el calculo matemático de la última función (la de pitágoras), una vez obtenido las coordenadas, con algún lenguaje de programación de lado del servidor como puede ser PHP para calcular el valor de la
distancia exacta entre ambos puntos.
Quizá sería bueno que nos comentes en que estas pensando implementar esto.