Thursday, May 8, 2014

Day 255 - Sofabed and office chairs

Here's a secret: I might be a little bit obsessive. With the 3D printing. Of all the tiny furniture. I'm just saying, I think this might not be normal. But we press on...

Although we have to give away a lot of our current furniture to fit into our Brooklyn apartment, there is one important piece we actually have to acquire: a sofabed, for people who come to visit. The green sofabed design in the picture below has a panel that indicates the size of the bed when it is extended. The model is based on IKEA's Karlstad sofabed. We also updated our chair module to make rudimentary office chairs. This is a picture of our future office/guestroom:


Thingiverse link: http://www.thingiverse.com/make:77566

Settings: MakerBot Replicator 2 on .3mm/low with no raft and no supports.

Technical notes, OpenSCAD flavor: The sofabed module is just a simple modification of the sofa module from Day 248.

/////////////////////////////////////////////////////////////
// module for making sofa beds //////////////////////////////

module sofabed(depth1,depth2,length,height){
scale(s)
union(){
// back of sofa
cuboid(depth1/4,length,height,soft);
// left arm of sofa
cuboid(depth1,depth1/4,height*.6,soft);
// right arm of sofa
translate([0,length-depth1/4,0]) cuboid(depth1,depth1/4,height*.6,soft);
// cushions of sofa
cuboid(depth1,length,height*.4,soft);
// image of bed
cuboid(depth2,length,height*.1,soft);
}
}

The office chairs are a new option for the chair module from Day 253. We made a toggle so you can choose shape=straight or shape=roll. With roll the back and seat of the chair get softer corners, and the base is replaced by a cylinder meant to represent the rolly wheels on an office chair. The base is connected with a rectangle instead of a post so that the model can print on its side without any supports. It looks kind of like a dentist's or hairdresser's chair so if you're designing a dentist's office or hair salon, this model is for you.

/////////////////////////////////////////////////////////////
// module for chairs ////////////////////////////////////////

module chair(depth,length,height,shape){
scale(s)
union(){
// top of chair
if (shape=="straight")
translate([0,0,height*.4]) 
cuboid(depth,length,height*.1,sharp);
if (shape=="roll")
translate([0,0,height*.4]) 
cuboid(depth,length,height*.1,soft);
// back
if (shape=="straight")
cuboid(depth*.15,length,height,sharp);
if (shape=="roll")
translate([0,0,height*.4]) 
cuboid(depth*.15,length,height*.6,soft);
// front
if (shape=="straight")
translate([depth*.85,0,0]) 
cuboid(depth*.15,length,height*.5,sharp);
if (shape=="roll")
union(){
translate([depth*.85/2,0,0]) 
cuboid(depth*.15,length,height*.45,sharp);
translate([depth/2,length/2,0]) 
cylinder(r=length/2,h=height*.1);
}
}
}

No comments:

Post a Comment