1 / 12
Customizable Slider Puzzle Generator (Print-In-Place) — zdjęcie 1
1 / 12

Customizable Slider Puzzle Generator (Print-In-Place)

Zamów wydruk tego modelu

Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.

Zapisane na tym urządzeniu.

Easily generate a unique sliding puzzle with your own custom message and dimensions!

Ocena
4,75 / 5
Polubienia
113
Pobrania
580
Wydruki
5
Wyświetlenia
2994
Oceny
4

Aktualizacja u źródła:

Informacje o modelu

Źródło
Printables
Licencja
Creative Commons — Attribution — Noncommercial — Share Alike

I tried to print a couple of different versions of this style of puzzle, but I had no luck… One puzzle fell apart while trying to solve it, while the others fused parts together. Despite attempts to adjust my flow rate and scale the model, I was having no luck. So, I decided to make my own version, but make it customizable via OpenSCAD!

The puzzle prints together as one frame and multiple squares. The squares are the parts that move, and the frame is the piece that restricts the squares. The number and size of the squares can be customized, and the frame will automatically size itself. The text and font of the squares can also be edited.

This design has a few features to make it easier to print. Elephant foot is less of an issue because the bottoms of the internal squares are chamfered. The gap between pieces can be changed depending on the accuracy of the printer. The height is directly related to the “overlap” of the squares, so even loose puzzles won't fall apart if the height is large enough.

Don't be afraid to experiment: if you break something or encounter an error, just re-download the file and start fresh!

Prerequisites

Intro to OpenSCAD

When you open up the PuzzleGenerator.scad file, you'll see some code on the left of the screen and a rough preview on the right. The model will look incorrect: it'll be flat and won't have any text.

To see an accurate model visualization, simply press F6. Do note that the model will take some time to render; on my machine, it can take between 10 and 30 seconds. Adding more squares or more complex fonts will increase the time.

If it looks good, use F7 to export the model as an STL file. Make sure to append .stl to the file name when saving the model.

Customization

All relevant variables are located at the top of the file. Change the necessary values, save the file (CTRL + S), re-render the model (F6), and export it (F7).

VariableNameExampleNotes
colsColumns3Number of squares along the X axis
rowsRows3Number of squares along the Y axis
sqTextText for Squares…Content for each square in puzzle; see below for details
sizeSquare Size14Side length of visible portion of each square
heightHeight6Height of puzzle; at least 4, but 6 is recommended
frameFrame Width6Width of frame; must be at least equal to height
inChamSquare Chamfer1Size of chamfer applied to each internal square
ouChamFrame Chamfer2Size of outer frame chamfer; must be less than half of height
gapTolerance0.4Gap between parts; start with nozzle size and experiment
textFontText Font"Arial"Font for text; can append “:style=Bold” for variants
textSizeText Size6Size for text; reduce if more than one character per square
textDepText Depth1How far to recess text; make negative to raise text
textRtText Shift Right0.3Move text right; make negative to move left
textUpText Shit Up0.3Move text up; make negative to move down
textDegText Rotate Degrees45Rotate text by a number of degrees
Font

Be careful with your font choice. Some fonts with fine details won't print well. Opt for bold, display fonts with no thin features. Adding “:style=Bold" to the font name really helps. Also, make sure textDep is a multiple of your layer height.

Tolerance

First, make sure your flow is dialed in. Your e-steps should be calibrated, and you should know the correct temperatures for your chosen filament. Try to reduce elephant foot as much as possible.

Start by setting gap to your nozzle size. Print a simple 2x2 puzzle with three squares and a height of 6. If the pieces feel loose, reduce the value by 0.05. If the pieces are too tight or fuse together, increase the value by 0.05. If the squares print successfully, but the pieces still feel “wobbly," consider increasing the height. The height dictates the “overlap” between the squares and can add stability to the puzzle.

Squares' Text

sqText is an array of strings for the puzzle. 

Make sure each string is surrounded by double quotes and separated by a comma. If the string is set to false or there's not enough strings in the array, then those squares will not be added to the puzzle. 

Multiple letters can be used (ex. “10”), but make sure to decrease textSize. Depending on the font, you may need to adjust textRt and textUp as well.

Breaking this array into multiple lines does not change the layout of the puzzle: you must adjust the cols and rows variables for correct sizing. 

Be sure to include one “hole” in the puzzle by setting one element of the array to false. If you don't, your puzzle won't move.

Below are some examples of sqText with the column and row count. Pay close attention to the formatting in the sqText array and how it's represented in the rendered puzzle.

Printing

  • Nozzle: 0.4mm
  • Layer Height: 0.2mm
  • Infill: 15%

The default settings on PrusaSlicer work great after adjusting your tolerances above. 

The squares may stick immediately after printing. Simply work the squares around to loosen it up.

If you change filament at the same height as textDep, you can make the text stand out. I like to set textDep to 1mm and height to 6mm. Then, I'll print the first millimeter in one color, the middle four millimeters in another, and the last millimeter in the first color. Check out the black and green puzzle in the photos.

Don't forget to rate and share a make!

Tagi