• Viernes 8 de Noviembre de 2024, 17:12

Autor Tema:  Re: Algoritmo para calcular rectas paralelas  (Leído 3070 veces)

amoruno

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Algoritmo para calcular rectas paralelas
« en: Jueves 25 de Septiembre de 2003, 08:22 »
0
Hola a tod@s, necesito un algoritmo que, a partir de una recta dada, me cálcule los puntos de la recta paralela.

Es decir, yo tengo los puntos de una recta (x1,y1,x2,y2) y necesito saber los puntos de la recta paralela a la recta dada.

He estado investigando sobre el algoritmo de Bresenham, pero no siy capaz de averiguar como se hace.

Muchas Gracias.

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Algoritmo para calcular rectas paralelas
« Respuesta #1 en: Jueves 25 de Septiembre de 2003, 09:31 »
0
Hola amoruno.

En primer lugar debes hayar la pendiente de la recta:

llamando a la pendiente m
Si x2 - x1 <> 0: m = (y2 - y1) / (x2 - x1)
Si x2 - x1 = 0: m = 1

A continuación usando la ecuación explícita de la recta Y = m · X + B puedes conocer el valor para X o Y para una recta paralela (tiene la misma pendiente que la otra) que pasa por x1', y1'  según un valor u otro.

Por ejemplo, para la recta r1 =  (2,2)-(15,10) de pendiente

m =  (10 - 2) / (2 - 15)  = - 8/13

queremos hayar la coordenada en el eje X para la recta r' que pasa por el punto (3,4) y tiene pendiente m (r || r'), cuando Y = 10.
 
    B = -m * x1 + y1   :   X = (Y - B) / m

    B = 8/13 * 3 + 4
    X = (10 - B) / -8/13

De la misma forma si quisieramos conocer el valor de Y sabiendo el de X, tan sólo habría que despejar Y y sustituir X.

Espero no haberme equivocado y que este ejemplo te sirva.

Ánimo y suerte.

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Algoritmo para calcular rectas paralelas
« Respuesta #2 en: Jueves 25 de Septiembre de 2003, 16:17 »
0
Disculpas, creo que en el ejemplo anterior me equivoqué, la pendiente del ejemplo no es negativa:

Por ejemplo, para la recta r1 = (2,2)-(15,10) de pendiente

m = (10 - 2) / (2 - 15) = 8/13

queremos hayar la coordenada en el eje X para la recta r' que pasa por el punto (3,4) y tiene pendiente m (r || r'), cuando Y = 10.

B = -m * x1 + y1 : X = (Y - B) / m

B = -8/13 * 3 + 4
X = (10 - B) / 8/13

Total, que conociendo 2 puntos de una recta y un punto de una paralela, con un bucle que recorra coordenadas en el eje X, puedes conocer las coordenadas correspondientes al eje Y (o viceversa).

Ahora sí. Abur.