He pasado tantas horas en esto que puedo sentir que mi cordura se desliza lentamente. Por lo tanto, cualquier ayuda sería realmente apreciada. Trataré de ser lo más breve posible.Cómo calcular (x, y) para una longitud de arco fija lejos de un punto en una circunferencia
Tengo un círculo en un plano 2D. Sé las coordenadas cartesianas para su punto central (C) y el radio (R).
Mi confusión proviene de este problema. Cuando se le proporciona un punto en el plano fuera del círculo; Puedo calcular el punto (P) en la circunferencia del círculo más cercano a ese punto.
Lo que quiero hacer es determinar las coordenadas (x, y) de 2 puntos en la circunferencia. Vamos a llamarlos P1 y P2. P1 y P2 son dos extremos de un arco. El arco es de una longitud fija (X). P es el punto medio entre P1 y P2. Como tal, la longitud del arco de P a P1 & P a P2 son ambos X/2.
En resumen: dado C, R, P, X; Necesito calcular P1 y P2.
Estoy tratando de codificar esto en C++, pero cualquier sugerencia o pseudocódigo sería genial.
EDIT: X es una longitud de arco, no una línea recta entre P1 y P2
¿Qué tal algunos de los ejemplos de los siguientes: http://www.codeproject.com/KB/recipes/Wykobi.aspx Son muy eficientes y algo elegantes, busque "Punto más cercano en el círculo de puntos externos" y "Segmentos de línea tangente del círculo" –