Como dibujar un polígono a partir de un trazo lineal

Buen Dia

Tengo un problema matemático que no puedo resolver. Resulta que en un plano cartesiano tengo un trazo lineal con varios puntos y quiero dibujar un polígono colocando lineas paralelas a cada segmento del trazo. La pregunta es como hago para poder encontrar los puntos de las lineas paralelas sabiendo que lo conozco son las dos coordenadas del segmento del trazo y la distancia que debe tener la linea paralela. Espero haberme explicado y me puedan ayudar.

De antemano Gracias

Respuesta
1

Sean (a, b) y (c, d) dos puntos seguidos del trazo.

El vector que los une es (c-a, d-b)

Los vectores perpendiculares son (b-d, c-a) y (d-b, a-c) que apuntan en sentido contrario

Los haremos unitarios dividiendo por el módulo que es

m = |(b-d, c-a)| = |(d-b, a-c)| = sqrt[(b-d)^2+(a-c)^2]

Ahora basta con aplicar uno de los dos vectores unitarios a los puntos que tenemos, dependiendo de a que lado de la figura original va la nueva.

Así tendremos los puntos nuevos

(a+(b-d)/m, b+(c-a)/m) y (c+(b-d)/m, d+(c-a)/m)

o estos otros

(a-(b-d)/m, b-(c-a)/m) y (c-(b-d)/m, d-(c-a)/m)

Pon los puntos recorriendo siempre la figura en el mismo sentido para no trazar segmentos una vez a un lado y otra vez al otro de la figura original.

Esta construcción te da dos puntos de cada recta, no los puntos de unión de los segmentos. Para eso tendrías que hacer la intersección de una recta con la siguiente. Pero hacer eso en abstracto da un chorizo de fórmula inmanejable.

Y eso es todo.

Buen Día 

Gracias por tu respuesta, pero para que me quede un poquito mas claro tal vez me puedes ayudar con ejemplo practico. Si tengo la recta y=x+2 y tengo dos puntos que corresponden a esa recta (5,7) y (8,10) la pregunta es como puedo conocer los puntos de una recta paralela si se que la distancia entre estas dos rectas es 4?

Gracias por tu ayuda.

Puedes usar las formulas que ya están resueltas

m = |(b-d, c-a)| = |(d-b, a-c)| = sqrt[(b-d)^2+(a-c)^2]

Y los puntos son

(a+(b-d)/m, b+(c-a)/m) y (c+(b-d)/m, d+(c-a)/m)
o estos otros
(a-(b-d)/m, b-(c-a)/m) y (c-(b-d)/m, d-(c-a)/m)

Tomas

a=5; b=7; c=8; d=10

m=sqrt[(7-10)^2+(5-8)^2] = sqrt(3^2+3^2) = sqrt(18) = sqrt(2·3·3) = 3sqrt(2)

Dado que la expresión es aparatosa seguiré usando m hasta el final

(5+(7-10)/m, 7+(8-5)/m) y (8+(7-10)/m,10+(8-5)/m)

(5-3m,7+3m) y (8-3m, 10+3m)

Se repite el producto 3m todas las veces

3m = 9sqrt(2)

Si el ejercicio es teórico debes poner 9sqrt(2) donde pone 3m, si es práctico vamos a calcularlo

3m=9sqrt(2) = 9 · 1.414213562 = 12.72792206

Y ahorrándonos algún paso intermedio y ahorrándonos algún decimal el resultado es

(-7.7279..., 19.7279...) y (-4.7279..., 22.7292)

Y por el otro lado de la recta los puntos hubieran sido:

(5+3m,7-3m) y (8+3m, 10-3m) =

(17.7279..., -5.7279...) y (20.7279..., -2.7279...)

Y eso es todo.

Espera, que está todo mal, espera que lo resuelva por completo que está mal desde el principio.

Se me olvidó poner que a los puntos hay que sumar el vector unitario multiplicado por la distancia.

Sea s la distancia, llámala espacio si quieres para asociarla mejor con la letra

Sean (a, b) y (c, d) dos puntos seguidos del trazo.
El vector que los une es (c-a, d-b)
Los vectores perpendiculares son (b-d, c-a) y (d-b, a-c) que apuntan en sentido contrario
Los haremos unitarios dividiendo por el módulo que es
m = |(b-d, c-a)| = |(d-b, a-c)| = sqrt[(b-d)^2+(a-c)^2]

Y los haremos de longitud s multiplicando por s. De modo que los vectores unitarios de longitud s son.

(s(b-d)/m, s(c-a)/m) y (s(d-b)/m, s(a-c)/m)

Ahora basta con aplicar uno de los dos vectores unitarios a los puntos que
Tenemos, dependiendo de a que lado de la figura original va la nueva.
Así tendremos los puntos nuevos
(a+s(b-d)/m, b+s(c-a)/m) y (c+s(b-d)/m, d+s(c-a)/m)
o estos otros
(a-s(b-d)/m, b-s(c-a)/m) y (c-s(b-d)/m, d-s(c-a)/m)

Y en el ejemplo el fallo era doble, no solo porque faltaba s sino porque m era denominador y lo había puesto como numerador.

El ejemplo correcto es

Puedes usar las formulas que ya están resueltas
m = |(b-d, c-a)| = |(d-b, a-c)| = sqrt[(b-d)^2+(a-c)^2]
Y los puntos son
(a+s(b-d)/m, b+s(c-a)/m) y (c+s(b-d)/m, d+s(c-a)/m)
o estos otros
(a-s(b-d)/m, b-s(c-a)/m) y (c-s(b-d)/m, d-s(c-a)/m)
Tomas
a=5; b=7; c=8; d=10
m=sqrt[(7-10)^2+(5-8)^2] = sqrt(3^2+3^2) = sqrt(18) = sqrt(2·3·3) = 3sqrt(2)

Dado que la expresión es aparatosa seguiré usando m hasta el final
(5+4(7-10)/m, 7+4(8-5)/m) y (8+4(7-10)/m,10+4(8-5)/m)
(5-12/m,7+12/m) y (8-12/m, 10+12/m)

Se repite el sumando o restando 12/m todas las veces, lo calculamos
12/m = 12/[3sqrtr(2)] = 4/sqrt(2) =

racionalizando denominadores es

4sqrt(2) / [sqrt(2)sqrt(2)] = 4sqrt(2)/2 = 2sqrt(2)

Si el ejercicio es teórico debes poner 2sqrt(2) donde pone 12/mm, si es práctico vamos a calcularlo
12/m = 2sqrt(2) = 2 · 1.414213562 = 2.828427125

Y los puntos con algún redondeo para no escribir tanto son:

(2.171572875, 9.828427125) y (5.171572875, 12.828427125)

Si trazas la recta por el otro lado los puntos son:

(7.828427125, 4.171572875) y (10.828427125, 7.171572875)

Y eso es todo, y he comprobado que está bien. Mil disculpas por el fallo.

Añade tu respuesta

Haz clic para o