![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/175535/image.png)
Plot Independent Planes in 3D Space
조회 수: 19 (최근 30일)
이전 댓글 표시
I am trying to plot independent planes in 3D space using one set of coordinates. For example:
clear all;
X = [0 1
0 1];
Y = [0 0
1 1];
Z = [1 1
1 1];
X1 = [0 1
0 1];
Y1 = [0 0
1 1];
Z1 = [0 0
0 0];
surf(vertcat(X, X1), vertcat(Y, Y1), vertcat(Z, Z1),'FaceColor','blue','edgecolor','none');
However, rather than producing separate planes, this produces a Z shape. Where am I going wrong, please?
Note that it must be possible to combine the coordinates into a single set so I can later use surf2stl. Therefore, I cannot just plot one using surf and then use hold on.
Thanks.
댓글 수: 0
답변 (1개)
Star Strider
2014년 9월 7일
편집: Star Strider
2014년 9월 7일
It seems vertcat is the problem. I plotted them separately here using hold (easier to write and debug if necessary), but you could combine them in one line if you want:
X = [0 1
0 1];
Y = [0 0
1 1];
Z = [1 1
1 1];
X1 = [0 1
0 1];
Y1 = [0 0
1 1];
Z1 = [0 0
0 0];
figure(1)
surf(X, Y, Z,'FaceColor','blue','edgecolor','none');
hold on
surf(X1, Y1, Z1,'FaceColor','red','edgecolor','none');
hold off
produces:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/175535/image.png)
댓글 수: 1
Star Strider
2014년 9월 7일
편집: Star Strider
2014년 9월 7일
The way I read the surf2stl documentation, it requires separate X, Y, and Z for each surface. A volume such as this would not be compatible with it.
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!