Thanks for the help! Sorry I had not posted in the right mailing list. So in order to read a jvxl file you need to perform the marching cubes algorithm? I thought it was just for the creation of the file. In that case, I am going to try and create a command line program that uses your code and takes a jvxl filename as input and then writes polygon data as output. So, I guess my hang up now is what is the main function that is called to open a jvxl file? I am looking at JvxlReader and its inherited classes VolumeFileReader, SurfaceFileReader, etc and trying to figure out what needs to be called to reach the final MeshData where I believe the vertices and polygon indices are found. Is it just a matter of initialized a JvxlReader and letting the constructor keep calling super() constructors until the process finishes or do I need to call something else after the JvxlReader has been initialized?