74 lines
1.5 KiB
Markdown
74 lines
1.5 KiB
Markdown
---
|
|
title: 柏林噪声1D
|
|
categories:
|
|
- 作品
|
|
- p5js
|
|
keywords: [noise]
|
|
tags: []
|
|
date: 2022-09-18 16:45:10
|
|
---
|
|
|
|
``` js
|
|
let offset = 0
|
|
let ratio = 0.01
|
|
let speed = 0.01
|
|
function setup() {
|
|
createCanvas().parent(p5Container)
|
|
windowResized()
|
|
noiseDetail(2, 0.5)
|
|
strokeWeight(2)
|
|
stroke('blue')
|
|
noFill()
|
|
}
|
|
function draw() {
|
|
background(200)
|
|
beginShape()
|
|
for (let x = 0; x < width; x++) {
|
|
const y = noise(offset + x * ratio) * height
|
|
vertex(x, y)
|
|
}
|
|
endShape()
|
|
offset += speed
|
|
}
|
|
function windowResized() {
|
|
const width = p5Container.offsetWidth;
|
|
const height = Math.round(9 * width / 16);
|
|
resizeCanvas(width, height);
|
|
}
|
|
```
|
|
|
|
<!-- more -->
|
|
|
|
<div id="p5Container"></div>
|
|
|
|
<script src="//zhao/js/p5.min.js"></script>
|
|
<script src="//zhao/js/p5.sound.min.js"></script>
|
|
<script>
|
|
let offset = 0
|
|
let ratio = 0.01
|
|
let speed = 0.01
|
|
function setup() {
|
|
createCanvas().parent(p5Container)
|
|
windowResized()
|
|
noiseDetail(2, 0.5)
|
|
strokeWeight(2)
|
|
stroke('blue')
|
|
noFill()
|
|
}
|
|
function draw() {
|
|
background(200)
|
|
beginShape()
|
|
for (let x = 0; x < width; x++) {
|
|
const y = noise(offset + x * ratio) * height
|
|
vertex(x, y)
|
|
}
|
|
endShape()
|
|
offset += speed
|
|
}
|
|
function windowResized() {
|
|
const width = p5Container.offsetWidth;
|
|
const height = Math.round(9 * width / 16);
|
|
resizeCanvas(width, height);
|
|
}
|
|
</script>
|