I have been trying to draw a steel space frame in MATLAB. I have the elementnodes and the nodecoordinates. The coding i have used is a follows:
nodeCoordinates=[0 0 0; 0 0 4; 4 0 4; 4 0 0; 0 5 0; 0 5 4; 4 5 4; 4 5 0; ];
elementnodes=elementNodes=[1 5;2 6;3 7; 4 8; 5 6; 6 7; 7 8; 8 5];
xx=nodeCoordinates(:,1);
yy=nodeCoordinates(:,2);
zz=nodeCoordinates(:,3);
plot3(xx,yy,zz,,'k--')
The code should have given a single storey space frame with 4 coulmns. But it gives some random straight lines. What am I doing wrong in the code

 Respuesta aceptada

Walter Roberson
Walter Roberson el 9 de Feb. de 2019

1 voto

use patch() with 'Faces' elementnodes and 'Vertices' NodeCoordinates

7 comentarios

Swagato Das
Swagato Das el 9 de Feb. de 2019
Thank You for the answer. The patch() gives a polygon. But my structure is a 3D space frame. The figure is given below. I need this figure using MATLAB. Thanks in advance.
Fig1.jpg
OMAR elayan
OMAR elayan el 17 de Abr. de 2019
please sir can you give me code for 3d-space frame
Using the vertices nodes from the original question:
nodeCoordinates=[0 0 0; 0 0 4; 4 0 4; 4 0 0; 0 5 0; 0 5 4; 4 5 4; 4 5 0; ];
elementNodes = [1 4 3 2; 5 8 7 6; 1 2 6 5; 3 4 8 7; 2 3 7 6; 1 5 8 4];
patch('Faces', elementNodes, 'Vertices', nodeCoordinates)
I took care to arrange all of the faces counter-clockwise to permit proper lighting.
Swagato Das
Swagato Das el 17 de Abr. de 2019
Thank You sir.
Priyanshu Rajak
Priyanshu Rajak el 25 de Nov. de 2020
will writing just this code work or i need to type something else too?
nodeCoordinates=[0 0 0; 0 0 4; 4 0 4; 4 0 0; 0 5 0; 0 5 4; 4 5 4; 4 5 0; ];
elementNodes = [1 4 3 2; 5 8 7 6; 1 2 6 5; 3 4 8 7; 2 3 7 6; 1 5 8 4];
patch('Faces', elementNodes, 'Vertices', nodeCoordinates, 'Facecolor', 'none'); view(3)
Priyanshu Rajak
Priyanshu Rajak el 26 de Nov. de 2020
Thank you Sir.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 9 de Feb. de 2019

Comentada:

el 26 de Nov. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by