@@ -3722,7 +3722,8 @@ function join_prism(polygon, base, base_r, base_d, base_T=IDENT,
3722
3722
: apply(aux_T,CENTER),
3723
3723
flip = short ? - 1 : 1 ,
3724
3724
axisline = [CENTER, flip* dir] + repeat(default(start,CENTER),2 ),
3725
- start = base== "sphere" ?
3725
+ start = is_def(start) ? start
3726
+ : base== "sphere" ?
3726
3727
let( answer = _sphere_line_isect_best(abs (base_r),axisline, sign (base_r)* flip* dir))
3727
3728
assert(answer,"Prism center doesn't intersect sphere (base)" )
3728
3729
answer
@@ -4442,6 +4443,19 @@ function _prism_fillet_prism(name, basepoly, bot, top, d, k, N, overlap, uniform
4442
4443
// leftpipe, RIGHT, rightpipe, LEFT, fillet=fillet,
4443
4444
// shift1=-shift_fix,shift2=shift+shift_fix);
4444
4445
// }
4446
+ // Example(3D,NoAxes): Here we use attachable parts of the tube to create a connector that makes a hole from the outside to the inside of the tube
4447
+ // $fn=64;
4448
+ // diff()
4449
+ // tube(or=10,wall=2,h=10,rounding=1)
4450
+ // let(outside=parent())
4451
+ // attach_part("inside")
4452
+ // let(inside=parent())
4453
+ // for(angle = [0:120:359])
4454
+ // let(where = polar_to_xy(1,angle))
4455
+ // tag("remove")
4456
+ // prism_connector(circle(3,$fn=32),
4457
+ // outside, where, parent(), where,
4458
+ // fillet=0.5);
4445
4459
4446
4460
4447
4461
// Get the object type from the specified geometry and anchor point
0 commit comments