Noise Modes
Name
There are two noise modes available in PiCrate, both base on KdotJPG java noise. The default noise uses the FastNoise module, the SmoothNoise module can be used using the module name as a prefix see example below.
Examples
#!/usr/bin/env jruby -w
require 'propane'
class TestNoise < Propane::App
    attr_reader :z
    def setup
      stroke(255, 64)
      @z = 0
    end
    def draw
      noise_scale = 0.01
      background(0)
      grid(width, height, 10, 10) do |x, y|
        arrow(x, y, SmoothNoise.noise(x * noise_scale, y * noise_scale, z * noise_scale) * TWO_PI * 2)
        # arrow(x, y, noise(x * noise_scale, y * noise_scale, z * noise_scale) * TWO_PI * 2)
      end
      @z += 1
    end
    def arrow(x, y, ang)
      push_matrix()
      translate(x, y)
      rotate(ang)
      line(0, 0, 20, 0)
      translate(20, 0)
      rotate(PI + 0.4)
      line(0, 0, 5, 0)
      rotate(-0.8)
      line(0, 0, 5, 0)
      pop_matrix()
    end
    def settings
      size(600, 400, P2D)
    end
  end
  TestNoise.new
Description
Currently supports four implementations of noise:-
- Default is classic OpenSimplex2
 - SmoothNoise use smoother class OpenSimplex2F
 - Use tnoise instead of noise for a noise mode more suited to terrain
 
Syntax
SmoothNoise.noise(...) # no prefix for fast classic OpenSimplex2
Related
noise(x, y, z, w)
noise(x, y, z)
noise(x, y)