Dose.GetVoxels in Eclispe API 13.6

Developer
Aug 21, 2015 at 9:17 PM
It seems to me the dose value in the dose array return from the GetVoxels() is different than the dose value returned from GetDoseToPoint().
What is the scale factor between the two and is the scale factor a fixed number?

Thanks,
Yuchi
Aug 21, 2015 at 9:41 PM
The relation between dose and voxel value should be: dose = (voxel - offset) * scalar, where offset is an integer, and scalar is with double type. To figure out the value of offset and scalar, I would arbitrarily pick two values for voxel. For example, voxel1 = 100 and voxel2 = 150, and run them through Dose.VoxelToDoseValue() to get the corresponding dose values, e.g., dose1 and dose2 respectively. Then you can calculate scalar and offset by:
scalar = (dose1 - dose2) / (voxel1 - voxel2);
offset = (int)(((voxel1 + voxel2) - (dose1 + dose2)/scalar) * 0.5 + 0.5);
Developer
Aug 26, 2015 at 8:22 PM
Thanks a lot for the useful tips.