Intersecção Do Ponto à Reta //Repositório JavaScript
Descrição
Ponto de intersecção entre uma reta e um ponto.
Criado: 2005.08.20
Criado: 2005.08.20
Código (Download)
//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/math/dot-line-intersection [rev. #1]
dotLineIntersection = function(x, y, x0, y0, x1, y1){
if(!(x1 - x0))
return {x: x0, y: y};
else if(!(y1 - y0))
return {x: x, y: y0};
var left, tg = -1 / ((y1 - y0) / (x1 - x0));
return {x: left = (x1 * (x * tg - y + y0) + x0 * (x * - tg + y - y1)) / (tg * (x1 - x0) + y0 - y1), y: tg * left - tg * x + y};
};
Exemplo (Exemplo)
<script type="text/javascript">
//<![CDATA[
o = dotLineIntersection(0, 1, 0, 0, 1, 1);
alert('y = ' + o.y + '\nx = ' + o.x);
//]]>
</script>
Ajuda
- dotLineIntersection(px: Integer, py: Integer, x0: Integer, y0: Integer, x1: Integer, y1: Integer): Object
-
Retorna um objeto contendo duas propriedades (x e y), que especificam o ponto de intersecção
entre uma reta e uma linha imaginária que passa pelo ponto e é perpendicular (forma um ângulo de 90°) a essa mesma reta.
- px
- coordenada x do ponto
- py
- coordenada y do ponto
- x0
- coordenada x do ponto A da reta
- y0
- coordenada y do ponto A da reta
- x1
- coordenada x do ponto B da reta
- y1
- coordenada y do ponto B da reta
Ranque (Votos: 39)
3.54