Class PerlinTurbulence
java.lang.Object
com.github.weisj.jsvg.geometry.noise.PerlinTurbulence
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
private static final int
private final double[]
private final int
private static final double
private static final int
private static final int
private static final int
private static final int
private final int[]
private final double
private final double
-
Constructor Summary
ConstructorsConstructorDescriptionPerlinTurbulence
(int seed, int numOctaves, double xFrequency, double yFrequency) -
Method Summary
Modifier and TypeMethodDescriptionprivate double
adjustFrequency
(double frequency, double tileSize) private static double
curve
(double t) private void
init
(int seed) private static double
lerp
(double t, double a, double b) private void
noise2
(double[] noiseChannels, double vec0, double vec1, @Nullable PerlinTurbulence.StitchInfo stitchInfo) private static int
random
(int seed) private static int
setupSeed
(int seed) void
turbulence
(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)
-