Encapsulate vX/vY/dX/dY to find and protect against the NaN bug.