5 votos

Crear línea paralela y encontrar la intersección con la otra línea

Estoy tratando de crear líneas paralelas de la negrita, las líneas negras en esta imagen:

enter image description here

Es sólo un arbitrario (convexo) cuadrilátero, con la esquina azul puntos conocidos. La negrita, las líneas negras de inicio en el 25% de cada línea azul y final al 75%. Así, decir $\lambda_1 = 0.25$$\lambda_2 = 0.75$, luego

$$\begin{align} Start = \lambda_1 \cdot c_2 + (1-\lambda_1) \cdot c_1 \\ End = \lambda_2 \cdot c_2 + (1-\lambda_2) \cdot c_1 \end{align}$$

Donde $c_1$ $c_2$ son los dos puntos de una línea azul.

Ahora mi pregunta. 1.) Cómo crear una línea paralela a una audaz línea negra? Debe tener la misma longitud, y ser guiados a lo largo de la línea verde discontinua hacia el centro de gravedad. Si no me equivoco, el centroide es el punto de intersección de las dos bimedians (discontinua líneas verdes). Ya que es un cuadrilátero, este debe ser el mismo que el valor de la media de los 4 puntos en las esquinas. Por lo tanto, el centro de gravedad es conocido como bueno.

2.) Ok, así que decir que yo tengo el de líneas paralelas. Luego me muevo todos ellos hacia el centro de gravedad, hasta que sus extremos tacto, la creación de una versión reducida de este cuadrilátero. Hay una manera de obtener las coordenadas de estos 4 nuevos puntos de esquina en general?

Por cierto, hice una búsqueda y me encontré con este tema, pero no es guiado a lo largo de la línea perpendicular, y mis líneas de puntos verdes no son perpendiculares a las de color negro/azul.

Edit: La ecuación de una línea verde discontinua desde el centro de la línea azul hacia el centro de gravedad sería

$$\begin{align} \lambda \cdot C + (1 - \lambda) \cdot \left( \frac{c_1+c_2}{2} \right) \end{align}$$

Donde $C$ es el centro de gravedad. La ecuación de una bimedian sería

$$\begin{align} \gamma \cdot \left( \frac{c_3+c_4}{2} \right) + (1 - \gamma) \cdot \left( \frac{c_1+c_2}{2} \right) \end{align}$$

Así que de alguna manera, el $Start$ $End$ puntos debe ser movido en la dirección de una de estas líneas arriba, con el fin de crear una $NewStart$ $NewEnd$ punto. Entonces la ecuación de la línea paralela sería simplemente

$$\begin{align} \eta \cdot NewEnd + (1-\eta) \cdot NewStart \end{align}$$

Una vez que el 4 de expresiones para las líneas paralelas son conocidos, la intersección puede ser calculado, esperemos que resulta en un relativamente fáciles de expresión para los 4 nuevos puntos de esquina.

1voto

UstonL Puntos 16

Ok, forma fácil de solucionar este problema es como sigue:

  1. Representan las líneas como dos puntos de $(x_1,y_1,z_1), (x_2,y_2,z_2)$
  2. Les obligan a estar en el mismo plano, y convertir a $(x,y,z) : R \times R \times R$ $(x,y) : R \times R$para obtener las coordenadas planas; una proyección desde el espacio 3d en un plano 2d es una buena opción para este
  3. intersección entre líneas sólo funciona en el plano 2d. (compruebe el algoritmo de wikipedia bajo la línea de la línea de intersección)
  4. entonces termina con 4 2d puntos, y la necesidad de volver a convertirlos en 3d.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X