ixfx
    Preparing search index...

    Function wrapInteger

    • Wraps an integer number within a specified range, defaulting to degrees (0-360). Use wrap for floating-point wrapping.

      This is useful for calculations involving degree angles and hue, which wrap from 0-360. Eg: to add 200 to 200, we don't want 400, but 40.

      const v = wrapInteger(200+200, 0, 360); // 40
      

      Or if we minus 100 from 10, we don't want -90 but 270

      const v = wrapInteger(10-100, 0, 360); // 270
      

      wrapInteger uses 0-360 as a default range, so both of these examples could just as well be:

      wrapInteger(200+200);  // 40
      wrapInteger(10-100); // 270

      Non-zero starting points can be used. A range of 20-70:

      const v = wrapInteger(-20, 20, 70); // 50
      

      Note that the minimum value is inclusive, while the maximum is exclusive. So with the default range of 0-360, 360 is never reached:

      wrapInteger(360); // 0
      wrapInteger(361); // 1

      If you just want to lock values to a range without wrapping, consider clamp.

      Parameters

      • v: number

        Value to wrap

      • min: number = 0

        Integer minimum of range (default: 0). Inclusive

      • max: number = 360

        Integer maximum of range (default: 360). Exlusive

      Returns number