Sam Bryfczynski wrote:
> Hello,
> I like how compact the jvxl format is and would like to use it in my 
> own software.  However, I am having a bit of trouble wrapping my head 
> around how to uncompress it.  I've read over the JVXL file pdf which 
> describes the format but am left scratching my head a bit.  I am 
> mainly confused about what the surface voxel bitmap data is.  It says 
> you can use it to find the "critical edges" but I don't know how. 
>  When the document says "We simply list the number of voxels found 
> sequentially on each side: 115922 outside, 2 inside, 6333 outside, 4 
> inside…" what does "on each side" mean? The bottom line is I am trying 
> to just get the polygons needed to render the isosurface from the jvxl 
> data.  Ive been looking at the source code and the JvxlReader class 
> and trying to figure out how to best approach this.  Any suggestions?

A few months ago a JVXL interpreter written in Python was added to 
Sage.  From working with that, I think the general procedure might be 
explained as:

Split 3d space up into lots of regions (voxels).  Now traverse the edges 
of these voxels in a predetermined order.  You will cross your 
isosurface a number of times during this traversal.  Every time you 
cross your isosurface, you go from the "inside" to the "outside" or the 
"outside" to the "inside".  The JVXL format records how many steps you 
must take before crossing the isosurface.  So the numbers above mean 
that in your traversal of 3d space, you take 115922 steps, and then on 
the next step, you cross the isosurface.  You take two more steps in 
your traversal and you cross your isosurface again, etc.  Basically, 
since the traversal pattern is already known (specified in the format), 
just counting the number of steps until you cross the surface tells you 
approximately where a point on the surface is in 3d space.

I believe the Sage Python/Cython implementation is here: 
http://hg.sagemath.org/sage-main/file/285a89ed5dc7/sage/plot/plot3d/implicit_surface.pyx

Anyone, feel free to correct me if I'm saying something wrong!

Thanks,

Jason


------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Jmol-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to