Creating an array of vectors

5 visualizaciones (últimos 30 días)
B Rogers
B Rogers el 1 de Jul. de 2018
Comentada: B Rogers el 1 de Jul. de 2018
Hello everyone. I have a list of 3d vectors representing positions in space and need to generate an array (A) with the following form.
In 2d: X=[X0 X1 X2 ... Xn] Y=[Y0 Y1 Y2 ... Yn]
A=[X0 Y0; X0 Y1; X0 Y2; X1 Y0; X1 Y1; X1 Y2; X2 Y0; X2 Y1; X2 Y2; ... ; Xn Yn]
As mentioned, I'll actually need it in 3d. I provided the 2d example for simplicity.
Thank you for your help!!
  2 comentarios
Walter Roberson
Walter Roberson el 1 de Jul. de 2018
Is every X to be used with every Y, or is it only adjacent coordinates? Like *2 linked to *1, *2, *3 but not *0 ?
B Rogers
B Rogers el 1 de Jul. de 2018
Every X is paired with every Y.

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 1 de Jul. de 2018
For the case of every point linked to every other point:
[T1, T2, T3] = ndgrid(X, Y, Z);
A = [T1(:), T2(:), T3(:)];
  1 comentario
B Rogers
B Rogers el 1 de Jul. de 2018
I knew there must be a way easier than how I was trying to do it. This works perfectly. Thank You Walter.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by