Please note that index links to approximate location of each term.
Symbols and Numbers
#
(hash mark), 14
&&
(and), 98
/* */ (multiline comments), 62
//
(single-line comments), 62
[ ]
(square brackets), 3
{ }
(curly brackets), 13, 17–18, 50–51, 82
||
(or), 98
< >
(angle brackets), 83
2D fabrication, 147
2D shapes
transformation operations, 45–47
3D-View toolbar, xxiii
A
abstraction, 120
and (&&
) operators, 98
angle brackets (< >
), 83
Arduino, 148
assert()
function, 164
B
best practices
comments, 62
indentation, 21
module naming, 81
variable naming, 66
Boolean operations
combining, 98
if
statements, 98
C
center=true
parameters, 8
children
operations, 162
chr()
function, 164
Circuit Playground, 148
city of random skyscrapers project, 113
clock project, 112
code statements, 2
color
transformation, 72, 124, 160
comments, 62
community page, 144
computational thinking, 117–118
computing platforms, 148
concat()
function, 164
creative problem-solving, 147
cross-shaped cookie cutter, 80–82
cube
commands, 3
curly brackets ({ }
), 13, 17–18, 50–51, 82
cylinder
commands, 4–6, 89, 166
D
debugging
for
loops, 65
decomposition, 118
design cycle, 116
detail test project, 75
difference
operations, 12–16, 46–47
documentation, 144
donut-like shapes, 49
.dxf format, 53
E
Editor window, 2
emoji shapes, 44
extended if
statements, 100–103
F
faces
variable, 68
file formats
.dxf format, 53
.svg format, 53
font
parameters, 44
for
loops
mathematical operations, 67–68
visual reference, 171
G
Gheorghescu, Marius, 153
GitHub, 91
H
hash mark (#
), 14
I
if
statements
Boolean operators, 98
indentation, 21
intersection
operations, 12, 16–17, 161, 169
is()
function, 164
L
lab clamps project, 152
Leaning Tower of Pisa model
walking skeleton approach, 122–139
len()
function, 164
length
parameter, 85
let()
function, 164
linear_extrude
operation, 47–49
logical operators, 98
lookup()
function, 164
loops
debugging, 65
for
loops, 63–65, 67–68, 161–162, 171
visual reference, 171
loops and variables project, 74
M
mathematical operations, 66–69, 163–164
measuring spoons project, 149–150
micro:bit, 148
minkowski
operation, 33
modifier characters, 162
module
keyword, 81
modules
naming, 81
modules project, 93
multi-file approach, 123
multiline comments, 62
multmatrix
operations, 160
N
naming variables, 135
numeric values, 45
O
online citizenship, 146
OpenSCAD
or (||
) operators, 98
ord()
function, 164
order of operations, 66, 98–99
organization and development process, 139–140
origins, 3
P
parameters
overview, 2
center=true
, 8
font
, 44
length
, 85
order of, 5
size
, 44
twist
, 47
width
, 85
Pegboard Wizard, 153
physical computing, 148
practice projects
2D shapes, 56
city of random skyscrapers, 113
clock, 112
detail test, 75
lab clamps, 152
LEGO library, 94
loops and variables, 74
modules, 93
Pegboard Wizard, 153
project box, 58
random forest, 112
skyscraper, 94
storytelling dice, 57
trophy, 59
vacuum tools, 150
prisms, 167
problem-solving, 147
project box project, 58
projection
operations, 161
Q
quadratic growth, 68
R
random forest project, 112
rands()
function, 106
Raspberry Pi, 148
read-only variables, 163
rectangles, 167
render
operations, 162
resize
operations, 30–32, 160, 170
rotate
operations, 26–28, 159–160, 170
rotate_extrude
operations, 49–50
S
search()
function, 164
self-documenting names, 135
semicolons (;
), 3
shapes
centering, 8
combining, 12–19, 32–33, 168–169
extruding, 161
See also 2D shapes
single-line comments, 62
size
parameter, 44
skins, 32
skyscraper project, 94
square brackets ([ ]
), 3
statements, 2
.stl format
storytelling dice project, 57
string of characters, 43
studs, 86
.svg format, 53
syntax, 156
T
Thingiverse, 91
3D-View toolbar, xxiii
torus, 49
transformation operations
resize
operations, 30–32, 160, 170
rotate
operations, 26–28, 159–160, 170
rotate_extrude
operations, 49–50
visual reference, 170
translate
operations, 8–10, 159, 170
triple nesting, 72
trophy project, 59
truncated cones, 5
twist
parameter, 47
2D fabrication, 147
2D shapes
transformation operations, 45–47
U
union
operations, 12, 17–19, 32
use
keyword, 83
V
vacuum tools project, 150
variables
overview, 64
mathematical operations, 66–69
read-only, 163
writable, 163
version()
function, 164
vertices, 42
W
walking skeleton approach, 121, 122–138
width
parameter, 85
writable variables, 163
X
3.15.147.53