code: public Matrix3d set(AxisAngle4f axisAngle) {
          double x = axisAngle.x;
          double y = axisAngle.y;
          double z = axisAngle.z;
          double angle = axisAngle.angle;
          double invLength = 1.0 / Math.sqrt(x*x + y*y + z*z);
          x *= invLength;
          y *= invLength;
          z *= invLength;
          double s = Math.sin(angle);
          double c = Math.cosFromSin(s, angle);
          double omc = 1.0 - c;
          m00 = c + x*x*omc;
          m11 = c + y*y*omc;
          m22 = c + z*z*omc;
          double tmp1 = x*y*omc;
          double tmp2 = z*s;
          m10 = tmp1 - tmp2;
          m01 = tmp1 + tmp2;
          tmp1 = x*z*omc;
          tmp2 = y*s;
          m20 = tmp1 + tmp2;
          m02 = tmp1 - tmp2;
          tmp1 = y*z*omc;
          tmp2 = x*s;
          m21 = tmp1 - tmp2;
          m12 = tmp1 + tmp2;
          return this;
      }
docs: Set this matrix to be equivalent to the rotation specified by the given {@link AxisAngle4f}.
  
  @param axisAngle
  the {@link AxisAngle4f}
  @return this