Can Sleeve: Formattierung
This commit is contained in:
parent
a706ce3f8c
commit
cbf5f1da13
|
@ -15,84 +15,86 @@ wall = 0.8;//[0.1:0.1:2.4]
|
||||||
// Interior ribs
|
// Interior ribs
|
||||||
ribs = 7;// [1:1:9]
|
ribs = 7;// [1:1:9]
|
||||||
|
|
||||||
include <../lib/defaults.scad>;
|
include <../lib/defaults.scad>
|
||||||
use <../lib/text_on.scad>;
|
;
|
||||||
|
use <../lib/text_on.scad>
|
||||||
|
;
|
||||||
|
|
||||||
// For the Preview Crosssection
|
// For the Preview Crosssection
|
||||||
intersection() {
|
intersection() {
|
||||||
// To remove unnecessary edges
|
// To remove unnecessary edges
|
||||||
difference(){
|
difference() {
|
||||||
union() {
|
union() {
|
||||||
// Primary Cylinder, inner & outer wall
|
// Primary Cylinder, inner & outer wall
|
||||||
translate([0,0,thickness/2])
|
translate([0, 0, thickness / 2])
|
||||||
union(){
|
union() {
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(h = can_height-lip-2*thickness, r = can_dia / 2 + thickness, center = true);
|
cylinder(h = can_height - lip - 2 * thickness, r = can_dia / 2 + thickness, center = true);
|
||||||
cylinder(h = can_height-lip-2*thickness + .1, r = can_dia / 2+thickness-wall, center = true);
|
cylinder(h = can_height - lip - 2 * thickness + .1, r = can_dia / 2 + thickness - wall, center = true);
|
||||||
}
|
}
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(h = can_height-lip-2*thickness, r = can_dia / 2 +wall, center = true);
|
cylinder(h = can_height - lip - 2 * thickness, r = can_dia / 2 + wall, center = true);
|
||||||
cylinder(h = can_height-lip-2*thickness + .1, r = can_dia / 2, center = true);
|
cylinder(h = can_height - lip - 2 * thickness + .1, r = can_dia / 2, center = true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Rounded lip
|
// Rounded lip
|
||||||
translate([0,0,(can_height-lip-thickness)/2])
|
translate([0, 0, (can_height - lip - thickness) / 2])
|
||||||
rotate_extrude()
|
|
||||||
translate([(can_dia+thickness)/2,0,0])
|
|
||||||
intersection() {
|
|
||||||
circle(thickness/2);
|
|
||||||
translate([-(thickness+1)/2,0,0])
|
|
||||||
square(thickness+1);
|
|
||||||
}
|
|
||||||
// Bottom
|
|
||||||
translate([0,0,-(can_height-lip-3*thickness)/2])
|
|
||||||
rotate_extrude()
|
rotate_extrude()
|
||||||
translate([can_dia/2,0,0])
|
translate([(can_dia + thickness) / 2, 0, 0])
|
||||||
intersection(){
|
intersection() {
|
||||||
union(){
|
circle(thickness / 2);
|
||||||
difference(){
|
translate([-(thickness + 1) / 2, 0, 0])
|
||||||
circle(thickness);
|
square(thickness + 1);
|
||||||
circle(thickness-wall);
|
}
|
||||||
|
// Bottom
|
||||||
|
translate([0, 0, -(can_height - lip - 3 * thickness) / 2])
|
||||||
|
rotate_extrude()
|
||||||
|
translate([can_dia / 2, 0, 0])
|
||||||
|
intersection() {
|
||||||
|
union() {
|
||||||
|
difference() {
|
||||||
|
circle(thickness);
|
||||||
|
circle(thickness - wall);
|
||||||
}
|
}
|
||||||
circle(wall);
|
circle(wall);
|
||||||
rotate([0,0,45])
|
rotate([0, 0, 45])
|
||||||
square([thickness-2*wall,thickness*2-wall],center=true);
|
square([thickness - 2 * wall, thickness * 2 - wall], center = true);
|
||||||
}
|
}
|
||||||
translate([0,-thickness,0])
|
translate([0, -thickness, 0])
|
||||||
square(thickness);
|
square(thickness);
|
||||||
}
|
|
||||||
|
|
||||||
translate([0,0,-(can_height-lip-2*thickness)/2])
|
|
||||||
difference(){
|
|
||||||
cylinder(h=thickness, r=can_dia/2, center=true);
|
|
||||||
rotate([180,0,0])
|
|
||||||
resize([can_dia*.9,can_dia*.9,0],[true,true,false])
|
|
||||||
linear_extrude(height=thickness/2+.1)
|
|
||||||
import(file="1A_MainLogo_Cube_2021.svg", center=true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
translate([0, 0, -(can_height - lip - 2 * thickness) / 2])
|
||||||
|
difference() {
|
||||||
|
cylinder(h = thickness, r = can_dia / 2, center = true);
|
||||||
|
rotate([180, 0, 0])
|
||||||
|
resize([can_dia * .9, can_dia * .9, 0], [true, true, false])
|
||||||
|
linear_extrude(height = thickness / 2 + .1)
|
||||||
|
import(file = "1A_MainLogo_Cube_2021.svg", center = true);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Ribs for structural strengt & grip
|
// Ribs for structural strengt & grip
|
||||||
for(i = [-((ribs - 1) / 2):((ribs - 1) / 2)]) {
|
for(i = [-((ribs - 1) / 2):((ribs - 1) / 2)]) {
|
||||||
translate([0, 0, i * (can_height-lip) / (ribs + 1)])
|
translate([0, 0, i * (can_height - lip) / (ribs + 1)])
|
||||||
union() {
|
union() {
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(h = 2, r = can_dia / 2 + thickness, center = true);
|
cylinder(h = 2, r = can_dia / 2 + thickness, center = true);
|
||||||
cylinder(h = 2.1, r = can_dia / 2, center = true);
|
cylinder(h = 2.1, r = can_dia / 2, center = true);
|
||||||
}
|
|
||||||
rotate_extrude()
|
|
||||||
translate([can_dia / 2, 0, 0])
|
|
||||||
scale([.5, 1, 1])
|
|
||||||
circle(r = 1);
|
|
||||||
}
|
}
|
||||||
}
|
rotate_extrude()
|
||||||
}
|
translate([can_dia / 2, 0, 0])
|
||||||
text_on_cylinder(t=name, r=can_dia / 2 + thickness,h=can_height/2,size=10, center=true, cylinder_center=true, extrusion_height=wall, font="Hack Nerd Font");
|
scale([.5, 1, 1])
|
||||||
|
circle(r = 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
text_on_cylinder(t = name, r = can_dia / 2 + thickness, h = can_height / 2, size = 10, center = true, cylinder_center = true, extrusion_height = wall, font = "Hack Nerd Font");
|
||||||
}
|
}
|
||||||
if ($preview) {
|
if ($preview) {
|
||||||
translate([0, 5+can_dia/4, 0])
|
translate([0, 5 + can_dia / 4, 0])
|
||||||
cube([can_dia+10, 10+can_dia/2, can_height+10], center = true);
|
cube([can_dia + 10, 10 + can_dia / 2, can_height + 10], center = true);
|
||||||
translate([0,0,(thickness+lip)/2])
|
translate([0, 0, (thickness + lip) / 2])
|
||||||
%cylinder(h=can_height,d=can_dia,center=true);
|
%cylinder(h = can_height, d = can_dia, center = true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue