Skip to content

slicing.scad

pinkfish edited this page Apr 19, 2026 · 4 revisions

LibFile: slicing.scad

This file has all the shared pieces for slicing a model into sections.

To use, add the following lines to the beginning of your file:

include <boardgame_toolkit.scad>

File Contents

  1. Section: Slicing

Section: Slicing

Module: SplitBox()

Topics: Slicing

Usage: SplitBox(width, length, height) { ... }

Description:

Slices up the box making a left and right part of the object. First child is the object to slice up second child is the piece to use for making the join (this should be in 2d).

Arguments:

By Position What it does
apart how far apart to move the pieces on the split (default = 10)
minX the minX to cut at (default = -200)
maxX the maxX to cut at (default = 200)
minY the minY to cut at (default = -200)
maxY the maxY to cut at (default = 200)
minZ the minZ to cut at (default = -200)
maxZ the maxZ to cut at (default = 200)
play the offset on the piece to add as play (default 0.1)
y specific places to do the join points at (default calculated based on minY/maxY)
orient orientation of the box (default UP)
spin spin of the join point (default 0)
size the size of the object [width, length, height]

Example 1:

SplitBox() Example 1
include <boardgame_toolkit.scad>
SplitBox([100, 50, 20], spin = 90) {
     MakeBoxWithSlipoverLid(size = [100, 50, 20],
         foot = 2, floor_thickness = 1.5, lid_thickness = 1.5, wall_thickness = 1.5)
     {
         cube(97, 47, 20);
     }
     MakePuzzleJoin();
}

Example 2:

SplitBox() Example 2
include <boardgame_toolkit.scad>
SplitBox([100, 50, 20], orient = LEFT, spin = 90) {
     MakeBoxWithSlipoverLid(size = [100, 50, 20],
         foot = 2, floor_thickness = 1.5, lid_thickness = 1.5, wall_thickness = 1.5)
     {
         cube(97, 47, 20);
     }
     MakePuzzleJoin();
}

Example 3:

SplitBox() Example 3
include <boardgame_toolkit.scad>
SplitBox([100, 50, 20], orient = FRONT) {
     MakeBoxWithSlipoverLid(size = [100, 50, 20],
     foot = 2, floor_thickness = 1.5, lid_thickness = 1.5, wall_thickness = 1.5)
     {
         cube(97, 47, 20);
     }
     MakePuzzleJoin();
}

Module: MakePuzzleJoin()

Topics: Slicing

Usage: MakePuzzleJoin()

Description:

Makes a join like a puzzle piece. This is the a way to join together two pieces of the system along the middle line using the puzzle piece shape.

Arguments:

By Position What it does
height total height/length of the puzzle piece (default 10)
width width of the circular head (default 10)
base width of the stem base (default 5)
stem stem of the piece (default 6)

Example 1:

MakePuzzleJoin() Example 1
include <boardgame_toolkit.scad>
MakePuzzleJoin();



Example 2:

MakePuzzleJoin() Example 2
include <boardgame_toolkit.scad>
MakePuzzleJoin(height = 20, width = 5, base = 10, stem = 5);




Clone this wiki locally