code: public Quaterniond setAngleAxis(double angle, double x, double y, double z) {
          double s = Math.sin(angle * 0.5);
          this.x = x * s;
          this.y = y * s;
          this.z = z * s;
          this.w = Math.cosFromSin(s, angle * 0.5);
          return this;
      }
docs: Set this quaternion to a rotation equivalent to the supplied axis and
  angle (in radians).
  <p>
  This method assumes that the given rotation axis <code>(x, y, z)</code> is already normalized
  
  @param angle
  the angle in radians
  @param x
  the x-component of the normalized rotation axis
  @param y
  the y-component of the normalized rotation axis
  @param z
  the z-component of the normalized rotation axis
  @return this