|
|
xiii | |
Foreword |
|
xv | |
Preface |
|
xvii | |
Contributors |
|
xxi | |
Authors |
|
xxiii | |
About the Cover |
|
xxv | |
|
|
1 | (6) |
|
1.1 Who is This Book For? |
|
|
1 | (2) |
|
1.2 Coding: Language or Mathematics? |
|
|
3 | (1) |
|
1.3 Coding With Visual and Verbal Cues |
|
|
4 | (3) |
|
Chapter 2 Introduction to Coding |
|
|
7 | (80) |
|
2.1 A Brief History of Coding |
|
|
8 | (2) |
|
2.2 Choosing a Programming Language |
|
|
10 | (6) |
|
2.2.1 Object-Oriented Programming (Oop) |
|
|
15 | (1) |
|
2.3 Basic Concepts in Coding |
|
|
16 | (4) |
|
2.3.1 Syntax and Semantics |
|
|
16 | (1) |
|
2.3.2 Assignment Statements |
|
|
17 | (1) |
|
|
17 | (1) |
|
|
17 | (1) |
|
|
18 | (1) |
|
2.3.6 Programming Languages & Computer Architecture |
|
|
19 | (1) |
|
2.4 Java, Some Background |
|
|
20 | (4) |
|
|
21 | (1) |
|
2.4.2 Attributes and Behaviour |
|
|
22 | (2) |
|
2.5 Introduction to Coding Animation |
|
|
24 | (13) |
|
2.5.1 First Animation: Expanding Circle |
|
|
24 | (1) |
|
2.5.1.1 Basic Animation of Simple Objects |
|
|
25 | (1) |
|
|
26 | (2) |
|
2.5.1.3 Initialisation and Configuration |
|
|
28 | (1) |
|
2.5.1.4 The Animation Process |
|
|
28 | (1) |
|
|
29 | (1) |
|
|
30 | (1) |
|
|
30 | (1) |
|
|
31 | (1) |
|
|
31 | (1) |
|
|
32 | (1) |
|
2.5.2.5 Animating the Morphing Process |
|
|
32 | (4) |
|
|
36 | (1) |
|
|
37 | (19) |
|
2.6.1 Building An Audio Visualiser |
|
|
38 | (1) |
|
|
39 | (2) |
|
2.6.3 Basic Line Graph Generator |
|
|
41 | (3) |
|
2.6.4 Basic Audio Waveform Static Visualiser |
|
|
44 | (7) |
|
2.6.5 Basic Audio Animated Visualiser |
|
|
51 | (2) |
|
2.6.6 Basic Audio Animated Visualiser Polarised |
|
|
53 | (3) |
|
2.7 Multisensory-Based Perception & Learning |
|
|
56 | (6) |
|
|
62 | (1) |
|
2.8 Multisensory-Based Coding |
|
|
62 | (25) |
|
2.8.1 The Elements of Design in Art |
|
|
63 | (1) |
|
|
64 | (1) |
|
2.8.2.1 Project: Meteorological Events |
|
|
65 | (1) |
|
|
65 | (2) |
|
|
67 | (1) |
|
|
67 | (4) |
|
2.8.5.1 Primary Colours in Pigment and Light |
|
|
71 | (1) |
|
2.8.5.2 Project: Drawing An Apple |
|
|
72 | (4) |
|
|
76 | (1) |
|
2.8.6.1 Showing Space in a 2D Drawing |
|
|
77 | (1) |
|
2.8.6.2 Perspective in Painting |
|
|
78 | (1) |
|
2.8.6.3 Cognitive Perception By Painters |
|
|
79 | (1) |
|
2.8.7 The Principles of Design in Art |
|
|
79 | (1) |
|
|
80 | (1) |
|
|
80 | (1) |
|
|
80 | (1) |
|
|
81 | (1) |
|
2.8.7.5 Variety and Contrast |
|
|
82 | (1) |
|
|
83 | (1) |
|
|
83 | (1) |
|
2.8.7.8 Analysis of Artworks |
|
|
83 | (1) |
|
|
84 | (1) |
|
2.8.9 Visual Aspects of Math, Computing, and Coding |
|
|
85 | (2) |
|
|
87 | (92) |
|
|
88 | (1) |
|
|
89 | (9) |
|
|
89 | (1) |
|
3.2.1.1 A Personal Account |
|
|
89 | (3) |
|
3.2.1.2 Portrait and Still Life As Ascii Art |
|
|
92 | (1) |
|
3.2.2 Landscape: a Cherry Tree |
|
|
93 | (1) |
|
3.2.2.1 How Does It Work? |
|
|
94 | (1) |
|
|
94 | (1) |
|
|
95 | (1) |
|
3.2.3 Project: Map of Winds |
|
|
95 | (1) |
|
|
96 | (2) |
|
|
98 | (18) |
|
3.3.1 Introduction to Geometric Art With Python |
|
|
98 | (1) |
|
3.3.1.1 Downloading and Installation |
|
|
99 | (1) |
|
|
99 | (2) |
|
3.3.1.3 Making and Saving Programs |
|
|
101 | (1) |
|
3.3.2 Examples and Experiments |
|
|
101 | (1) |
|
|
101 | (2) |
|
|
103 | (2) |
|
3.3.3 Adult Colouring Book Series |
|
|
105 | (3) |
|
3.3.4 Matlab: Algorithmic Generation of Design Patterns |
|
|
108 | (2) |
|
|
110 | (1) |
|
|
110 | (1) |
|
|
110 | (1) |
|
3.3.4.4 Some Qualifications |
|
|
111 | (2) |
|
|
113 | (1) |
|
3.3.4.6 Challenges and Projects |
|
|
113 | (1) |
|
3.3.4.7 Getting the Software and Using Matlab |
|
|
114 | (1) |
|
|
115 | (1) |
|
3.4 3D Visualiser With Java |
|
|
116 | (19) |
|
3.4.1 Simple Wireframe Tetrahedron |
|
|
117 | (4) |
|
3.4.2 Filled Coloured Tetrahedron |
|
|
121 | (3) |
|
3.4.3 Z-Buffered Coloured Tetrahedron |
|
|
124 | (1) |
|
3.4.4 Cosine Shaded Tetrahedron |
|
|
125 | (2) |
|
3.4.5 From Tetrahedron to Sphere |
|
|
127 | (2) |
|
3.4.6 Changing 3D Object to a Box |
|
|
129 | (1) |
|
3.4.7 Morphing Object From Spiky Tetrahedron to Sphere |
|
|
130 | (1) |
|
|
131 | (1) |
|
3.4.7.2 3D Object and Draw Method Class |
|
|
132 | (1) |
|
|
132 | (3) |
|
3.5 Audio Data to Drive 3D Morphing Animation |
|
|
135 | (17) |
|
3.5.1 Basic Sine Wave Generator |
|
|
137 | (2) |
|
3.5.2 Basic Sine Wave-Driven Animation |
|
|
139 | (7) |
|
3.5.3 Full Audio File-Driven Animation |
|
|
146 | (2) |
|
|
148 | (4) |
|
3.6 A Framework For Visualisation of Codes |
|
|
152 | (27) |
|
3.6.1 How to Build a Computer |
|
|
152 | (4) |
|
3.6.2 Projects Involving Expressive Themes |
|
|
156 | (1) |
|
3.6.2.1 Coding a Horse and a Rider, Across Media |
|
|
156 | (2) |
|
3.6.3 Scientific Visualisation |
|
|
158 | (1) |
|
3.6.4 Programming 3D Forms |
|
|
159 | (4) |
|
3.6.4.1 Creating Characters With Feelings |
|
|
163 | (11) |
|
|
174 | (5) |
|
Chapter 4 Interactivity and Visualising Inputs: Mouse, Data, Finger |
|
|
179 | (62) |
|
|
180 | (1) |
|
4.2 A Portrait: Person With a Jetpack |
|
|
180 | (2) |
|
4.3 Interactive Weather Tree Application |
|
|
182 | (36) |
|
|
183 | (9) |
|
4.3.2 Adding Some Controls |
|
|
192 | (8) |
|
4.3.3 Controlling Tree Class |
|
|
200 | (3) |
|
4.3.4 Connecting to a Live Feed |
|
|
203 | (1) |
|
4.3.5 Connecting to Openweather.Com |
|
|
204 | (3) |
|
4.3.6 Accessing the Data From Canvas Class |
|
|
207 | (5) |
|
4.3.7 Adding Rain to Our Display |
|
|
212 | (2) |
|
4.3.8 Driving the Tree Class From the Weather Data |
|
|
214 | (3) |
|
4.3.9 Adding Features to the Control Panel |
|
|
217 | (1) |
|
4.4 Adding Bling: Using Leds With Arduino |
|
|
218 | (23) |
|
|
219 | (1) |
|
|
219 | (1) |
|
4.4.3 Downloading and Installation |
|
|
219 | (1) |
|
4.4.3.1 Electronics Basics |
|
|
220 | (2) |
|
4.4.4 Arduino Programming |
|
|
222 | (3) |
|
4.4.4.1 Uploading to Arduino Board |
|
|
225 | (1) |
|
4.4.5 Wiring Leds to Arduino |
|
|
225 | (1) |
|
4.4.5.1 Wiring and Powering Circuits |
|
|
226 | (5) |
|
4.4.6 Current Limiting Resistor Calculation |
|
|
231 | (1) |
|
4.4.7 Controlling Multiple Leds |
|
|
232 | (4) |
|
4.4.8 Dimming An Led With Pulse Width Modulation |
|
|
236 | (1) |
|
|
237 | (1) |
|
4.4.10 Questions You Should Ask About Leds |
|
|
238 | (3) |
|
|
241 | (24) |
|
5.1 Code the Same Thing in Many Languages |
|
|
241 | (1) |
|
5.2 Translation of Fortran Into Java |
|
|
242 | (3) |
|
5.3 Image Processing in Java From Scratch |
|
|
245 | (3) |
|
5.3.1 Digital Images in Java |
|
|
246 | (1) |
|
5.3.2 Digital Image Processing |
|
|
246 | (1) |
|
5.3.3 Pattern Recognition |
|
|
247 | (1) |
|
|
247 | (1) |
|
5.3.5 Optical Character Recognition |
|
|
247 | (1) |
|
5.4 Basic Steps of Java Program Development |
|
|
248 | (4) |
|
5.4.1 Java Compiler Download and Installation |
|
|
248 | (1) |
|
5.4.2 Ide Software Download and Installation |
|
|
249 | (3) |
|
5.4.3 Writing Code to Develop Application |
|
|
252 | (1) |
|
5.4.4 Compile and Run Application |
|
|
252 | (1) |
|
5.5 Steps of Java Image Processing |
|
|
252 | (13) |
|
|
253 | (1) |
|
|
253 | (2) |
|
|
255 | (3) |
|
|
258 | (2) |
|
5.5.5 Save the Image File |
|
|
260 | (2) |
|
|
262 | (1) |
|
|
263 | (2) |
|
Chapter 6 Conclusions and Educational Propositions |
|
|
265 | (10) |
|
6.1 Coding in Curriculum-Graphical Thinking |
|
|
266 | (2) |
|
|
268 | (1) |
|
|
269 | (6) |
|
6.3.1 Books On Art and Cognition |
|
|
269 | (2) |
|
6.3.2 Books On Coding For Artists |
|
|
271 | (4) |
References |
|
275 | (6) |
Glossary |
|
281 | (4) |
Index |
|
285 | |