Preface Overview What Is Processing? Experiment Freely! Planning Commenting Entering Programs Programming as Expression Setting Up and Getting Started Hello, World! Debugging Working with Processing Basic Ideas: Variables Naming Things Types Using=for Assignment Semicolons and Errors Comments and Printing Functions and Tests Writing Functions setup()and draw() Curly Braces Integer Division Combined Operators Starting a Program Animation and Global Variables If Statements Conditional Switch Speed and Control Color Function Overloading Defining Colors HSB Colors Graphics Primitives Naming Points Basic Shapes Graphics State Irregular Shapes Graphics Windows Human Input Interpolation Mouse Buttons The Keyboard A Simple Game Loops and Transparency Loops Transparency Transformations Understanding Transformations Accumulating Transformations Order Matters Nested Transformations Recursion Recursive Teacups Extending the Teacups Drawing Boxes within Boxes Randomness and Arrays Random Numbers Arrays Manipulating Arrays Deletingan Array Entry Noise Catmull-Rom Curves Knots and Control Points Catmull-Rom Curves Assembling Curves Curves from Vertices Tightening Curves Working with Curves Tangents and Normals Finding a Point on a Curve B'ezier Curves B'ezier Curves Reading Code Offset B'ezier Curves Finding a Point Moving Curves Around Objects Objects and Methods Multiple Instances Object Methods Moving Disks Using this Controlling Access Some Projects Managing Memory Objects and Arrays Fall Leaves Basic Skeleton PVector Object Drawing a Leaf More Fun with Leaves Pointillism Leaves Images 2D Arrays Displaying Images The Pixel Array Image Manipulation Applying Texture SVG Objects Working with Files Digitizing Cleanup Final Display More File Options Extending the Project Creating Patterns Plotting a Function Building Blocks About Pattern-Making Functions Finding Angles Blending with Cosine Building Patterns Pattern Shaping Circle Packing An Action Lamp Bell Curves A Blobbier Lamp Optimization Building the Lamp Subclasses Ascending Blobs Personalizing Your Lamp Typography Strings Showing Strings 3D 3D Objects Making Shapes in 3D Controlling 3D 3D Camera 3D Lights Materials Other 3D Tools Greebles Useful Odds and Ends Push and Pop Styles Libraries Time and Date Saving Your Images Window Wraparound Debugging Types and Type Conversion Offscreen Drawing Reading and Writing Modes Blurring Web Applets User Events Gotchas Going Beyond Projects Stacked Contours Crystal Towers Skyline Neon Sign Streams Puppet Show Spooky Plants Big Projects Tackling a Project Organizing a Project Project 1: Sandstorm Project 2: Postcards from Another Planet Keywords Alphabetical Listing Listing by Function Object Methods Index
Dr. Andrew Glassner is a writer-director, and a consultant in story structure, interactive fiction, games, and computer graphics. He has carried out research in 3D computer graphics at Bell Communications Research, the IBM Watson Research Lab, Xerox PARC, and Microsoft Research. His many research papers and books cover theory and practice in fields such as 2D graphics, 3D graphics, interactive storytelling, and digital sound synthesis. His design work has been featured in locations from musical instruments and tattoos to iPhone applications to museum exhibits. Glassner is now a full-time writer-director and educator, and a consultant in storytelling and interactive fiction to the computer game and online entertainment industries.
Processing for Visual Artists: How to Create Expressive Images and Interactive Art teaches how to create imagery with the Processing graphics language, created for artists, designers or any using to create images and animation for arts or business purposes. It provides a project-based organization designed for artists and other types of visual thinkers, showing how to use Processing to create successful results. The step-by-step focus for each piece builds on knowledge and skills and makes for a fine pick for engaging artists who have Processing and want to make the most of it! --The Midwest Book Review, August 2011 The major contributions of this book are its uncompromising clarification of the creation of graphics using Processing and helping the reader to understand the principles underlying the language constructs to be used. ! the book has much to offer to an experienced programmer. I highly recommend the book for those who already write code, but want to extend their knowledge, to clarify concepts, to clean up bad practices they acquired elsewhere, and to improve their understanding in a richer context. The book is excellent for turning a beginning programmer into a self-confident and well-equipped one, who can not only admire and adopt, but also design and create expressive images similar to the ones discussed in the book. --Journal of Mathematics and the Arts, August 2011 ... quite accessible, using projects as platforms for teaching basics. A top pick, this includes color art image examples throughout. --The Midwest Book Review, January 2011 If you are a visual artist looking to take your work on a new path, Andrew Glassner's new book is an exciting and incredibly comprehensive guide to using Processing to create imagery with computation. --Daniel Shiffman, September 2010