Last active
December 27, 2015 17:59
-
-
Save dreamalligator/7366510 to your computer and use it in GitHub Desktop.
Beemo from Adventure Time
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Beemo by Antivapor | |
$fn=50;//number of fragments for arcs | |
//triangle button parameters | |
a=-5;//x | |
b=2;//z | |
c=-3.5;//y, use diffence of abs(a-c) for scaling | |
d=b+2;//z-thickness | |
p1=[a,b,c]; | |
p2=[a,d,c]; | |
p3=[a,d,a]; | |
p4=[a,b,a]; | |
p5=[c,b,c]; | |
p6=[c,d,c]; | |
t1=[0,3,2]; | |
t2=[0,2,1]; | |
t3=[3,0,4]; | |
t4=[1,2,5]; | |
t5=[0,5,4]; | |
t6=[0,1,5]; | |
t7=[5,2,4]; | |
t8=[4,2,3]; | |
//end of triangle parameters | |
difference(){ | |
//body | |
minkowski() { | |
cube(size = [15,10,2], | |
center = true); | |
// rounded corners | |
cylinder(r=2,h=2); | |
} | |
//face | |
translate([4,0,1]) minkowski() { | |
cube(size = [5,10,.1], | |
center = true); | |
// rounded corners | |
cylinder(r=.8,h=2); | |
} | |
//cassette slot | |
translate([-1,1,2]) cube( | |
size = [1,4.5,1] | |
); | |
//little blue button thing | |
translate([-1,-3.5,2]) cylinder(r=.5,h=1); | |
//right round buttons | |
translate([-5,-5,2]) cylinder(r=.8,h=1); | |
translate([-7,-3,2]) cylinder(r=1.1,h=1); | |
//triangle button | |
rotate(90,[1,0,0]) translate([0,0,6.5]) polyhedron( | |
points=[p1,p2,p3,p4,p5,p6], | |
faces =[t1,t2,t3,t4,t5,t6,t7,t8] | |
); | |
//dpad | |
translate([-5,2,2]) cube([1,3,1]); | |
translate([-6,3,2]) cube([3,1,1]); | |
//select and start | |
translate([-8,1,0]) minkowski() { | |
cube(size = [.3,1.2,1], | |
center = false); | |
// rounded corners | |
cylinder(r=.1,h=2); | |
} | |
translate([-8,3.6,0]) minkowski() { | |
cube(size = [.3,1.2,1], | |
center = false); | |
// rounded corners | |
cylinder(r=.1,h=2); | |
} | |
} | |
//eyes | |
translate([5,-3.4,1]) cylinder(r=.5,h=2); | |
translate([5,3.4,1]) cylinder(r=.5,h=2); | |
//mouth | |
translate([3,1.7,1]) cylinder(r=.6,h=2); | |
translate([3,-1.7,1]) cylinder(r=.6,h=2); | |
difference(){ | |
translate([3.5,0,2]) cylinder(r=2.3,h=2,center=true); | |
translate([4.2,0,2]) cylinder(r=1.5,h=2,center=true); | |
translate([6,0,2]) cube(size=[5.5,5.5,2],center=true); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment