Steward
分享是一種喜悅、更是一種幸福
手機 - Unihertz Titan 2 (None-EEA) - 設計外殼
OpenSCAD
$fn = 50;
h = 13;
bevel = 0.8;
module outer_shape() {
hull() {
translate([5, -2, 0]) cylinder(h, 5, 5);
translate([86, -2, 0]) cylinder(h, 5, 5);
translate([5, 139, 0]) cylinder(h, 5, 5);
translate([86, 139, 0]) cylinder(h, 5, 5);
}
}
difference() {
union() {
translate([0, 0, bevel])
linear_extrude(height = h - bevel)
projection(cut = false)
outer_shape();
hull() {
translate([0, 0, 0])
linear_extrude(height = 0.01)
offset(delta = -bevel)
projection(cut = false)
outer_shape();
translate([0, 0, bevel])
linear_extrude(height = 0.01)
projection(cut = false)
outer_shape();
}
}
translate([1, 1, 1])
cube([89, 138, 11]);
translate([-5, 1, 11])
cube([100, 138, 5]);
// camera
//translate([21.2, 84, -5])
//cube([48.8, 47.5, 10]);
// camera
hull() {
translate([22.7, 85.5, -3])
cylinder(5, 1.5, 1.5);
translate([22.7, 130, -3])
cylinder(5, 1.5, 1.5);
translate([68.5, 130, -3])
cylinder(5, 1.5, 1.5);
translate([68.5, 85.5, -3])
cylinder(5, 1.5, 1.5);
}
// fun keys
//translate([-1, 48, 2.5])
//cube([10, 31, 100]);
// fun keys
hull() {
translate([-3, 49, 3.5])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([-3, 49, 15])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([-3, 78, 3.5])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([-3, 78, 15])
rotate([0, 90, 0])
cylinder(5, 1, 1);
}
// power keys
//translate([90, 64, 2.5])
//cube([10, 43, 100]);
// power keys
hull() {
x0 = 65;
x1 = 106;
translate([88, x0, 3.5])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([88, x0, 15])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([88, x1, 3.5])
rotate([0, 90, 0])
cylinder(5, 1, 1);
translate([88, x1, 15])
rotate([0, 90, 0])
cylinder(5, 1, 1);
}
// speaker
translate([59, -1, 2])
union() {
hull() {
translate([0, 0, 0])
cylinder(10, 3, 3);
translate([20, 0, 0])
cylinder(10, 3, 3);
}
translate([-3, 0, 0])
cube([26, 10, 10]);
}
// usb type-c
translate([44 - 1.5, 4, 6.8])
rotate([90, 0, 0])
hull() {
r = 3.5;
translate([0, 0, 0])
cylinder(12, r, r);
translate([6, 0, 0])
cylinder(12, r, r);
}
translate([0, -10, 12])
cube([100, 20, 10]);
}
translate([0, 1, 10])
difference() {
translate([0, 0, 1])
cube([91, 1, 1]);
translate([0, 0.4, 0])
rotate([45, 0, 0])
cube([91, 3, 1]);
translate([56, 0, 0])
cube([26, 10, 10]);
}
translate([0, 138, 11])
difference() {
translate([0, 0, 1])
cube([91, 1, 1]);
translate([0, 2, 0])
rotate([135, 0, 0])
cube([91, 3, 1]);
}

列印完成

下邊

側邊

上邊

側邊

背面

完美
