(Created page with " = Meandering Code =") |
|||
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Meandering Code = | = Meandering Code = | ||
----- | |||
== From Code to Curves == | |||
[[File:Beetleblocks_bsp.png|thumb|left|3D turtle graphics with [http://scratch-dach.info/wiki/Beetle_Blocks Beetleblox]]] | |||
<br style="clear:both;"> | |||
=== About === | |||
We will learn how to program turtles, and how to create abstract line drawings from code | |||
=== Goals === | |||
* Learn to use string processing functions | |||
* Learn to write a turtle code interpreter | |||
* Basics of Object Oriented Programming (OOP) | |||
=== Art === | |||
* John Venn: [https://archive.org/stream/logicofchance029416mbp#page/n153/mode/1up The Logic of Chance, Randomness and its scientific treatment, p188] (1888) | |||
* Boris Müller: [http://www.esono.com/boris/projects/poetry03/ Poetry on the Road] (2003) | |||
* Sven Heyll: [https://www.flickr.com/photos/sheyll/2272716536/ Turtle DNA Rendering] (2008) | |||
* Moritz Stephaner: [http://notabilia.net/ Notabilia] (2011) | |||
----- | |||
== Processing Curves == | |||
{{#ev:youtube|0x7rg9TpHSo|400|left|Evan Roth: Introducing Mozilla Mark Up|frame}} | |||
<br style="clear:both;"> | |||
=== About === | |||
We will get to know interfaces for creating curves, learn how to store them, and how to output them | |||
=== Goals === | |||
* Learn how to use Libraries in Processing | |||
* Learn how to read and write strings to files | |||
* File Formats Graffiti (GML) and Motion Capture (BVH) | |||
* Using input devices such as a Graphic Tablet, Tracking-System, etc. to create curves | |||
* Use Processing to output curves in the visual domain | |||
* Use Spacial Synthesizers such as Zirkonium and Iannix to output curves in the auditory domain | |||
=== Links === | |||
==== Drawing and Writing ==== | |||
* [http://www.graffitimarkuplanguage.com/ Graffiti Markup Language] (GML) | |||
* [http://000000book.com/ GML Database] | |||
* [https://www.youtube.com/watch?v=F5PwDe9r-Ik Universal Typeface] | |||
* [http://www.fki.inf.unibe.ch/databases/iam-on-line-handwriting-database Handwriting Database] | |||
* [http://www.cs.toronto.edu/~graves/handwriting.cgi Handwriting Generator] (using a Neural Net) | |||
==== Motion Capture ==== | |||
* [http://mocap.web.th-koeln.de/about.php Cologne Motion Capture Database] with WebGL Search! | |||
* [http://prix2013.aec.at/prixwinner/11219/ Perfume Global Site Project] | |||
* [https://github.com/perfume-dev/example-processing BVH Parser] for Processing | |||
* [https://github.com/01010101/GML4U GML Library] for Processing | |||
* [http://andrescolubri.net/processing/libraries/tablet/ Tablet] for Processing | |||
* [https://www.youtube.com/watch?v=nPab7pbOhBY Graphics Tablet Primer for Hackers] | |||
* [https://github.com/nok/leap-motion-processing Leap Motion Library] for Processing | |||
=== Spacial Synthesizers === | |||
* [http://www.iannix.org/en/ IanniX] (Visual Synthesizer) | |||
* [http://zkm.de/institute-forschungsstellen/institut-fuer-musik-und-akustik/software/zirkonium Zirkonium] (Surround Sound Synthesizer) | |||
----- | |||
== Transforming Curves == | |||
{{#ev:youtube|2xvczE4-5hs|400|left|Martin Schneider: Fractal Image Embroidery in Motion |frame}} | |||
<br style="clear:both;"> | |||
=== About === | |||
In this lecture we will learn how to transform curves programatically. | |||
* '''Rewriting Curves''' — In the 1st part we learn how to create space filling curves and meanders with the help of rewriting systems. | |||
* '''Remapping Curves''' — In the 2nd part we take curves to higher dimension and learn how to map points on a line to the plane (and back). | |||
=== Goals === | |||
* Basics of Fractal Geometry | |||
* Learn to work with data structures, arrays and vectors | |||
* Learn how to design Lindenmayer-Systems | |||
* Learn how to design Remapping-Systems | |||
=== Literature === | |||
{{note|There is a most excellent book, titled '''Brain-Filling Curves: A Fractal Bestiary''' by Jeffrey Ventrella.<br> | |||
Don't miss it. It's the best and most exciting book on spacefilling curves out there!}} | |||
* Aristid Lindemeyer and Przemyslaw Prusinkiewicz: [http://algorithmicbotany.org/papers/abop/abop.pdf The Algorithmic Beauty of Plants] (1990) | |||
* Jeffrey Ventrella: [https://archive.org/stream/BrainfillingCurves-AFractalBestiary/BrainFilling Brain-Filling Curves] (2012) |
Latest revision as of 17:54, 8 November 2016
Meandering Code
From Code to Curves
About
We will learn how to program turtles, and how to create abstract line drawings from code
Goals
- Learn to use string processing functions
- Learn to write a turtle code interpreter
- Basics of Object Oriented Programming (OOP)
Art
- John Venn: The Logic of Chance, Randomness and its scientific treatment, p188 (1888)
- Boris Müller: Poetry on the Road (2003)
- Sven Heyll: Turtle DNA Rendering (2008)
- Moritz Stephaner: Notabilia (2011)
Processing Curves
About
We will get to know interfaces for creating curves, learn how to store them, and how to output them
Goals
- Learn how to use Libraries in Processing
- Learn how to read and write strings to files
- File Formats Graffiti (GML) and Motion Capture (BVH)
- Using input devices such as a Graphic Tablet, Tracking-System, etc. to create curves
- Use Processing to output curves in the visual domain
- Use Spacial Synthesizers such as Zirkonium and Iannix to output curves in the auditory domain
Links
Drawing and Writing
- Graffiti Markup Language (GML)
- GML Database
- Universal Typeface
- Handwriting Database
- Handwriting Generator (using a Neural Net)
Motion Capture
- Cologne Motion Capture Database with WebGL Search!
- Perfume Global Site Project
- BVH Parser for Processing
- GML Library for Processing
- Tablet for Processing
- Graphics Tablet Primer for Hackers
- Leap Motion Library for Processing
Spacial Synthesizers
Transforming Curves
About
In this lecture we will learn how to transform curves programatically.
- Rewriting Curves — In the 1st part we learn how to create space filling curves and meanders with the help of rewriting systems.
- Remapping Curves — In the 2nd part we take curves to higher dimension and learn how to map points on a line to the plane (and back).
Goals
- Basics of Fractal Geometry
- Learn to work with data structures, arrays and vectors
- Learn how to design Lindenmayer-Systems
- Learn how to design Remapping-Systems
Literature
There is a most excellent book, titled Brain-Filling Curves: A Fractal Bestiary by Jeffrey Ventrella.
Don't miss it. It's the best and most exciting book on spacefilling curves out there!
- Aristid Lindemeyer and Przemyslaw Prusinkiewicz: The Algorithmic Beauty of Plants (1990)
- Jeffrey Ventrella: Brain-Filling Curves (2012)