diff --git a/src/experimental/perlin_sphere.scad b/src/experimental/perlin_sphere.scad index e413438d..9036be53 100644 --- a/src/experimental/perlin_sphere.scad +++ b/src/experimental/perlin_sphere.scad @@ -3,19 +3,19 @@ use ; use ; radius = 30; -detail = 30; +detail = 15; amplitude = 10; -period = 2; +period = 1; perlin_sphere(radius, detail, amplitude, period); module perlin_sphere(radius, detail, amplitude, period = 1, seed = undef) { - points_faces = geom_icosahedron(radius, detail); + points_faces = geom_icosahedron(1, detail); points = points_faces[0]; faces = points_faces[1]; sd = is_undef(seed) ? rand() * 1000: seed; - noisy = nz_perlin3s(period * points / radius, sd); + noisy = nz_perlin3s(period * points, sd); noisy_points = [ for(i = [0:len(points) - 1]) @@ -23,7 +23,7 @@ module perlin_sphere(radius, detail, amplitude, period = 1, seed = undef) { p = points[i], nz = noisy[i] ) - p / norm(p) * (radius + nz * amplitude) + p * (radius + nz * amplitude) ]; polyhedron(noisy_points, faces);