use Quaternion to represent rotation