69 lines
2.2 KiB
OpenSCAD
69 lines
2.2 KiB
OpenSCAD
string = "Name"; // Name which should be printed
|
|
logo = "Logo.svg"; // Path To File
|
|
logopos = -50; // Logoposition
|
|
center = true; // [true/false]
|
|
|
|
font = "Ubuntu:style=bold"; // Font name and style
|
|
letter_size = 50;
|
|
height = 10;
|
|
offset = 20;
|
|
spacing = 0.9;
|
|
current_color = "ALL";
|
|
hi_color = "#3FFF21";
|
|
lo_color = "#FB48C4";
|
|
|
|
module multicolor(color) {
|
|
if (current_color != "ALL" && current_color != color) {
|
|
} else {
|
|
color(color)
|
|
children();
|
|
}
|
|
}
|
|
|
|
union(){
|
|
translate([logopos,-5,0]) {
|
|
union(){
|
|
multicolor(lo_color) resize([0,0,5]) translate([0,0,-0.8]) {
|
|
linear_extrude(1) offset(offset*1.5) resize([letter_size*2,letter_size*2,0]) {
|
|
import(logo, center=center);
|
|
}
|
|
}
|
|
translate([0,0,0.1]){
|
|
multicolor(hi_color) linear_extrude(height) resize([letter_size*2,letter_size*2,0]) {
|
|
import(logo, center=center);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
union(){
|
|
multicolor(lo_color) resize([0,0,5]) translate([0,0,-0.8]) {
|
|
linear_extrude(1) offset(offset*1.5) text(string, size = letter_size, font = font, $fn = 64, spacing = spacing);
|
|
}
|
|
translate([0,0,0.1]){
|
|
multicolor(hi_color) linear_extrude(height) text(string, size = letter_size, font = font, $fn = 64, spacing = spacing);
|
|
}
|
|
}
|
|
translate([0,0,0.1]){
|
|
multicolor(hi_color) difference(){
|
|
union(){
|
|
linear_extrude(height) offset(offset*1.5) text(string, size = letter_size, font = font, $fn = 64, spacing = spacing);
|
|
|
|
translate([logopos,-5,0]) {
|
|
linear_extrude(height) offset(offset*1.5) resize([letter_size*2,letter_size*2,0]) {
|
|
import(logo, center=center);
|
|
}
|
|
}
|
|
}
|
|
|
|
multicolor(hi_color) union(){
|
|
linear_extrude(height*1.1) offset(offset) text(string, size = letter_size, font = font, $fn = 64, spacing = spacing);
|
|
translate([logopos,-5,0]) {
|
|
linear_extrude(height*1.1) offset(offset) resize([letter_size*2,letter_size*2,0]) {
|
|
import(logo, center=center);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|