scad-utils icon indicating copy to clipboard operation
scad-utils copied to clipboard

hull

Open mihai9 opened this issue 9 years ago • 0 comments

is this supposed to work ?

use <scad-utils/transformations.scad>
use <scad-utils/shapes.scad>
use <scad-utils/hull.scad>
use <list-comprehension-demos\skin.scad>

fn=32;
$fn=60;

r1 = 25;
r2 = 10;
R = 40;
th = 2;

function rhull(r)=[for(i=hull(r))r[i]];

module tube()
{

    difference()
    {
        skin([for(i=[0:fn])
              transform(
                rotation([0,180/fn*i,0])*translation([-R,0,0]), 
                rhull(concat(circle(r1+(r1-r2)/fn*i),square((r1+2.5*r1/2))))
        )
        ]);

//        echo( concat(circle(r1+(r1-r2)/2),square((r1+r2)*2)));
//        echo(rhull(concat(circle(r1+(r1-r2)/2),square((r1+r2)*2))));

        r1 = r1-th;
        r2 = r2-th;
        skin([for(i=[0:fn]) 
              transform(rotation([0,180/fn*i,0])*translation([-R,0,0]), 
                        circle(r1+(r1-r2)/fn*i))]);
    }
}

tube();

modified from here: http://stackoverflow.com/questions/28842419/linear-rotational-extrude-at-the-same-time

mihai9 avatar Jun 30 '15 01:06 mihai9