74 lines
2.5 KiB
OpenSCAD
74 lines
2.5 KiB
OpenSCAD
// Верхняя часть крепления для детских автокресел Maxi Cosi
|
|
|
|
$fn=64;
|
|
w = 63;
|
|
h1 = 75;
|
|
w2 = 75;
|
|
h2 = 59;
|
|
r2 = 41;
|
|
notch = 39;
|
|
|
|
//mirror()
|
|
difference()
|
|
{
|
|
union()
|
|
{
|
|
rotate([0, atan(1.5/5), 0])
|
|
{
|
|
difference()
|
|
{
|
|
union()
|
|
{
|
|
cube([w, 29, h1]);
|
|
translate([w/2-w2/2, 0, -50]) cube([w2, 35, h1-h2+50]);
|
|
}
|
|
translate([-0.01, 29.01, h1+0.01]) rotate([90, 180, 90]) linear_extrude(100) polygon([[0, 0], [0, 8], [5, 0]]);
|
|
translate([w+0.01, 50, h1+0.01]) rotate([90, 180, 0]) linear_extrude(100) polygon([[0, 0], [0, 8], [8, 0]]);
|
|
translate([-0.01, -50, h1+0.01]) rotate([90, 180, 180]) linear_extrude(100) polygon([[0, 0], [0, 8], [8, 0]]);
|
|
translate([w/2, 29+10-4.5, h1-49+notch/2]) rotate([90, 0, 0]) cylinder(h=10, d=notch, $fn=64);
|
|
translate([w/2-notch/2, 29+10-4.5, h1-49+37/2]) rotate([90, 0, 0]) cube([notch, 100, 10]);
|
|
translate([w/2, 29+20-0.01, r2]) rotate([90, 0, 0]) cylinder(h=20, r=r2, $fn=128);
|
|
translate([w/2-50/2, 4, 0]) cube([50, 29-6-6, h1+10]);
|
|
}
|
|
translate([17, 23, h1-39])
|
|
rotate([90, 90, 0])
|
|
linear_extrude(20)
|
|
polygon([[0, 11.5], [5, 19], [10, 20.5], [11, 19], [8.5, 12.5], [9.5, 11.5], [6.5, 1.5], [2.5, 0], [0, 2.5]]);
|
|
}
|
|
translate([-120, 0, -75])
|
|
difference()
|
|
{
|
|
cube([235, 40, 30]);
|
|
translate([20, 50, 15]) rotate([90, 0, 0]) cylinder(r=2.5, h=100);
|
|
translate([215, 50, 15]) rotate([90, 0, 0]) cylinder(r=2.5, h=100);
|
|
}
|
|
}
|
|
translate([-120, 0, -75])
|
|
union()
|
|
{
|
|
translate([-1, -1, -1]) cube([101, 42, 31]);
|
|
//translate([100, -1, -1]) cube([30, 42, 11]);
|
|
translate([0, 20-0.4, -1]) cube([120+0.4, 10+0.8, 31]);
|
|
translate([110, 10-0.4, -1]) cube([10+0.4, 20+0.8, 31]);
|
|
}
|
|
}
|
|
|
|
//mirror()
|
|
translate([-150, 0, -75])
|
|
intersection()
|
|
{
|
|
difference()
|
|
{
|
|
cube([235, 40, 30]);
|
|
translate([20, 50, 15]) rotate([90, 0, 0]) cylinder(r=2.5, h=100);
|
|
translate([215, 50, 15]) rotate([90, 0, 0]) cylinder(r=2.5, h=100);
|
|
}
|
|
union()
|
|
{
|
|
translate([-1, -1, -1]) cube([102, 42, 32]);
|
|
//translate([100, -1, -1]) cube([30, 42, 11]);
|
|
translate([0, 20-0.2, -1]) cube([121+0.2, 10+0.4, 32]);
|
|
translate([111, 10-0.2, -1]) cube([10+0.2, 20+0.4, 32]);
|
|
}
|
|
}
|