mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-26 07:55:16 +02:00
use polyline_join
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
use <pie.scad>;
|
||||
use <hull_polyline2d.scad>;
|
||||
use <ptf/ptf_rotate.scad>;
|
||||
use <experimental/tile_penrose3.scad>;
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
use <experimental/tile_penrose3.scad>;
|
||||
use <experimental/ptf_c2sphere.scad>;
|
||||
use <ptf/ptf_rotate.scad>;
|
||||
use <hull_polyline3d.scad>;
|
||||
use <polyline_join.scad>;
|
||||
use <surface/sf_thickenT.scad>;
|
||||
use <polyhedron_hull.scad>;
|
||||
use <util/every.scad>;
|
||||
@@ -19,6 +19,7 @@ $fn = 4;
|
||||
penrose_basket(basket_radius, radius_in_plane, n, line_diameter, bottom_radius, bottom_height, shell_random_threshold);
|
||||
|
||||
module penrose_basket(basket_radius, radius_in_plane, n, line_diameter, bottom_radius, bottom_height, shell_random_threshold) {
|
||||
line_r = line_diameter / 2;
|
||||
tris = [for(t = tile_penrose3(n)) t[1] * radius_in_plane];
|
||||
for(t = tris) {
|
||||
if(every(t, function(p) norm(p) < radius_in_plane * 1.25)) {
|
||||
@@ -30,10 +31,8 @@ module penrose_basket(basket_radius, radius_in_plane, n, line_diameter, bottom_r
|
||||
cp
|
||||
];
|
||||
|
||||
hull_polyline3d(
|
||||
pts,
|
||||
line_diameter
|
||||
);
|
||||
polyline_join(pts)
|
||||
sphere(line_r);
|
||||
|
||||
if(rands(0, 1, 1)[0] < shell_random_threshold) {
|
||||
inward_ratio = (basket_radius - 0.25 * line_diameter) / basket_radius;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
use <experimental/tile_truchet.scad>;
|
||||
use <hull_polyline3d.scad>;
|
||||
use <polyline_join.scad>;
|
||||
use <ptf/ptf_ring.scad>;
|
||||
|
||||
size = [20, 100];
|
||||
@@ -28,9 +28,10 @@ module tiled_line_mobius(size, twist, line_diameter = 1) {
|
||||
]
|
||||
);
|
||||
|
||||
half_line_diameter = line_diameter / 2;
|
||||
for(line = lines) {
|
||||
pts = [for(p = line) ptf_ring(size, p, size[0], twist = twist)];
|
||||
hull_polyline3d(pts, diameter = line_diameter);
|
||||
polyline_join(pts) sphere(half_line_diameter);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
use <experimental/tile_truchet.scad>;
|
||||
use <hull_polyline3d.scad>;
|
||||
use <polyline_join.scad>;
|
||||
use <ptf/ptf_torus.scad>;
|
||||
|
||||
size = [20, 50];
|
||||
@@ -18,9 +18,11 @@ module tiled_line_torus(size, twist, line_diameter = 1) {
|
||||
i <= 1 ? [[x, y], [x + 1, y + 1]] : [[x + 1, y], [x, y + 1]]
|
||||
];
|
||||
|
||||
half_line_diameter = line_diameter / 2;
|
||||
for(line = lines) {
|
||||
pts = [for(p = line) ptf_torus(size, p, [size[0], size[0] / 2], twist = twist)];
|
||||
hull_polyline3d(pts, diameter = line_diameter);
|
||||
polyline_join(pts)
|
||||
sphere(half_line_diameter);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user