Autor Tema: Calcular coordenadas de un punto situado a una distancia específica del origen

0 Usuarios y 1 Visitante están viendo este tema.

09 Abril, 2014, 10:43 pm
Leído 4216 veces

homenet

  • $$\Large \color{#6a84c0}\pi$$
  • Mensajes: 4
  • Karma: +0/-0
  • Sexo: Masculino
Saludos a todos los miembros del foro en mi primer mensaje.

Llevo días buscando por internet la manera de obtener las coordenadas de un punto que perteneciendo a la recta AB, se sitúe a una distancia preestablecida del punto de origen. Conozco las coordenadas de ambos extremos de la recta (punto A y punto B), se cómo calcular la distancia entre ambos pero, ¿Cómo hallo las coordenadas X,Y del punto intermedio que se sitúe, por ejemplo, a 100 metros de A?

Gracias

09 Abril, 2014, 11:22 pm
Respuesta #1

Trapezoide

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 316
  • Karma: +1/-0
  • Sexo: Masculino
Hola homenet,

Bienvenido al foro.

Recuerda leer y seguir las reglas del mismo así como el tutorial del \( \LaTeX \) para escribir las fórmulas matemáticas correctamente.

Llevo días buscando por internet la manera de obtener las coordenadas de un punto que perteneciendo a la recta AB, se sitúe a una distancia preestablecida del punto de origen.

La manera de hacerlo es tomando una esfera de radio la distancia a la que quieres que el punto se encuentre de la recta y haciendo la intersección entre ambas.

Si tienes la recta dada por el corte de dos planos: \( \begin{Bmatrix}x+y+z=0 \\ z-3=0\end{matrix} \)

Y la esfera de ecuación \( x^2+y^2+z^2=d^2 \), siendo \( d \) conocida, te quedaría:

\( \begin{Bmatrix}x+y+z=0 \\ z-3=0\\x^2+y^2+z^2=d^2\end{matrix} \)

Las soluciones de este sistema pueden ser dos puntos si la recta corta a la esfera, un punto si la recta es tangente a la esfera o nada si no se da ninguno de los dos casos anteriores.

Conozco las coordenadas de ambos extremos de la recta (punto A y punto B), se cómo calcular la distancia entre ambos pero, ¿Cómo hallo las coordenadas X,Y del punto intermedio que se sitúe, por ejemplo, a 100 metros de A?

¿Para qué necesitas calcular la distancia entre ambos?
Si lo que quieres es calcular las coordenadas de los puntos que se encuentren a una determinada distancia \( d \) de \( A \) y que a su vez estén contenidos en la recta dada por \( A \) y por \( B \), tendrías que hacer algo parecido a lo anterior:

Sean \( (a_x,a_y,a_z) \) las coordenadas del punto \( A \):

Los puntos que buscas se encuentran en una esfera con centro en \( A \) y radio \( d \) y que verifican la ecuación de la recta, es decir, los puntos de la intersección entre ambos conjuntos:

\( \begin{Bmatrix}x+y+z=0 \\ z-3=0\\(x-a_x)^2+(y-a_y)^2+(z-a_z)^2=d^2\end{matrix}
 \)

Las soluciones de este sistema (suponiendo que \( d>0 \)) son dos puntos, siempre.

No he escrito las rectas con una ecuación genérica porque me parece que se ve más claro con un ejemplo algo más concreto.

Saludos

09 Abril, 2014, 11:28 pm
Respuesta #2

aladan

  • Lathi
  • Mensajes: 12,176
  • País: es
  • Karma: +0/-0
  • Sexo: Masculino
Hola

Bienvenido al foro.

Hay muchas formas de resolver tu problema, una de ellas:

Tienes datos para conocer la ecuación de la recta que pasa por A y B, será de la forma

                            \( ax+by+c=0 \)

identifícala y a continuación calcula su intersección con la circunferencia

                                     \( (x-x_a)^2+(y-y_a)^2=100^2 \)

Saludos

P. D.- He presupuesto que en el enunciado se está hablando de una recta en el plano.


                                  
Siempre a vuestra disposición

09 Abril, 2014, 11:41 pm
Respuesta #3

Trapezoide

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 316
  • Karma: +1/-0
  • Sexo: Masculino
¡Ah! Supongo que lo que homenet quería era la explicación para \( \mathbb{R}^2 \).

Un ejercicio parecido es éste.

Saludos a ambos.

09 Abril, 2014, 11:56 pm
Respuesta #4

homenet

  • $$\Large \color{#6a84c0}\pi$$
  • Mensajes: 4
  • Karma: +0/-0
  • Sexo: Masculino
Gracias a ambos por vuestras rápidas respuestas. Sin embargo, leo vuestras respuestas y me avergüenzo de mi ignorancia matemática. He seguido un camino de letras y he perdido la práctica matemática, salvo para las cuestiones cotidianas.

El motivo de la duda se origina en el trabajo con cartografía que realizo diariamente y en la búsqueda de una fórmula que me permita cortar sucesivamente líneas en base a una distancia fija con un pequeño programa/herramienta. Por ejemplo: cortar las líneas de las carreteras (que normalmente suman grandes distancias) desde su origen hasta su final cada 'x' metros.

Para mi es más sencillo entenderlo con ejercicios concretos, puesto que no tengo muy desarrollada la capacidad de abstracción matemática. Pongo algunos valores para el ejemplo, con la intención de que podáis desarrollarme un cálculo:

Punto A (origen):
x=0
y=0

Punto B:
x=200
y=200

Distancia de corte: 50

Muchas gracias.


10 Abril, 2014, 12:03 am
Respuesta #5

soneu

  • $$\Large \color{#c88359}\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 801
  • Karma: +1/-0
  • Sexo: Masculino
Hola,

te propongo la siguiente forma de hacerlo. Calculas el vector que une los puntos: \( \vec{AB}=(200,200)-(0,0)=(200-0,200-0)=(200,200). \) Calculas su módulo (es decir, la distancia entre los dos puntos): \( |\vec{AB}|=\sqrt{200^2+200^2}. \) Entonces, el punto que buscas es

\( \displaystyle \frac{50}{\sqrt{200^2+200^2}}(200,200) \)

Lo anterior es válido para cualquier par de puntos, haciendo las sustituciones obvias.

Un saludo

10 Abril, 2014, 12:18 am
Respuesta #6

elcristo

  • $$\Large \color{#5b61b3}\pi\,\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 1,201
  • País: es
  • Karma: +1/-0
  • Sexo: Masculino
Hola.

Hay muchas formas de ver el problema que buscas. La que te acaba de comentar soneu es bastante cómoda.

Otra que puedes aplicar aquí es la de las circunferencias contado antes.

Y otra más, esta ya para algo tan fácil es mucho, es utilizar integrales y sabiendo la longitud a la que quieres los cortes, utilizar la fórmula:

\( d = \displaystyle\int_{a}^{b}\sqrt[ ]{1+f'(x)^2)}dx \)

Donde \( a \) es la coordenada x del primer punto, \( b \) será la coordenada x del punto del cual quieres hallar el corte, y luego haciendo \( (b,f(b)) \) obtendrías las coordenadas del punto a la cual hacer el corte.

Claro, para esto necesitas la ecuación de la carretera y su derivada, que no tienen por qué ser fáciles, y luego integrar, que esa es otra historia. Aunque esto te serviría para cosas que no son rectas.

En tu caso concreto, tendríamos:
\( f(x) = x, \ \ f'(x)=1 \)
La recta que pasa por el \( (0,0) \) y por el \( (200,200) \) es esa.
\( d=50 \), que es a la distancia que queremos hacer el corte.
\( a=0 \), porque el punto en el cual empezamos es \( A=(0,0) \)

\( 50 = \displaystyle\int_{0}^{b}\sqrt[ ]{1+1^2}dx = \displaystyle\int_{0}^{b}\sqrt[ ]{2}dx = \sqrt[ ]{2}x|_0^b\Longrightarrow{}

50 = \sqrt[ ]{2}b\Longrightarrow{}b = \displaystyle\frac{50}{\sqrt[ ]{2}} \approx{} 35'35 \)

Luego el punto de corte que buscamos sería el \( (35'35,35'35) \) que si hacemos las cuentas, es el mismo que puso soneu.

Saludos.

10 Abril, 2014, 09:51 am
Respuesta #7

Luis Fuentes

  • el_manco
  • Administrador
  • Mensajes: 58,907
  • País: es
  • Karma: +0/-0
Hola

 Por dejar la cosa cerrada te escribo la generalización del método de Soneu.

 Si \( A=(x_0,y_0) \) y \( B=(x_1,y_1) \) un punto a distancia \( d \) de \( A \) en la dirección de \( \vec{AB} \) se obtiene como:

\(  (x_0,y_0)+\dfrac{d}{\sqrt{(x_1-x_0)^2+(y_1-y_0)^2}}(x_1-x_0,y_1-y_0) \)

Saludos.

10 Abril, 2014, 12:31 pm
Respuesta #8

homenet

  • $$\Large \color{#6a84c0}\pi$$
  • Mensajes: 4
  • Karma: +0/-0
  • Sexo: Masculino
Buenos días,

Aprecio mucho vuestra ayuda desinteresada, sin embargo los resultados que obtengo con vuestras fórmulas no concuerdan con los del programa informático de cartografía que utilizo.

Con los puntos anteriores dados: p1(0,0) y p2(200,200) forman un segmento de 282,842712 metros de longitud.

Si realizo la orden de cortar el segmento a los 100 m de distancia del origen, el resultado forma una línea con los siguientes puntos: p1(0,0) p2(70,711, 70,711) con una longitud final de 100,000031 metros.

¿A qué puede deberse esa diferencia?

Gracias

10 Abril, 2014, 12:45 pm
Respuesta #9

Luis Fuentes

  • el_manco
  • Administrador
  • Mensajes: 58,907
  • País: es
  • Karma: +0/-0
Hola

Con los puntos anteriores dados: p1(0,0) y p2(200,200) forman un segmento de 282,842712 metros de longitud.

Si realizo la orden de cortar el segmento a los 100 m de distancia del origen, el resultado forma una línea con los siguientes puntos: p1(0,0) p2(70,711, 70,711) con una longitud final de 100,000031 metros.

¿A qué puede deberse esa diferencia?

¿Te refieres a por qué te han salido en tus cálculos una longitud de \( 100.000031 \) metros y no de \( 100 \)?.

Eso es por los errores de redondeo al arpoximar las raíces. Con los datos que expones el resultado exacto para el punto obtenido es:

\( (50\sqrt{2},50\sqrt{2}) \)

Ahora si quieres escribirlo en notación decimal todo depende de con cuantos decimales aproximes la raíz (cuantos más tomes menor será el error). Por ejemplo si tomas 20 dígitos de precisión te quedaría:

\( (70.710678118654752440,70.710678118654752440) \)

Tu has tomado cinco dígitos de precisión:

\( (70.711,70.711) \)

Saludos.

P.D. De todas formas no sé cual es el objetivo final de estos cálculos; pero incluso con tu aproximación, ¿realmente es relevante un error de tres centésimas de milímetro cuando estamos midiendo 100 metros?. Díficil será encontrar un aparato de medición que alcance tal precisión.