Calculate volume from an isosurface

조회 수: 10 (최근 30일)
Rafael Kübler
Rafael Kübler 2018년 12월 19일
댓글: Jan 2018년 12월 19일
Hello,
i have a isosurface like in the picture below generated by the commands isosurface and patch.
How can I calculate the volume enclosed by this surface and the coordinate planes?
Unbenannt.PNG
Thank you for your help in advance.
  댓글 수: 1
Jan
Jan 2018년 12월 19일
This seems to imply, that the surface is closed.

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

채택된 답변

Bruno Luong
Bruno Luong 2018년 12월 19일
If your iso surface is get from isosurface() command then your volume is set of voxels
V <= isovalue
or
V >= isovalue
So the volume is approximatively
V = sum(V <= isovalue) * dV % change test sign accordingly
with, for uniform grid
dV = dX*dY*dZ
or
V = sum((V <= isovalue).*dX*dY*dZ)
otherwise

추가 답변 (1개)

madhan ravi
madhan ravi 2018년 12월 19일
  댓글 수: 5
madhan ravi
madhan ravi 2018년 12월 19일
@Rafeal so maybe someone could help you then I thought the links could help you
Jan
Jan 2018년 12월 19일
@Rafael: What eactly does "as displayed" mean. Please do not let us guess, what you want. Somebody has to write down (preferably in code) how your volume is limited. Currently I only see two green surfaces and the 3 white planes of teh axes object. But this is not a closed volume. If you mean 6 planes at specific x, y and z positions, please explain this explicitly.
The shown 2 surfaces split the box created by the planes at x=200:-200, y=55.3:263.4, z=-68:100 into 3 different volumes. How to you choose the interested one uniquely?

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

카테고리

Help CenterFile Exchange에서 Scalar Volume Data에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by