1st Edition

Processing for Visual Artists How to Create Expressive Images and Interactive Art

By Andrew Glassner Copyright 2010
    954 Pages
    by A K Peters/CRC Press

    954 Pages
    by A K Peters/CRC Press

    Learn how to create gorgeous and expressive imagery with the Processing graphics language and environment. It's easy with this practical, hands-on book. Processing is for artists, designers, visualization creators, hobbyists, or anyone else looking to create images, animation, and interactive pieces for art, education, science, or business. Processing for Visual Artists shows you everything you need to know in a friendly, project-based style designed for visual thinkers.

    The projects can serve as a starting point for your own original, creative development and exploration. Walk with veteran author Andrew Glassner on a journey of shared discovery as he uses Processing to take each project from inspiration to reality. You'll closely follow every step he takes and see exactly how each piece evolves, including the big and small mistakes he's made along the way (and how to fix them!), and the times when he changed direction.

    As your knowledge and skills grow and develop, you'll understand why Processing is such a powerful tool for self-expression. And you'll be ready to strike off on your own. Processing offers you a 21st-century medium for expressing new kinds of ideas and engaging audiences in new ways. This book gives you everything you need to know to explore new frontiers in your own images, animations, and interactive experiences.

    Source code for each chapter is available for free download on the book's description at the crcpress website.






    What Is Processing?

    Experiment Freely!



    Entering Programs

    Programming as Expression

    Setting Up and Getting Started

    Hello, World!


    Working with Processing

    Basic Ideas: Variables

    Naming Things


    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



    Speed and Control


    Function Overloading

    Defining Colors

    HSB Colors

    Graphics Primitives

    Naming Points

    Basic Shapes

    Graphics State

    Irregular Shapes

    Graphics Windows

    Human Input


    Mouse Buttons

    The Keyboard

    A Simple Game

    Loops and Transparency




    Understanding Transformations

    Accumulating Transformations

    Order Matters

    Nested Transformations


    Recursive Teacups

    Extending the Teacups

    Drawing Boxes within Boxes

    Randomness and Arrays

    Random Numbers


    Manipulating Arrays

    Deletingan Array Entry


    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 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


    2D Arrays

    Displaying Images

    The Pixel Array

    Image Manipulation

    Applying Texture

    SVG Objects

    Working with Files



    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


    Building the Lamp


    Ascending Blobs

    Personalizing Your Lamp



    Showing Strings


    3D Objects

    Making Shapes in 3D

    Controlling 3D

    3D Camera

    3D Lights


    Other 3D Tools


    Useful Odds and Ends

    Push and Pop Styles


    Time and Date

    Saving Your Images

    Window Wraparound


    Types and Type Conversion

    Offscreen Drawing

    Reading and Writing Modes


    Web Applets

    User Events


    Going Beyond


    Stacked Contours

    Crystal Towers


    Neon Sign


    Puppet Show

    Spooky Plants

    Big Projects

    Tackling a Project

    Organizing a Project

    Project 1: Sandstorm

    Project 2: Postcards from Another Planet


    Alphabetical Listing

    Listing by Function

    Object Methods



    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