Class PerlinTurbulence
java.lang.Object
com.github.weisj.jsvg.geometry.noise.PerlinTurbulence
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate static final intprivate final double[]private final intprivate static final doubleprivate static final intprivate static final intprivate static final intprivate static final intprivate final int[]private final doubleprivate final double -
Constructor Summary
ConstructorsConstructorDescriptionPerlinTurbulence(int seed, int numOctaves, double xFrequency, double yFrequency) -
Method Summary
Modifier and TypeMethodDescriptionprivate doubleadjustFrequency(double frequency, double tileSize) private static doublecurve(double t) private voidinit(int seed) private static doublelerp(double t, double a, double b) private voidnoise2(double[] noiseChannels, double vec0, double vec1, @Nullable PerlinTurbulence.StitchInfo stitchInfo) private static intrandom(int seed) private static intsetupSeed(int seed) voidturbulence(double[] turbulenceChannels, double pointX, double pointY, boolean fractalSum, @Nullable PerlinTurbulence.StitchInfo stitchInfo, Rectangle2D.Double tile)
-
Field Details
-
RAND_m
private static final int RAND_m- See Also:
-
RAND_a
private static final int RAND_a- See Also:
-
RAND_q
private static final int RAND_q- See Also:
-
RAND_r
private static final int RAND_r- See Also:
-
BSize
private static final int BSize- See Also:
-
BM
private static final int BM- See Also:
-
PerlinN
private static final double PerlinN- See Also:
-
uLatticeSelector
private final int[] uLatticeSelector -
fGradient
private final double[] fGradient -
numOctaves
private final int numOctaves -
xFrequency
private final double xFrequency -
yFrequency
private final double yFrequency
-
-
Constructor Details
-
PerlinTurbulence
public PerlinTurbulence(int seed, int numOctaves, double xFrequency, double yFrequency)
-
-
Method Details
-
setupSeed
private static int setupSeed(int seed) -
random
private static int random(int seed) -
init
private void init(int seed) -
curve
private static double curve(double t) -
lerp
private static double lerp(double t, double a, double b) -
noise2
private void noise2(double[] noiseChannels, double vec0, double vec1, @Nullable @Nullable PerlinTurbulence.StitchInfo stitchInfo) -
turbulence
public void turbulence(double[] turbulenceChannels, double pointX, double pointY, boolean fractalSum, @Nullable @Nullable PerlinTurbulence.StitchInfo stitchInfo, @Nullable Rectangle2D.Double tile) -
adjustFrequency
private double adjustFrequency(double frequency, double tileSize)
-