Files
3D/camion/entrebailleur.scad
2025-08-04 11:08:25 +02:00

81 lines
3.1 KiB
OpenSCAD

$fn=60;
include <BOSL2/std.scad>
diam=20;
module vent() {
difference() {
spheroid(d=diam, style="octa");
spheroid(d=diam-6, style="octa");
translate([0,0,-diam/4]) cuboid([diam,diam,diam/2]);
translate([0,-diam/4,0]) cuboid([diam,diam/2,diam]);
}
}
// part 1
*color ("blue") {
difference() {
union() {
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_in1.svg");
linear_extrude(height = 10, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_out1.svg");
}
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_off.svg");
translate ([30,12,0]) zcyl(d=diam/3, l=10);
translate ([105,18,0]) zcyl(d=diam/3, l=10);
translate([135,18,0]) xcyl(d=3, l=50);
translate([135,28,0]) xcyl(d=3, l=50);
}
translate ([30,10,0]) vent();
translate ([105,16,0]) vent();
}
// part 2
*color ("red") {
difference() {
union() {
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_in2.svg");
linear_extrude(height = 10, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_out2.svg");
}
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_off.svg");
translate ([180,20,0]) zcyl(d=diam/3, l=10);
translate ([250,20,0]) zcyl(d=diam/3, l=10);
translate([135,18,0]) xcyl(d=3, l=50);
translate([135,28,0]) xcyl(d=3, l=50);
translate([290,15,0]) xcyl(d=3, l=50);
translate([290,25,0]) xcyl(d=3, l=50);
}
translate ([180,18,0]) vent();
translate ([250,18,0]) vent();
}
// part 3
*color ("pink") {
difference() {
union() {
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_in3.svg");
linear_extrude(height = 10, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_out3.svg");
}
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_off.svg");
translate ([330,17,0]) zcyl(d=diam/3, l=10);
translate ([400,10,0]) zcyl(d=diam/3, l=10);
translate([290,15,0]) xcyl(d=3, l=50);
translate([290,25,0]) xcyl(d=3, l=50);
}
translate ([330,15,0]) vent();
translate ([400,8,0]) vent();
}
// part 4
color ("cyan") {
difference() {
union() {
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_in4.svg");
linear_extrude(height = 10, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_out4.svg");
}
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_in3.svg");
linear_extrude(height = 5, center = true, scale=1) import("/home/julien/Sync/3D/camion/profil_off2.svg");
translate ([330,17,0]) zcyl(d=diam/3, l=10);
translate ([400,10,0]) zcyl(d=diam/3, l=10);
translate([290,15,0]) xcyl(d=3, l=50);
translate([290,25,0]) xcyl(d=3, l=50);
}
}