3B_file_format_specification-changed1.doc 35K
325 downloadsSample console Visual Studion 2008 project to read 3B files:
VoxelReader.zip 6.75K
191 downloadsThis picture explans internal format of cells in 3D-Coat
Posted 29 July 2009 - 12:44 PM
3B_file_format_specification-changed1.doc 35K
325 downloads
VoxelReader.zip 6.75K
191 downloadsPosted 24 May 2010 - 12:27 PM
Posted 30 November 2010 - 02:58 AM
Posted 30 November 2010 - 07:39 AM
It is up to date, but only voxels are described there.I assume you got your answer. Looks like a binary file format specification to me.
I might even try to write a read/write/parser for it. Looks detailed enough spec.
Certainly won't look nice in a text editor.
How uptodate is this document ??? Anyone ???
Posted 06 January 2011 - 11:44 PM
It is up to date, but only voxels are described there.
Posted 07 January 2011 - 01:38 AM
Posted 09 January 2011 - 04:20 PM
Hi!
I apologize for posting again without waiting for an answer, but I'm pretty confused with this binary format...
I'm trying several combinations, and trying to reverse-engineer from files, but from the point:
DWORD Number of voxel cells. Every cell is a volume 8x8x8 that contains WORDS (16 bits). 0 means that cell is empty, 65535 filled, 32767.5 position of the surface.
...it's described in an ambiguous manner, that I can't match with the actual binary format.
Could you please explain that part of the specification "For every cell" and what comes just before, please?
I would really appreciate,
Thank you very much
Best regards
Posted 09 January 2011 - 05:06 PM
Posted 10 January 2011 - 12:39 PM
By the way, in:
DWORD Number of voxel cells. Every cell is a volume 8x8x8 that contains WORDS (16 bits). 0 means that cell is empty, 65535 – filled, 32767.5 – position of the surface.
That last sentence refers to the voxels, once the cells are read, right?
Posted 10 January 2011 - 02:17 PM
I read it as following: In the decompressed Matrix of WORDs ( 8x8x8 ) the values of the matrix are to be interpreted as 0 is empty cell, 65535 is a filled Cell in the Voxel matrix. But the rest i dont understand. First how can an integer have decimals ??? 32767.5 ?? If the value is just the length of a surface normal offset how is the direction of the offset defined ? I have no idea how to interpret the values from 1-65534 ...
Posted 10 January 2011 - 02:52 PM
Every voxel is integer value 0..65535. All this looks like 3D-field in volume. She surface separates values that less or equal than 32767 and values that are more or equal to 32768.
Posted 10 January 2011 - 04:13 PM
Excuse for providing specification with errors. I fixed errorы (marked with yelloew in document). Also I provided VS2008 project that performs reading of 3D-file (as example).
I have add some additional description to the document regarding interpretation of voxel values.
It is essentially not enough just 2 values for voxels (0 and 65535) becuase in this case surface will be very blocky. So 3D-Coat operates over smooth field of values 0..65535 to provide surface of very good smoothness.
Also - is your purpose only to read 3B files, or you need to write them too? Writing is a bit more complex brcause you need to fill XML part too, but if need, I may help with code snippets.
Posted 10 January 2011 - 07:59 PM
Posted 10 January 2011 - 08:48 PM
Posted 11 January 2011 - 12:37 AM
Posted 11 January 2011 - 01:36 PM
Posted 12 January 2011 - 04:32 PM
I posted Voxels SDK there
http://www.3d-coat.com/forum/index.php?showtopic=7333
It will make operations over 3B files to be very easy.
Posted 12 January 2011 - 04:55 PM
Posted 19 January 2011 - 05:26 PM
I am not using 3D-arrays, I prefer using linear arays and index them as
array[x+y*Lx+z*Lx*Ly]
possibly using 3D arrays produced problems, I think x and z axis in array indices are swapped.
Also, don't forget that 3DC scene is Y-up.
Posted 19 January 2011 - 05:55 PM
VoxTree->RMB->AutopoMy Dicom -> 3b Converter is working so far. I now get segmented MRT-Scans into 3D-Coat.
The plan is so create topology for different organs.
How can i run autoretopology on a 3b voxel file ?
Shouldnt it work ?
Autoretopo creates a voxel object from a mesh and starts the retopo wizard.
I would need to skip the first step and directly work on a voxel object from a 3b file ?
Is there a way ? Do i miss something ?
0 members, 0 guests, 0 anonymous users