Check over the optical density calculation
The optical density algorithm uses pixels for units, so a floating point value is iffy. The function accepts a float, but has to coerce it in places, and might not cover the whole arc segment consistently.
We should warn about integer values or see if floating point values make sense in the algorithm.
Edited by John Ladan