1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-06 14:56:47 +02:00

refactor out pnoise fade function

This commit is contained in:
Justin Lin
2020-03-06 09:06:49 +08:00
parent 55d5f6162e
commit e9c61e1550

View File

@@ -1,10 +1,12 @@
function _pnoise_fade(t) = pow(t, 3) * (t * (t * 6 - 15) + 10);
function _pnoise1(x, n, gradients) = function _pnoise1(x, n, gradients) =
let( let(
lo = floor(x), lo = floor(x),
hi = (lo + 1) % n, hi = (lo + 1) % n,
dist = x - lo, t = x - lo,
loPos = gradients[lo] * dist, loPos = gradients[lo] * t,
hiPos = -gradients[hi] * (1 - dist), hiPos = -gradients[hi] * (1 - t),
u = pow(dist, 3) * (dist * (dist * 6 - 15) + 10) u = _pnoise_fade(t)
) )
loPos * (1 - u) + hiPos * u; loPos * (1 - u) + hiPos * u;