code: public Vector4f transform(float x, float y, float z, Vector4f dest) {
          float w2 = this.w * this.w;
          float x2 = this.x * this.x;
          float y2 = this.y * this.y;
          float z2 = this.z * this.z;
          float zw = this.z * this.w, zwd = zw + zw;
          float xy = this.x * this.y, xyd = xy + xy;
          float xz = this.x * this.z, xzd = xz + xz;
          float yw = this.y * this.w, ywd = yw + yw;
          float yz = this.y * this.z, yzd = yz + yz;
          float xw = this.x * this.w, xwd = xw + xw;
          float m00 = w2 + x2 - z2 - y2;
          float m01 = xyd + zwd;
          float m02 = xzd - ywd;
          float m10 = xyd - zwd;
          float m11 = y2 - z2 + w2 - x2;
          float m12 = yzd + xwd;
          float m20 = ywd + xzd;
          float m21 = yzd - xwd;
          float m22 = z2 - y2 - x2 + w2;
          dest.x = m00 * x + m10 * y + m20 * z;
          dest.y = m01 * x + m11 * y + m21 * z;
          dest.z = m02 * x + m12 * y + m22 * z;
          return dest;
      }
docs: /* (non-Javadoc)
  @see org.joml.Quaternionfc#transform(float, float, float, org.joml.Vector4f)