help on matlab isosurface (3D object projects to 2 D plane)

5 vues (au cours des 30 derniers jours)
SL
SL le 21 Jan 2014
Réponse apportée : Gökalp le 30 Juin 2015
Hi, I would like to ask for a projection issue in isosurface command.
More precisely, I hope to project a 3D object to the 2D plane, which can be found in the following figure.
I have made a short code to produce a simple geometric object. Hope someone could help me to visualize the object as the figure do. Thanks!
%------------------------------------
% mesh:
xx=1:20;
yy=1:20;
zz=1:20;
[X,Y,Z] = meshgrid(xx,yy,zz);
%init the test volume data test
test = zeros(size(X));
%small cube at lower
test(5:8,5:8,5:7)=50;
%large cube at higher
test(7:11,7:11,8:11)=60;
%isosurface
p= patch(isosurface(X,Y,Z,test,1));
isonormals(X,Y,Z,test,p)
set(p,'FaceColor','red','EdgeColor','none');
daspect([1 1 1])
view(3); axis([1,20,1,20,1,20])
camlight
lighting gouraud
grid on
%-------------------------------------------

Réponses (2)

Sampath
Sampath le 11 Fév 2014
When we run this code, we don't get the results shown above!!
  2 commentaires
Walter Roberson
Walter Roberson le 11 Fév 2014
The sample code does not attempt to work with the teapot. It works with some artificial data which is two cubes stuck together.
SL
SL le 11 Fév 2014
Thanks a lot for the remarks.
Actually the figure here is featured from one research article and we want to have the same shadow as it has.
The code here only allows to generate a simple object in 3D but I do not know how to tune "isosurface" command to obtain the shadow in 2D plane. Please kindly help me if you know how, thanks!

Connectez-vous pour commenter.


Gökalp
Gökalp le 30 Juin 2015
Hi
did you find any proper solution to obtain projection over 2d plane?

Community Treasure Hunt

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

Start Hunting!

Translated by