Fórum de Matemática | DÚVIDAS? Nós respondemos!
https://forumdematematica.org/

como traçar uma reta em 90° com referencia a outra reta
https://forumdematematica.org/viewtopic.php?f=14&t=12782
Página 1 de 1

Autor:  jose barreto [ 25 mai 2017, 21:37 ]
Título da Pergunta:  como traçar uma reta em 90° com referencia a outra reta

Boa noite,
Como eu posso rotacionar a copia de uma reta em 90° graus com base na reta original?

Segue imagem de exemplo:

Anexos:
WhatsApp Image 2017-05-25 at 17.35.04.jpeg
WhatsApp Image 2017-05-25 at 17.35.04.jpeg [ 70.84 KiB | Visualizado 1961 vezes ]

Autor:  Soprano [ 26 mai 2017, 10:45 ]
Título da Pergunta:  Re: como traçar uma reta em 90° com referencia a outra reta

Fazendo assim: http://imgur.com/a/3UQj7

Julgo que está certo. Mas espere mais respostas!
O que fiz foi rotacionar o segmento de recta. Para isso, uma vez que apenas é 90 graus, substitui os valores de y por y negativos!
Mas também tenho uma dúvida. O que fiz foi rotacionar do 1º quadrante para o quarto quadrante. Mas qual é a direção que se deve aplicar na rotação? Devo ir para o 4º quadrante ou para o 2º quadrante?

Bom estudo

Autor:  jose barreto [ 26 mai 2017, 13:19 ]
Título da Pergunta:  Re: como traçar uma reta em 90° com referencia a outra reta

@Soprano, estou fazendo isso em um programa, no momento tenho esse calculo, que esta dando problemas.

double deltaX, deltaY;

POINTD pontoCentro;
pontoCentro.x = (ponto2.x + ponto1.x) / 2.0;
pontoCentro.y = (ponto2.y + ponto1.y) / 2.0;

deltaX = abs(pontoCentro.x - ponto1.x);
deltaY = abs(pontoCentro.y - ponto1.y);

double radiansAtual = (DegreesToRadians(90) + atan2(deltaY, deltaX));

pontoResultado1->x = ((deltaX)* cos(radiansAtual)) - ((deltaY)* sin(radiansAtual)) + pontoCentro.x;
pontoResultado1->y = ((deltaX)* sin(radiansAtual)) + ((deltaY)* cos(radiansAtual)) + pontoCentro.y;

deltaX = abs(ponto2.x - pontoCentro.x);
deltaY = abs(ponto2.y - pontoCentro.y);

radiansAtual = DegreesToRadians(270.0) + atan2(deltaY, deltaX);

pontoResultado2->x = ((deltaX)* cos(radiansAtual)) - ((deltaY)* sin(radiansAtual)) + pontoCentro.x;
pontoResultado2->y = ((deltaX)* sin(radiansAtual)) + ((deltaY)* cos(radiansAtual)) + pontoCentro.y;


o que eu estou fazendo é achando o centro da reta, e usando ele para base para cada um dos dois novos pontos.
Acho o ângulo atual da reta original e adiciono 90 graus nele para ficar onde eu quero e 270 no segundo ponto, já que quero no outro quadrante.

Autor:  Soprano [ 26 mai 2017, 16:20 ]
Título da Pergunta:  Re: como traçar uma reta em 90° com referencia a outra reta

Preciso de rever os meus apontamentos.
Mais logo respondo.
Que programa é que utilizas?

Autor:  jose barreto [ 26 mai 2017, 17:58 ]
Título da Pergunta:  Re: como traçar uma reta em 90° com referencia a outra reta

Esta em C++, não uso programa, estou fazendo, e essa parte e para traçar uma reta de um nervo ate o osso mais próximo dele

Página 1 de 1 Os Horários são TMG [ DST ]
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/