無理に全てを1ドット単位で移動させなくてもいいだろう
全てを厳密にチェックする必要があったらそうするしかないかもだが
普通に好きな単位で移動させて、移動終了後にマス目からはみ出してる分を補正してやればいい