1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-12 01:34:12 +02:00

add circle_packing3

This commit is contained in:
Justin Lin
2022-05-31 16:11:35 +08:00
parent e4661c74eb
commit c3025ea51c

View File

@@ -0,0 +1,27 @@
use <experimental/tri_subdivide.scad>;
use <triangle/tri_delaunay.scad>;
use <_impl/_circle_packing_triangle.scad>;
function circle_packing3(points, density = 1, min_r = 1) =
[
for(t = tri_delaunay(points, ret = "TRI_SHAPES"))
each circle_packing_triangle3(t, density, min_r)
];
function circle_packing_triangle3(t, density, min_r) =
[
for(st = tri_subdivide(t, density))
each circle_packing_triangle(st, density, min_r)
];
$fn = 24;
density = 2;
min_r = 1;
points = [for(i = [0:100]) rands(-100, 100, 2)];
for(c = circle_packing3(points, density, min_r)) {
translate(c[0])
sphere(c[1]);
}