From 8356c42ef4e8816a43c0a74097ef600a8f60c21a Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Thu, 5 Jun 2014 09:56:39 +0000 Subject: [PATCH] add rim base --- tire/tire_81.6_50.scad | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/tire/tire_81.6_50.scad b/tire/tire_81.6_50.scad index 6b6b7f9..a4e0009 100644 --- a/tire/tire_81.6_50.scad +++ b/tire/tire_81.6_50.scad @@ -3,34 +3,51 @@ $fn=60; R=42; // outer radius +R_I=26.5; // innermost radius +B=2.5; // width of edge for the rim +B_W=1.6; // thickness of edge for the rim +B_P=4; // position of edge for the rim W=50; // tire width N_L=4; // number of lateral protectors -N_A=20; // number of angular protectors +N_A=10; // number of angular protectors +translate([0, 0, B_P-2-0.2]) color([0.5, 0.5, 1]) { + union() { + cylinder(r=R_I-0.2, h=W-2*(B_P-2-0.2)); + cylinder(r=R_I+B-0.5, h=2); + translate([0, 0, W-2*(B_P-2-0.2)-2]) cylinder(r=R_I+B-0.5, h=2); + translate([0, 0, B_P]) cylinder(r=R_I+B+2, h=2); + translate([0, 0, W-2*(B_P-2-0.2)-6]) cylinder(r=R_I+B+2, h=2); + } +} + +tire(); + +module tire() { difference() { hull() { translate([0, 0, 2]) cylinder(r=R, h=W-4); cylinder(r=R-2, h=W); } // center hole through all piece - translate([0, 0, -0.5]) cylinder(r=26.5, h=W+1); + translate([0, 0, -0.5]) cylinder(r=R_I, h=W+1); // top hole - translate([0, 0, W-4]) cylinder(r=29, h=5); + translate([0, 0, W-B_P]) cylinder(r=R_I+B, h=B_P+1); hull() { - translate([0, 0, W-1.5]) cylinder(r=29, h=1.5); - translate([0, 0, W]) cylinder(r=30.5, h=1); + translate([0, 0, W-1.5]) cylinder(r=R_I+B, h=1.5); + translate([0, 0, W]) cylinder(r=R_I+B+1.5, h=1); } // bottom hole - translate([0, 0, -1]) cylinder(r=29, h=5); + translate([0, 0, -1]) cylinder(r=R_I+B, h=B_P+1); hull() { - translate([0, 0, 0]) cylinder(r=29, h=1.5); - translate([0, 0, -1]) cylinder(r=30.5, h=1); + translate([0, 0, 0]) cylinder(r=R_I+B, h=1.5); + translate([0, 0, -1]) cylinder(r=R_I+B+1.5, h=1); } // inside cut - translate([0, 0, 4+1.5]) cylinder(r=R-3, h=W-(4+1.5)*2); + translate([0, 0, B_P+B_W]) cylinder(r=R-3, h=W-(B_P+B_W)*2); difference() { translate([0, 0, 2.5]) cylinder(r=R-3, h=W-2.5*2); - cylinder(r=31, h=W); + cylinder(r=R_I+B+2, h=W); } // lateral protector for (i = [1 : N_L]) @@ -44,6 +61,7 @@ difference() { // to cut and look inside :) //translate([0, 0, -0.1]) cube(size=[100, 100,100]); } +} module protector_single() { difference() {