sexta-feira, 15 de outubro de 2021

Como converter notação vetorial de linhas em notação equacional

p.ex. P=P0+(P1-P0)t -> ax+by+c=0 (em 2d)


Em 3d necessitaria de duas equações(do tipo ax+by+cz+d=0), uma para cada plano, e a intersecção seria a linha - isso não me interessa resolver agora


Vamos lá,

(x,y)=(x0,y0)+(x1-x0,y1-y0)t

(x,y)=(x0+(x1-x0)t,y0+(y1-y0)t)

x=x0+(x1-x0)t

y=y0+(y1-y0)t

ax+by+c=0

a(x0+(x1-x0)t)+b(y0+(y1-y0)t)+c=0

ax0+a(x1-x0)t+by0+b(y1-y0)t+c=0

(a(x1-x0)+b(y1-y0))t=-c-ax0-by0

t=(-c-ax0-by0)/(a(x1-x0)+b(y1-y0))

Não haverá solução quando o numerador é diferente de zero e o denominador é zero; haverá solução única quando ambos o numerador e o denominador são diferentes de zero; haverá infinitas soluções quando ambos o numerador e o denominador são zero.

O primeiro é o caso em que as duas linhas não se tocam; o segundo é o caso em que as duas linhas se cruzam num único ponto; o terceiro é o caso em que as duas linhas coincidem completamente: são as mesmas.

Estou interessado no terceiro caso.

(-c-ax0-by0)=0

(a(x1-x0)+b(y1-y0))=0

A primeira equação me diz que (x0,y0) pertence à segunda linha (ax0+by0+c=0). Se eu aplicar a primeira equação na segunda, eu tenho que,

ax1-ax0+by1-by0=0

ax1+by1+c=0

Ou seja, (x1,y1) pertence também à segunda linha.

Mas já estou convencido de que elas coincidem completamente, o que quero agora é achar a, b e c em termos de x0, y0, x1 e y1. Mas isso são duas equações e três incógnitas, então verei no que dá.


ax0+by0+c=0

a=(-c-by0)/x0

ax1+by1-ax0-by0=0

(-c-by0)x1/x0+by1-(-c-by0)-by0=0

-cx1/x0-by0x1/x0+by1=-c

b(y1-y0x1/x0)=-c+cx1/x0

b=(-c+cx1/x0)/(y1-y0x1/x0)

Multiplico em cima e em baixo por x0

b=(-cx0+cx1)/(y1x0-y0x1)

b=c(x1-x0)/(y1x0-y0x1)

Posso agora inserir b em a e ter uma fórmula para a e outra para b, ambas em termos de c (e x0, x1, y0, y1). 


a=(-c-by0)/x0

a=(-c-c(x1-x0)y0/(x0y1-x1y0))/x0

a=-c(1+(x1-x0)y0/(x0y1-x1y0))/x0

a=-c((x0y1-x1y0+x1y0-x0y0)/(x0y1-x1y0))/x0

a=-c(y1-y0)/(x0y1-x1y0)


Então temos,

a=-c(y1-y0)/(x0y1-x1y0)

b=c(x1-x0)/(x0y1-x1y0)

c=c

E fica a dúvida, posso escolher qualquer c? O que está havendo com aquele denominador?, o que acontece quando ele dá zero?

Bem, se eu escolher c=0, tenho a trivial equação 0x+0y+0=0, que não nos informa nada. Escolher c=1 nos dá algo mais útil, mas ainda longe do perfeito.

Mais fácil é escolher c=(x0y1-x1y0), me livrar de dois problemas ao mesmo tempo (o denominador e a elegância), e obter:

a=y0-y1

b=x1-x0

c=x0y1-x1y0


Isso, em forma de equação, fica,

ax+by+c=0

(y0-y1)x+(x1-x0)y+(x0y1-x1y0)=0


Assim, obtemos a transformação da notação vetorial da linha 2d em notação equacional,

P=P0+(P1-P0)t -> ax+by+c=0

(Com P=(x,y),P0=(x0,y0),P1=(x1,y1))


Como queríamos fazer.

Nenhum comentário:

Postar um comentário