code: public Quaternionf scaling(float factor) {
          float sqrt = (float) Math.sqrt(factor);
          this.x = 0.0f;
          this.y = 0.0f;
          this.z = 0.0f;
          this.w = sqrt;
          return this;
      }
docs: Set this quaternion to represent scaling, which results in a transformed vector to change
  its length by the given <code>factor</code>.
  
  @param factor
  the scaling factor
  @return this