当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


p5.js noise()用法及代码示例


noise()函数用于在给定坐标下返回由Perlin噪声生成的数字。该值为semi-random,这意味着该值将固定为程序寿命的坐标。

Perlin噪声值不同于random()函数返回的值,因为与标准噪声相比,此噪声具有更自然和谐波的继承。

用法:


noise(x, [y], [z])

参数:此函数接受上述和以下所述的三个参数:

  • x:这是代表噪声空间中x坐标的数字。
  • y:这是代表噪声空间中y坐标的数字。它是一个可选参数。
  • z:这是代表噪声空间中z坐标的数字。它是一个可选参数。

返回值:它返回介于0和1之间的Perlin噪声值。

以下示例说明了p5.js中的noise()函数:

范例1:绘制移动点y坐标的噪声值。

  • 程序:
    let x_coordinate = 100.0; 
    let plot_x = 10.0; 
       
    function setup() { 
        createCanvas(400, 200); 
    } 
       
    function draw() { 
       
        // Get noise with x coordinate 
        x_noise = noise(x_coordinate) * 100; 
       
        // Plot the point with random noise 
        strokeWeight(10); 
        point(plot_x, x_noise); 
       
        // Increment the x coordinate 
        x_coordinate++; 
       
        // Increase the x coordinate 
        // for plotting 
        plot_x++; 
    }
  • 输出:
    output-graph

范例2:本示例演示了函数的semi-random属性。

  • 程序:
    let x_coordinate = 0.0; 
    let plot_y = 0.0; 
       
    function setup() { 
        createCanvas(400, 200); 
    } 
       
    function draw() { 
          
        if (x_coordinate < 5) { 
       
            // Get noise with x coordinate 
            x_noise = noise(x_coordinate); 
         
            // Output the noise along with 
            // its corresponding coordinate 
            coord_text = "Noise for x coordinate "
                + x_coordinate + " is " + x_noise; 
              
            text(coord_text, 10, plot_y); 
       
            // Increment the x coordinate 
            x_coordinate++; 
       
            // Increase the y coordinate 
            // for plotting 
            plot_y = plot_y + 15; 
        } 
        else
            x_coordinate = 0; 
    }
  • 输出:
    x_coord_output

范例3:本示例使用两个参数来定义噪声空间中的一个点。

  • 程序:
    let x_coordinate = 0.0; 
    let y_coordinate = 0.0; 
    let plot_y = 0.0; 
       
    function setup() { 
        createCanvas(400, 200); 
    } 
       
    function draw() { 
          
        if (x_coordinate < 10) { 
       
            // Get noise with x and y coordinates 
            xy_noise = noise(x_coordinate, y_coordinate); 
       
            // Output the noise along with 
            // its corresponding coordinate 
            coord_text = "Noise for coordinates:"
                + x_coordinate + ", " + y_coordinate 
                + " is " + xy_noise; 
            text(coord_text, 10, plot_y); 
       
            // Increment the x and y 
            // coordinates 
            x_coordinate++; 
            y_coordinate++; 
       
            // Increase the y coordinate 
            // for plotting 
            plot_y = plot_y + 15; 
        } 
    }
  • 输出:
    xy_coord_output

在线编辑:
环境设置:

参考: https://p5js.org/reference/#/p5/noise



相关用法


注:本文由纯净天空筛选整理自sayantanm19大神的英文原创作品 p5.js | noise() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。