Class Noise

java.lang.Object
com.jhlabs.math.Noise
All Implemented Interfaces:
Function1D, Function2D, Function3D

public class Noise extends Object implements Function1D, Function2D, Function3D
Perlin Noise functions
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    float
    evaluate(float x)
     
    float
    evaluate(float x, float y)
     
    float
    evaluate(float x, float y, float z)
     
    static float[]
    findRange(Function1D f, float[] minmax)
    Returns the minimum and maximum of a number of random values of the given function.
    static float[]
    findRange(Function2D f, float[] minmax)
    Returns the minimum and maximum of a number of random values of the given function.
    static float
    lerp(float t, float a, float b)
     
    static float
    noise1(float x)
    Compute 1-dimensional Perlin noise.
    static float
    noise2(float x, float y)
    Compute 2-dimensional Perlin noise.
    static float
    noise3(float x, float y, float z)
    Compute 3-dimensional Perlin noise.
    static float
    turbulence2(float x, float y, float octaves)
    Compute turbulence using Perlin noise.
    static float
    turbulence3(float x, float y, float z, float octaves)
    Compute turbulence using Perlin noise.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Noise

      public Noise()
  • Method Details

    • evaluate

      public float evaluate(float x)
      Specified by:
      evaluate in interface Function1D
    • evaluate

      public float evaluate(float x, float y)
      Specified by:
      evaluate in interface Function2D
    • evaluate

      public float evaluate(float x, float y, float z)
      Specified by:
      evaluate in interface Function3D
    • turbulence2

      public static float turbulence2(float x, float y, float octaves)
      Compute turbulence using Perlin noise.
      Parameters:
      x - the x value
      y - the y value
      octaves - number of octaves of turbulence
      Returns:
      turbulence value at (x,y)
    • turbulence3

      public static float turbulence3(float x, float y, float z, float octaves)
      Compute turbulence using Perlin noise.
      Parameters:
      x - the x value
      y - the y value
      octaves - number of octaves of turbulence
      Returns:
      turbulence value at (x,y)
    • noise1

      public static float noise1(float x)
      Compute 1-dimensional Perlin noise.
      Parameters:
      x - the x value
      Returns:
      noise value at x in the range -1..1
    • noise2

      public static float noise2(float x, float y)
      Compute 2-dimensional Perlin noise.
      Parameters:
      x - the x coordinate
      y - the y coordinate
      Returns:
      noise value at (x,y)
    • noise3

      public static float noise3(float x, float y, float z)
      Compute 3-dimensional Perlin noise.
      Parameters:
      x - the x coordinate
      y - the y coordinate
      y - the y coordinate
      Returns:
      noise value at (x,y,z)
    • lerp

      public static float lerp(float t, float a, float b)
    • findRange

      public static float[] findRange(Function1D f, float[] minmax)
      Returns the minimum and maximum of a number of random values of the given function. This is useful for making some stab at normalising the function.
    • findRange

      public static float[] findRange(Function2D f, float[] minmax)
      Returns the minimum and maximum of a number of random values of the given function. This is useful for making some stab at normalising the function.