This is an old page , you can visit our new project page on the same topic in parashape

Framework for 3D Model Customizer

Master thesis by Shadan Sadeghian, supervised by René Bohne


This proposal which is my master thesis presents the flow of fabrication and design into a smaller area which is home and limits it to individuals. After presenting what has been achieved in hardware and software technology, it answers to a question of "what is missing?", and by presenting a solution and implementing it through a prototype-base process and usability testing, the user satisfaction is proved.


The first industrial revolution by some historians is known as a giant leap in the life style of societies. Cities around factories replaced villages, and family businesses and handwork turned into mass production with machines. Despite all advantages, then only skilled workers knew how the fabrication process is and only they were able to work with machines.
In the beginning of 1970s a new movement called DIY(Do It Youreslef) started which was encouraging people to learn skills to be needless of experts' help in making, repairing and customizing their things. DIY was welcomed really well by people, they started to share their ideas and teach and learn skills in magazines and video tapes, and later on , on internet.
With rise of digital fabrication which started by the invention of numerical controlled machines and later on computer numerical controlled machines and computer integrated machines the fabrication process became much easier and concrete. Digital fabrication which is categorized in subtractive and additive manufacturing is he new age technology of making things. 3D printers which are the magic creators of the new era, attracted the attention of many people such as DIYs. As the price and size of these fabricators reduced through years they became affordable to find their ways through homes and offices, this which is known as the next industrial revolution makes a small factory at each individual's home. Each person can become the designer of her own things and fabricate it at home.
Considering the greatness of personal and home fabrication, there is still a problem: one can expect a hobbyist or DIY person or designer be able of going through this process due to her experience, but a typical home user can not be expected to have designing skills to work with the existing CAD packages. Thus there has to be a user friendly frame work to make to user able of creating and customizing desired models to fabricate at home.

The first step to 3D printing is designing a 3D model. The designs are created by computer aided design (CAD) or animation modeling software such as OpenScad, AutoCad, Blender, TinkerCad, 3DTin, Google Sketchup and 123D Design. Each of these packages have their own specifications that can be used to fulfill our needs. One normally has to be acquaintance with mathematical representations of 3D objects and experienced enough with working with a CAD software to be able to represent her ideas and design in to a 3D model. As 3D printing technology is heading to find its way to homes, some companies such as Shapeways, Sculpteo, Autodesk 123D, and Cubify started releasing user friendly 3D modeling apps and creators which have less complex interface, and are aimed to make the design process almost possible for anybody with a basic computer knowledge. Moreover there exist 3D design libraries for people to share their designs or to download existing design to edit and manufacture. Some of these libraries are Thingiverse, Google 3D warehouse and Ponoko 3D model library where a high range of models are presented in different categories.
In this chapter we study the characteristics of the services mentioned above and try to find out what is missing for personal designers and fabricators.

Own Work

Research question

The novice 3D printer users generally get their designs from online 3D model libraries,where all the models are static or at least require design knowledge to be customized.In this thesis we are trying to answer the questions "How can we make the novice 3D printer user with no previous design experience capable of customizing her desired design?" and "How can a designers with no programming background make a parametric customizer out of her design?" the proposed answer is a framework which gets the design code and the parameters as input and generates a parametric customizer out of the design for the novice user to set the parameters and download the STL file to be printed.

User Analysis

The users of this frame work are divided in to two groups:
1. The novice 3d printer user who has no background in working with CAD and design.
2. The designer who is able to design models in CAD but has no programming background to make a customizer out of it.

Requirement Elicitation

According to the user groups we have the system requirements as follows:

Functional requirements:
1. The system should be browser based to support availability
2. The system should initially load the user interface and canvas.
3. The system should be WYSIWYG so that the design looks like the final product.
4. The system should support SCAD.
5. Designer user should be able to input her code of the design in the system to create a customizer out of it.
6. Designer user should be able to manipulate the code and verify changes in the model.
7. User(designer/novice user) should be able to zoom in/out and rotate the model to have an overview of details.
8. Designer user should be able to set parameters for her design.
9. The system should make controls according to the parameters defined on the interface.
10. The controls should show the scales of final product.
11. Designer user should be able to upload the customizer on her FabCenter Profile.
12. User(designer/novice user) should be able to upload the model on her FabCenter Profile.
13. User(designer/novice user) should be able to download the STL file of the model.

Non-functional Requirements:
1.Low learning curve
2.Required user ability(for designers): the system should require at list basic CAD knowledge for those users who want to create a customizer and input design code.
3.The system should support help with the libraryies used and commands
4. The response time should be short enough for each change made to the model , so that the user wont get exhausted.
5. The system should give a final feeling of satisfaction to the users.

Use case Analysis

will follow

Paper Prototype

Before anything is implemented the design is evaluated with paper prototype. The users are asked perform some tasks (the red routes of the system)and in the meanwhile their interaction is supervised, we also ask them to think aloud to so that the design flaws are recognized, in the end we ask about the total satisfaction and if there is something they would prefer to change.


After evaluating the results of user test with paper prototype, the changes will be induced in a mock up (from mybalsamic). This digital prototype gives the user a better feeling of working in front of a computer and with an app in comparison to paper prototype. The same evaluation techniques as in paper prototype are used to make the final changes in the interface to go through implementation.


will follow

Usability Testing

Conclusion and Future work

Created by sadeghian. Last Modification: Tuesday 07 of May, 2013 16:21:42 by sadeghian.

Media Computing Group at RWTH Aachen