#19 fix snapping rounding issue