org.bukkit.util.noise
Class SimplexNoiseGenerator

java.lang.Object
  extended by org.bukkit.util.noise.NoiseGenerator
      extended by org.bukkit.util.noise.PerlinNoiseGenerator
          extended by org.bukkit.util.noise.SimplexNoiseGenerator

public class SimplexNoiseGenerator
extends PerlinNoiseGenerator

Generates simplex-based noise.

This is a modified version of the freely published version in the paper by Stefan Gustavson at http://staffwww.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf


Field Summary
protected static double F2
           
protected static double F3
           
protected static double F4
           
protected static double G2
           
protected static double G22
           
protected static double G3
           
protected static double G4
           
protected static double G42
           
protected static double G43
           
protected static double G44
           
protected static int[][] grad4
           
protected static double offsetW
           
protected static int[][] simplex
           
protected static double SQRT_3
           
protected static double SQRT_5
           
 
Fields inherited from class org.bukkit.util.noise.PerlinNoiseGenerator
grad3
 
Fields inherited from class org.bukkit.util.noise.NoiseGenerator
offsetX, offsetY, offsetZ, perm
 
Constructor Summary
protected SimplexNoiseGenerator()
           
  SimplexNoiseGenerator(long seed)
          Creates a seeded simplex noise generator for the given seed
  SimplexNoiseGenerator(Random rand)
          Creates a seeded simplex noise generator with the given Random
  SimplexNoiseGenerator(World world)
          Creates a seeded simplex noise generator for the given world
 
Method Summary
protected static double dot(int[] g, double x, double y)
           
protected static double dot(int[] g, double x, double y, double z)
           
protected static double dot(int[] g, double x, double y, double z, double w)
           
static SimplexNoiseGenerator getInstance()
          Gets the singleton unseeded instance of this generator
static double getNoise(double xin)
          Computes and returns the 1D unseeded simplex noise for the given coordinates in 1D space
static double getNoise(double xin, double yin)
          Computes and returns the 2D unseeded simplex noise for the given coordinates in 2D space
static double getNoise(double xin, double yin, double zin)
          Computes and returns the 3D unseeded simplex noise for the given coordinates in 3D space
static double getNoise(double x, double y, double z, double w)
          Computes and returns the 4D simplex noise for the given coordinates in 4D space
 double noise(double xin, double yin)
          Computes and returns the 2D noise for the given coordinates in 2D space
 double noise(double xin, double yin, double zin)
          Computes and returns the 3D noise for the given coordinates in 3D space
 double noise(double x, double y, double z, double w)
          Computes and returns the 4D simplex noise for the given coordinates in 4D space
 
Methods inherited from class org.bukkit.util.noise.PerlinNoiseGenerator
getNoise, getNoise, getNoise
 
Methods inherited from class org.bukkit.util.noise.NoiseGenerator
fade, floor, grad, lerp, noise, noise, noise, noise, noise, noise, noise
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SQRT_3

protected static final double SQRT_3

SQRT_5

protected static final double SQRT_5

F2

protected static final double F2

G2

protected static final double G2

G22

protected static final double G22

F3

protected static final double F3
See Also:
Constant Field Values

G3

protected static final double G3
See Also:
Constant Field Values

F4

protected static final double F4

G4

protected static final double G4

G42

protected static final double G42

G43

protected static final double G43

G44

protected static final double G44

grad4

protected static final int[][] grad4

simplex

protected static final int[][] simplex

offsetW

protected static double offsetW
Constructor Detail

SimplexNoiseGenerator

protected SimplexNoiseGenerator()

SimplexNoiseGenerator

public SimplexNoiseGenerator(World world)
Creates a seeded simplex noise generator for the given world

Parameters:
world - World to construct this generator for

SimplexNoiseGenerator

public SimplexNoiseGenerator(long seed)
Creates a seeded simplex noise generator for the given seed

Parameters:
seed - Seed to construct this generator for

SimplexNoiseGenerator

public SimplexNoiseGenerator(Random rand)
Creates a seeded simplex noise generator with the given Random

Parameters:
rand - Random to construct with
Method Detail

dot

protected static double dot(int[] g,
                            double x,
                            double y)

dot

protected static double dot(int[] g,
                            double x,
                            double y,
                            double z)

dot

protected static double dot(int[] g,
                            double x,
                            double y,
                            double z,
                            double w)

getNoise

public static double getNoise(double xin)
Computes and returns the 1D unseeded simplex noise for the given coordinates in 1D space

Parameters:
xin - X coordinate
Returns:
Noise at given location, from range -1 to 1

getNoise

public static double getNoise(double xin,
                              double yin)
Computes and returns the 2D unseeded simplex noise for the given coordinates in 2D space

Parameters:
xin - X coordinate
yin - Y coordinate
Returns:
Noise at given location, from range -1 to 1

getNoise

public static double getNoise(double xin,
                              double yin,
                              double zin)
Computes and returns the 3D unseeded simplex noise for the given coordinates in 3D space

Parameters:
xin - X coordinate
yin - Y coordinate
zin - Z coordinate
Returns:
Noise at given location, from range -1 to 1

getNoise

public static double getNoise(double x,
                              double y,
                              double z,
                              double w)
Computes and returns the 4D simplex noise for the given coordinates in 4D space

Parameters:
x - X coordinate
y - Y coordinate
z - Z coordinate
w - W coordinate
Returns:
Noise at given location, from range -1 to 1

noise

public double noise(double xin,
                    double yin,
                    double zin)
Description copied from class: NoiseGenerator
Computes and returns the 3D noise for the given coordinates in 3D space

Overrides:
noise in class PerlinNoiseGenerator
Parameters:
xin - X coordinate
yin - Y coordinate
zin - Z coordinate
Returns:
Noise at given location, from range -1 to 1

noise

public double noise(double xin,
                    double yin)
Description copied from class: NoiseGenerator
Computes and returns the 2D noise for the given coordinates in 2D space

Overrides:
noise in class NoiseGenerator
Parameters:
xin - X coordinate
yin - Y coordinate
Returns:
Noise at given location, from range -1 to 1

noise

public double noise(double x,
                    double y,
                    double z,
                    double w)
Computes and returns the 4D simplex noise for the given coordinates in 4D space

Parameters:
x - X coordinate
y - Y coordinate
z - Z coordinate
w - W coordinate
Returns:
Noise at given location, from range -1 to 1

getInstance

public static SimplexNoiseGenerator getInstance()
Gets the singleton unseeded instance of this generator

Returns:
Singleton


Copyright © 2013. All Rights Reserved.