2 votos

Cómo crear líneas paralelas de desplazamiento en el espacio 3D

Estoy trabajando con un $~3$ D en python. Quiero dibujar líneas (que se convertirán en tubos) entre $~3$ Puntos D. Tengo una función que dado dos $~3$ Puntos D $~(P1(X,Y,Z), ~~P2(X,Y,Z))~$ dibuja una línea entre ellos y se convierte en un tubo.

Sin embargo, en algunos casos necesito convertir la línea en dos líneas paralelas desplazadas con poca distancia entre ellas. Por lo tanto, tengo que calcular los nuevos puntos para las dos líneas $~(P1',P1'', P2' and P2'')~$ .

La siguiente imagen resume el punto de partida y el resultado deseado:

enter image description here

1voto

Andrei Puntos 111

Si quieres que los nuevos tubos estén en un plano determinado, yo enfocaría el problema de la siguiente manera:

  • Hay que describir el plano. La forma más fácil es utilizar 3 puntos, $P_1$ , $P_2$ y un adicional $P_3$ no en el $P_1P_2$ línea.
  • El siguiente paso es encontrar un vector en el plano, perpendicular a $P_2-P_1$ . Puedes escribirlo utilizando el producto punto: $$\begin{align}\vec a&=P_2-P_1\\\vec b&=P_3-P_1\\\vec b_{||}&=\vec a(\vec b\cdot\vec a)/|\vec a|^2\\\vec b_\perp&=\vec b-\vec b_\perp\\\hat b_\perp&=\vec b_\perp/|\vec b_\perp|\end{align}$$
  • Si la distancia entre los nuevos tubos es $d$ escriba las nuevas posiciones de los extremos de los tubos como $$P_{1,2}^{',''}=P_{1,2}\pm\frac d2 \hat b_\perp$$

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