SCIRun User Mailing List

Text archives Help


Re: [SCIRUN-USERS] Calculating the overlap volume of two TetVolMeshes


Chronological Thread 
  • From: Layla Houshmand <layla.houshmand@gmail.com>
  • To: Jess Tate <jess@sci.utah.edu>
  • Cc: scirun-users@sci.utah.edu
  • Subject: Re: [SCIRUN-USERS] Calculating the overlap volume of two TetVolMeshes
  • Date: Thu, 25 Sep 2014 00:28:12 -0400

Thanks Jess! I've been using volume and not surface meshes, so I'll give 'elements' a shot. If that doesn't work, I'll try those other options, or maybe just export to MATLAB.

Take care,
Layla

On Wed, Sep 24, 2014 at 6:49 PM, Jess Tate <jess@sci.utah.edu> wrote:
Hi Layla,

Clipping a mesh can be a bit of a tricky thing.  The problem with clipping vs another mesh is that of sampling.  The discretization of the two meshes is different so the clipping will not line up, and in this case it underestimated the volume.  You can try different options in the ClipFieldToFieldOrWidget (element center or one node) to see if that gives you a better estimate.  It is generally easier to clip elements than nodes from a mesh.  Also, based on your desired parameter, switching the inputs would likely yield more accurate results.  One more thing, make sure that you are using the GetFieldInfo on volumes, and not surfaces, as the geometric size value from surface meshes is the surface area, not the volume.  It seems strange that the pink volume is reporting as 60 % of the red one when they look much closer in size.

If you want to try some different ways, you could map data from one to the other (pink onto red) and then clip the mesh by the data using ClipMeshByFunction.  You can then have more control of the mapping and thus what gets clipped out.

If you want to be even more precise you can use the CalculateSignedDistanceToField and extract the isosurface (ExtractIsosurface) and generate a volume using InterfaceWithTetgen.


cheers,
Jess



On Sep 24, 2014, at 4:00 PM, Layla Houshmand wrote:

> Hi Everyone,
>
> I'm having difficulty calculating the volume overlap between two TetVolMeshes in SCIRun4.7. A screenshot of my intersection calculation method is attached, along with examples of some volume overlaps.
>
> What I'm finding is that SCIRun underestimates the overlap volume when using ClipFieldtoFieldorWidget (see attached for what I do in the UI). The attached pictures show a red TetVol that lies entirely within a pink TetVol (I rotated the image to be sure of that). However, the overlap volume (peach) is clearly too small. Using ReportFieldInfo, the Red TetVol has a volume of 57 mm^3, but the peach overlap volume has a volume of 35 mm^3, when it should be 57 mm^3.
>
> Any ideas on what to do? Is there a better method for this? I'm ultimately trying to calculate the % of the Red TetVol that lies within the Pink TetVol.
>
> Thanks!
> Layla
>
> --
> Layla Houshmand, Ph.D. Candidate
> Department of Biomedical Engineering, University of Michigan
> <Peach is the intersection of Red and Pink TetVols.png><Red TetVol in Pink TetVol.png><Red TetVol only.png><ClipFieldtoFieldorWidget.png>




--
Layla Houshmand, Ph.D. Candidate
Department of Biomedical Engineering, University of Michigan



Archive powered by MHonArc 2.6.18.

Top of page