Calculate volume from an isosurface
    6 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Rafael Kübler
 am 19 Dez. 2018
  
    
    
    
    
    Kommentiert: Jan
      
      
 am 19 Dez. 2018
            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?

Thank you for your help in advance.
1 Kommentar
Akzeptierte Antwort
  Bruno Luong
      
      
 am 19 Dez. 2018
        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
0 Kommentare
Weitere Antworten (1)
  madhan ravi
      
      
 am 19 Dez. 2018
        5 Kommentare
  madhan ravi
      
      
 am 19 Dez. 2018
				@Rafeal so maybe someone could help you then I thought the links could help you
  Jan
      
      
 am 19 Dez. 2018
				@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?
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




