q.fromAngleAxis(angle, rotAxis);
q.fromAngleNormalAxis(angle, rotAxis);
    public void rotateUpTo(Vector3f newUp) {        //First figure out the current up vector.        Vector3f upY = compVecA.set(Vector3f.UNIT_Y);        localRotation.multLocal(upY);        // get angle between vectors        float angle = upY.angleBetween(newUp);        //figure out rotation axis by taking cross product        Vector3f rotAxis = upY.crossLocal(newUp);        // Build a rotation quat and apply current local rotation.        Quaternion q = compQuat;        q.fromAngleAxis(angle, rotAxis);        q.mult(localRotation, localRotation);    }