Tengo un punto 3d P y un segmento de línea definido por A y B (A es el punto de inicio del segmento de línea, B el final).Encontrar la distancia desde un punto 3d a un segmento de línea
Quiero calcular la distancia más corta entre P y la línea AB.
Cálculo de la distancia de un punto a una línea infinita fue fácil ya que era una solución en Wolfram Mathworld, y lo he implementado, pero tengo que hacer esto para una línea de longitud finita.
No he podido encontrar una solución confiable para esto en 3d después de mucho mirar alrededor.
He implementado algoritmos para calcular el producto punto, el producto cruzado, la magnitud, etc. en C++ con una estructura que contiene flotantes x, y y z.
Pseudo código, enlaces o código en casi cualquier idioma para esto sería genial.
Aquí tienes una solución en Mathematica para 3D (o 2D) http://stackoverflow.com/questions/849211/shortest-distance-between-a-point-and-a-line-segment/4165840#4165840 –
Déjame darte la bienvenida a StackOverflow y recuerde tres cosas que solemos hacer aquí: 1) A medida que reciba ayuda, trate de darle también ** respondiendo preguntas ** en su área de experiencia 2) ['Lea las preguntas frecuentes'] (http://tinyurl.com/2vycnvr) 3) Cuando vea buenas preguntas y respuestas, vote por ellas ['usando los triángulos grises'] (http://i.imgur.com/kygEP.png), ya que la credibilidad del sistema se basa en la reputación que tiene los usuarios ganan compartiendo sus conocimientos. También recuerde aceptar la respuesta que mejor resuelva su problema, en caso de haberlo, ['presionando el signo de la marca de verificación '] (http://i.imgur.com/uqJeW.png) –