W. Mathematica-- Gráficos--Hacer esferas
Frecuentes
Visto 216 veces
0
Quiero escribir un programa en Wolfram Mathematica Tenemos dos listas:
list1 = {Sphere[{x1}],Sphere[{x2}],Sphere[{x3}],Sphere[{x4}],Sphere[{x5}]}
list2 = {Sphere[{y1}],Sphere[{y2}],Sphere[{y3}],Sphere[{y4}],Sphere[{y5}]}
Y necesito "dibujar" enlaces entre ellos mediante cilindros, por lo que debemos tener
list3={Cylinder[{x1,y1}],Cylinder[{x2,y2}],Cylinder[{x3,y3}],Cylinder[{x4,y4}],Cylinder[{x5,y5}]}
¿Cómo puedo hacer esto automáticamente, usando listas: list1 y list2 de este tipo?
2 Respuestas
2
Hay un buen ejemplo en la documentación para GráficoPlot3D que parece que hace lo que quieres hacer, aunque no del todo en la forma en que estás abordando el problema.
contestado el 22 de mayo de 12 a las 15:05
1
No especificas cuáles son los radios de los cilindros, estoy usando los relativos a la primera lista.
centers1 = {{1, 1, 1}, {2, 2, 2}, {3, 3, 3}};
radii1 = {0.2, 0.3, 0.4};
centers2 = {{1, -1, 1}, {2, -2, 2}, {3, -3, 3}};
radii2 = {0.3, 0.3, 0.3};
list1 = Sphere[Sequence @@ #] & /@ Transpose[{centers1, radii1};
list2 = Sphere[Sequence @@ #] & /@ Transpose[{centers2, radii2}];
Show[Graphics3D[{list1, list2, Cylinder[Sequence @@ #] & /@ Transpose[{Transpose[{centers1, centers2}], radii1}]}]]
contestado el 22 de mayo de 12 a las 15:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas graphics 3d wolfram-mathematica or haz tu propia pregunta.
Por cierto, si tiene más preguntas sobre Mathematica, puede preguntarles en el sitio StackExchange dedicado para Mathematica. - Verbeia