1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-17 22:28:16 +01:00
dotSCAD/examples/voronoi/voronoi_melon.scad
2022-04-05 11:52:35 +08:00

56 lines
1.1 KiB
OpenSCAD

use <voronoi/vrn_sphere.scad>;
use <polyline_join.scad>;
use <util/rands_sphere.scad>;
use <experimental/r_union3.scad>;
eyelets = 800;
radius = 50;
voronoi_melon(eyelets, radius);
module voronoi_melon(eyelets, radius) {
pts = rands_sphere(radius, eyelets);
cells = vrn_sphere(pts);
color("DarkKhaki")
for(cell = cells) {
polyline_join([each cell, cell[0]])
sphere(radius / 60, $fn = 4);
}
color("Olive")
sphere(radius, $fn = 96);
color("DarkOliveGreen") {
r_union3(radius / 8.4) {
scale(.99)
sphere(radius, $fn = 24);
translate([0, 0, radius * 0.875])
hull() {
$fn = 8;
sphere(radius / 15);
translate([0, 0, radius * .25])
sphere(radius / 20);
}
}
translate([0, 0, radius * 0.9]) {
$fn = 8;
hull() {
translate([radius / 2, 0, radius * .30])
sphere(radius / 40);
translate([0, 0, radius * .25])
sphere(radius / 20);
}
hull() {
translate([-radius / 4, radius / 10, radius * .35])
sphere(radius / 40);
translate([0, 0, radius * .25])
sphere(radius / 20);
}
}
}
}