add schematic wakeboard model
parent
fbe826138d
commit
cddbd4dd27
|
@ -0,0 +1,144 @@
|
|||
use <bend.scad>
|
||||
|
||||
$fn=20;
|
||||
|
||||
module roundcirc()
|
||||
{
|
||||
hull() {
|
||||
translate([0, -13]) circle(r=10);
|
||||
translate([0, 13]) circle(r=10);
|
||||
}
|
||||
}
|
||||
|
||||
module roundcyl()
|
||||
{
|
||||
translate([0, 0, 0])
|
||||
linear_extrude(height=3*(1-cos(30)), scale=(10+3*sin(30))/10) roundcirc();
|
||||
translate([0, 0, 3*(1-cos(30))])
|
||||
linear_extrude(height=3*(cos(30)-cos(60)), scale=(10+3*sin(60))/(10+3*sin(30)))
|
||||
scale((10+3*sin(30))/10) roundcirc();
|
||||
translate([0, 0, 3*(1-cos(60))])
|
||||
linear_extrude(height=3*cos(60), scale=(13)/(10+3*sin(60)))
|
||||
scale((10+3*sin(60))/10) roundcirc();
|
||||
}
|
||||
|
||||
module boot()
|
||||
{
|
||||
$fn=20;
|
||||
difference() {
|
||||
union() {
|
||||
linear_extrude(height=2) {
|
||||
hull() {
|
||||
translate([0, -17]) circle(r=10);
|
||||
circle(r=17);
|
||||
translate([0, 17]) circle(r=10);
|
||||
}
|
||||
}
|
||||
/* translate([0, 0, 9.5])
|
||||
minkowski() {
|
||||
hull() {
|
||||
sphere($fn=10, r=3);
|
||||
translate([0, 0, -5]) sphere($fn=10, r=3);
|
||||
}
|
||||
linear_extrude(height=1)
|
||||
hull() {
|
||||
translate([0, -17]) circle(r=10);
|
||||
translate([0, 17]) circle(r=10);
|
||||
}
|
||||
}*/
|
||||
|
||||
translate([0, 0, 2]) roundcyl();
|
||||
translate([0, 0, 5]) linear_extrude(height=5) scale(1.3) roundcirc();
|
||||
translate([0, 0, 13]) rotate([0, 180, 0]) roundcyl();
|
||||
|
||||
hull() {
|
||||
translate([0, -17, 9]) cylinder(r=13, h=22);
|
||||
translate([0, -14, 9]) cylinder(r=13, h=11);
|
||||
}
|
||||
hull() {
|
||||
translate([0, -14, 9]) cylinder(r=13, h=11);
|
||||
translate([0, -10, 9]) cylinder(r=13, h=7);
|
||||
}
|
||||
hull() {
|
||||
translate([0, -10, 9]) cylinder(r=13, h=7);
|
||||
translate([0, 0, 9]) cylinder(r=13, h=3.8);
|
||||
}
|
||||
}
|
||||
translate([0, -17, 3]) cylinder(r=10, h=40);
|
||||
}
|
||||
}
|
||||
|
||||
module board()
|
||||
{
|
||||
$fn=100;
|
||||
rotate([-asin(90/500), 0, 0]) cylindric_bend(dimensions=[60, 180, 5], radius=500, nsteps=10)
|
||||
{
|
||||
translate([30, 90])
|
||||
linear_extrude(height=5) {
|
||||
intersection() {
|
||||
translate([270, 0]) circle(r=300);
|
||||
translate([-270, 0]) circle(r=300);
|
||||
hull() {
|
||||
translate([0, 40]) circle(r=50);
|
||||
translate([0, -40]) circle(r=50);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
boot();
|
||||
|
||||
/*union() {
|
||||
board();
|
||||
translate([30, 90-500*sin(asin(90/500)*0.45), -6.6]) rotate([0, asin(90/500)*0.45, 90]) translate([0, 0, 5]) scale(0.7) boot();
|
||||
translate([30, 90+500*sin(asin(90/500)*0.45), -6.6]) rotate([0, -asin(90/500)*0.45, 90]) translate([0, 0, 5]) scale(0.7) boot();
|
||||
// support material
|
||||
intersection() {
|
||||
union() {
|
||||
translate([5, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
translate([15, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
translate([25, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
translate([35, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
translate([45, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
translate([55, 0, -500*(1-cos(asin(90/500)))]) cube(size=[0.8, 180, 15]);
|
||||
}
|
||||
difference() {
|
||||
hull() {
|
||||
board();
|
||||
translate([0, 0, -20]) board();
|
||||
}
|
||||
hull() {
|
||||
translate([0, 0, 1]) board();
|
||||
translate([0, 0, 2]) board();
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
/* // cr = ((arcwidth/2)^2 + size^2)/2/size
|
||||
module curved(cr=300, size=10) {
|
||||
difference() {
|
||||
translate([cr, 0]) circle(r=cr);
|
||||
translate([size, -cr]) square(size=[cr*2, cr*2]);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
w = 20;
|
||||
translate([w/2, -80]) square(size=[w, 160]);
|
||||
curved((80*80+(w/2)*(w/2))/2/(w/2), (w/2));
|
||||
translate([40, 0]) rotate([0, 0, 180]) curved((80*80+10*10)/2/10, 10);
|
||||
translate([10+w/2, 4+80]) rotate([0, 0, -90]) curved((10*10+4*4)/2/4, 4);
|
||||
translate([10+w/2, -4-80]) rotate([0, 0, 90]) curved((10*10+4*4)/2/4, 4);
|
||||
}
|
||||
|
||||
/*difference() {
|
||||
translate([-10, -10, 0]) cube(size=[20, 20, 5]);
|
||||
translate([-2.5, -2.5, -0.1]) cube(size=[5, 5, 1.1]);
|
||||
translate([-10, -10, -8]) rotate([0, -45, 45]) cube(size=[20, 20, 20]);
|
||||
}
|
||||
|
||||
/*difference() {
|
||||
cylinder($fn=32, r=4, h=1.2);
|
||||
translate([0, 0, -0.1]) cylinder($fn=32, r=2.5, h=1.1);
|
||||
}*/
|
Loading…
Reference in New Issue