Customizable Picture Frame

Initial Design Idea

For our project, we want to create a customizable picture frame because we think it would be a fun, challenging project that we can use to hold our favorite memories. Maggie has knowledge of the Python coding language and found some similarities between openSCAD and Python. Bailey is new to coding but is a quick learner and understands what she has done so far. We both need to learn how to figure out what to do specifically to make objects on the frame customizable, and how to make it so they stay within the border of the frame. This project is definitely going to be challenging but with time and patience and a little bit of research I think we cam figure it out.

Design Iteration

module frame( height, width, border, overlap, back )
cube( [ height+2*(border-overlap), width+2*(border-overlap), back ], true );
cube( [ height+2*(-overlap), width+2*(-overlap), back+2 ], true );

/////flower big




import( "/Users/3space/Downloads/flower2.stl");







import( "/Users/3space/Downloads/heart.stl");

This code we used is from ‘Jinja’ titled ‘Customizable Fridge Magnet Picture Frame. The part of the code we inserted is to make the frame and the overlapped frame shown in the picture. One thing we had to change about the design is how we are going to customize it. We decided to add shapes based off of seasons to make the frame customizable. This will be shown in the first draft print. Another thing we want to change is the size of the hole for the magnet to fit the magnets we have in the 3Space classroom.

First Draft Print

Our print came out very successfully and as you can see from the design picture above, we added the extra shapes that will make the frame customizable. We learned that trying to create our own picture frame is fairly difficult considering we don’t have a lot of experience with OpenSCAD, so that is why we decided to use and reference someone else’s code. We like the idea of the magnetized picture frame because it will use less plastic when we print our final three models. We changed/modified the code so the seasonal figures will be added and we want to change the size of the magnet hole to fit the magnets we have in the classroom.

We plan on making the frame customizable in terms of the shapes around the border, as well as adding text, and more parameters on the frame shape and size. The frame currently has parameters for changing the height and width but we want to go beyond that. We are working on adding code from blender to add these shapes that are decoration into openscad. We want to put the text at the top and have the font, size, and placement changeable. We also want to make the magnet holes the size of the tiny magnets in the lab.

Thingiverse Customizer

///////// START OF PARAMETERS /////////////////

// The height of the picture

height = 45.5;

// The width of the picture

width = 36;

// The width of the frame border

border = 6;

// How much the border overlaps the edge of the picture

overlap = 2;

// How thick the frame is in total

thickness = 4;

// How thick the backing is

back_thickness = 2;

// The diameter of the magnet holes, 0 if you don't want holes. Even if you're not adding magnets, adding holes uses less plastic.

magnet_diameter = 12.8;

// whether or not to include a stand

stand = "NoStand"; //[ Stand, NoStand ]

// calibration, how many 10ths of a millimeter to adjust the backing size so it is a snug fit in the frame. Increase if it's too loose, decrease if it's too tight. Once you've found the right value for your printer you should be able to print frames of any size. Experiment with small frames first.

calibration = 0; //[-10:10]

// What to include on the plate

plate = "Both"; //[ Back, Front, Both ]


theme = 1 ;

//rotation of the text

rotate7 = 0;

//what the text says

text = "Spring" ; 


This set of code are all of the parameters the user can customize. This includes width and height of the picture frame, how much the border overlaps the frame, the thickness of the frame, diameter of the magnet holes, theme of the frame, rotation of the text, and what the text says. The themes we chose relate to seasons / holidays so we chose a flower (theme 1) , snowflake (theme 2), and a heart (theme 3). These themes are different shapes that we added into openscad through blender. We are letting the users modify the size and magnet holes to allow them to customize the frame to the size of the picture they want to use and if they want to have a magnet on the frame or not. The range for the frame is any number by tenths of millimeters. The magnet hole range is anywhere from 0 – 12.3 for the diameter of the hole with zero being no hole at all. 

Here it is on Thingiverse.

This screenshot shows some of our parameters at work on thingiverse customizer. The frame dimensions are highly customizable in terms of sizing. Not pictured is our parameters for changing text font and size, as well as our themes.

Example of the flower in Blender.

Final Prints

The parameters used for this print are that theme 1 (flowers) and theme 3 (hearts) is chosen and the magnet holes are set to a diameter of 12.7mm. The text was changed to “spring”.

The parameters of this frame are theme 2 (snowflake) and theme 3 (hearts). The text spacing was changed to make the letters more thin and the font is default. The magnet holes are set to zero. The hearts were translated. 

This frame has the text rotation to 20 degrees and translated the text to the bottom. the heart shapes are rotated inward to 30 and -30 degrees. Theme 1 (flowers) and theme 3 (hearts) are turned on. The text was changed to “love”. The magnet holes are set to zero and the stand parameter was turned on so the frame can stand on its own. The decorations were moved around the frame.

This frame has the parameters of 12.7 diameter magnet holes, the themes 1 (flowers) & 3 (hearts), and the size of the frame is smaller. The feature of this print is the text has changed and the font “lobster” is used in customizer. The same print was done twice, the black one shows the snowflake parameter which is theme 2, but the print failed.

Here are our final prints of this project. We tried to show variety in our prints. The orange “spring” frame is our best looking one in my opinion, because it has so many decorations. The weakness of that print is that the font is the default one, the fancy flowers came out thin, and the daffodils are not the way they are supposed to look. The red frame was made on an ultimaker and the rest on lulzbots, I think that the lulzbots did a better job of printing the frames smoothly. The winter frame was supposed to have snowflakes where the little dots are and they did not come out as well as the stand on the red frame. The main weakness is that the fonts did not come out right, but other than these issues I am overall happy with how these prints came out. The main strength was that our frames all fit together and are working, and the little flowers came out very cute.