Customizable Coaster – Shannon & Skylar

Initial Design Idea

  • We are going to create different shaped coasters. We thought this idea would be great to learn and manipulate a code we found on “GithubGist” of a star. We intend on doing one star, one cloud, and an abstract shape.
  • We know how to create basic shapes using OpenScad, and we know that coasters are useful. We know what shapes we intend to create and code that we intend to manipulate
  • We will have to learn to use the “Linear Extrude” tool to make the original code three-dimensional, and learn to take the initial code and render it to be different from the star. We might also try and make the coasters have a customizable monogram, if so we will need to learn to include fonts. We will learn by researching and watching Youtube Tutorial videos.

Design Iteration

linear_extrude (height = 4)


// points = number of points (minimum 3)

// outer  = radius to outer points

// inner  = radius to inner points

module Star(points, outer, inner) {

// polar to cartesian: radius/angle to x/y

function x(r, a) = r * cos(a);

function y(r, a) = r * sin(a);

The code above was found on “GithubGist.” The top portion of the code “linear extrude” makes the object have dimension. The code below that is the name of the objects shape with the dimensions. We had to add the “linear extrude” feature because the original code was two-dimensional. We used the “linear extrude” feature to add height to the coaster. We are going to continue to change the dimensions and the increment points. We eventually are going to try and add some words on the top of the coaster.

First Draft Print

Our first draft was a success and we were glad that the dimensions worked. We learned that we might need to make the coaster wider, and slightly flatter. We are going to try and fix the dimensions and change the shape from the original code.

Thingiverse Customizer

text(“Be Happy”, size=1.5);

linear_extrude (height = 2)


text(“Be Happy”)

star([10, 20, 40]);

translate([8, 0, 2]);


 text(“Be Happy”, size = 4.0);


With this code, people can customize the design by changing what text they want to be on the coaster. In order to do this people must insert the text they want into the “text(“_____”) section of the code. The next portion people can customize is the size of the font by changing the “size = ___” to whatever size they want the font to become. The last portion that can be customized is the dimensions of the shape by changing the “(30,20,20)” to whatever dimensions that suites the persons needs.

  • which parameters will you let users modify or not, and in what ranges?
  • include a screenshot of your model in use in the Thingiverse Customizer
  • upload code and demo model and image to Thingiverse and enable Customizer
  • add JMU3SPACE tag and link both ways between Thingiverse and this post

Final Prints

10 points, due by noon on Thursday 2/21

  • print three final customized versions of your model
  • include photos of your final prints and describe the parameters used for each
  • discuss these final prints and their strengths and weaknesses
  • change the Featured Image for this post to your photo of final print(s)