# How to generating surface without plotting?

조회 수: 17 (최근 30일)
Daniel Chou 2020년 12월 30일
댓글: Daniel Chou 2020년 12월 30일
I wonder if it's possible to create a surface by ''surf'' without plotting?
That means, I only want the surface data, but I don't want the figure.
Anyone has idea?
Thanks a lot and happy new year :)
##### 댓글 수: 2없음 표시없음 숨기기
Ameer Hamza 2020년 12월 30일
Can you explain what surface data are you referring to?
Daniel Chou 2020년 12월 30일
편집: Daniel Chou 2020년 12월 30일
Sure!
For instance,
I would like to generate a surface of ellipsoid by
[x, y, z] = ellipsoid(3,3,5,1,0.5,0.5)
s=surf(x,y,z)
direction = [rand() rand() rand()];
rotate(s,direction,rand()*360)
Then use this surface to do further things
The plot of ellipsoid will be generated when I use ''surf'' command.
I just wanna know if it's possible to purely generate surface by surf without plotting it!
Thanks a lot!

댓글을 달려면 로그인하십시오.

### 채택된 답변

Ameer Hamza 2020년 12월 30일
Since it is a graphical object, you cannot create it without plotting somewhere. However, you can make the figure invisible so that it does not appear on screen
[x, y, z] = ellipsoid(3,3,5,1,0.5,0.5)
f = figure('Visible', 'off');
ax = axes(f);
s = surf(ax,x,y,z)
direction = [rand() rand() rand()];
rotate(s,direction,rand()*360)
##### 댓글 수: 1이전 댓글 -1개 표시이전 댓글 -1개 숨기기
Daniel Chou 2020년 12월 30일
I'll try this later.
Happy new year as well :)
Sincerely
Daniel

댓글을 달려면 로그인하십시오.

### 추가 답변 (1개)

Cris LaPierre 2020년 12월 30일
If I look at the first example on the surf documentation page, it first creates X, Y and Z, then uses surf to plot/create the surface. So is what you want X,Y and Z?
% Example modified to create surface data but not the surface
[X,Y] = meshgrid(1:0.5:10,1:20);
Z = sin(X) + cos(Y);
% surf(X,Y,Z)
##### 댓글 수: 1이전 댓글 -1개 표시이전 댓글 -1개 숨기기
Daniel Chou 2020년 12월 30일
Thanks for response
Actually I'm currently design a code to generate the ellipsoid inclusions in given space.
I try the build-in function of AlphaShape to detect overlapping, if the current ellipsoids are too close to each other, the current ellipsoid will be replaced by a new ellipsoid.
However, since I use the ''surf'' function to convert the ellipsoid [x,y,z] in to surface, the plot (from surf command) will be retained.
The output figure will look like a disaster.
Sincerely and happy new year!
Daniel

댓글을 달려면 로그인하십시오.

### 카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

### Community Treasure Hunt

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

Start Hunting!

Translated by