DSA Processing. Links Processing.org My Processing page Ben Fry Ben Fry’s Thesis on Computational Information DesignThesis Casey Reas siteCasey Reas Casey.

Slides:



Advertisements
Similar presentations
Creative Computing. \\ aims By the end of the session you will be able to: 1.Move objects around 2.Write simple interactive programs 3.Use the mouse position.
Advertisements

C Language.
Introduction to Programming
Game with US Beginner Tutorial. Welcome!! Who I am What is Processing? Basic Coding Input Methods Images Classes Arrays.
A Quick Introduction to Processing
Processing Lecture. 1 What is processing?
Variables and Operators
Emerging Platform#5: Processing 2 B. Ramamurthy 6/13/2014B. Ramamurthy, CS6511.
Computer Graphics Tz-Huan Huang National Taiwan University (Slides are based on Prof. Chen’s)
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
CP411 Computer Graphics, Wilfrid Laurier University Introduction # 1 Welcome to CP411 Computer Graphics 2012 Instructor: Dr. Hongbing Fan Introduction.
Processing Processing is a simple programming environment that was created to make it easier to develop visually oriented applications with an emphasis.
IAT 334 Java using Processing ______________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY.
IAT 800 Lab 1: Loops, Animation, and Simple User Interaction.
Wednesday, 9/4/02, Slide #1 1 CS 106 Intro to CS 1 Wednesday, 9/4/02  Today: Introduction, course information, and basic ideas of computers and programming.
Lecture 3 IAT 800. Sept 15, Fall 2006IAT 8002 Suggestions on learning to program  Spend a lot of time fiddling around with code –Programming is something.
Guide To UNIX Using Linux Third Edition
Chapter 8: Introduction to High-Level Language Programming Invitation to Computer Science, C++ Version, Fourth Edition.
Object Orientated Data Topic 5: Multimedia Technology.
Course: Introduction to Computers
G RAPHICS & I NTERACTIVE P ROGRAMMING Lecture 1 Introduction to Processing.
CS413: Java Programming language Applications Applets
20-753: Fundamentals of Web Programming Copyright © 1999, Carnegie Mellon. All Rights Reserved. 1 Lecture 16: Java Applets & AWT Fundamentals of Web Programming.
FUNDAMENTALS OF PROGRAMMING SM1204 SEMESTER A 2012.
Foundation Programming Introduction. Aims This course aims to give students a basic understanding of computer programming. On completing this course students.
Java Programming, 3e Concepts and Techniques Chapter 3 Section 62 – Manipulating Data Using Methods – Day 1.
CP2022 Multimedia Internet Communication1 HTML and Hypertext The workings of the web Lecture 7.
1 Agenda Administration Background Our first C program Working environment Exercise Memory and Variables.
1 k Jarek Rossignac,  2008 Processing  Install Processing  Learn how to edit, run, save, export, post programs  Understand.
OpenGl Graphics Programming. Introduction OpenGL is a low-level graphics library specification. It makes available to the programmer a small set of geomteric.
Creating a Logo – Lesson 3 1 Creating a Logo Lesson 3.
Keyboard and Events. What about the keyboard? Keyboard inputs can be used in many ways---not just for text The boolean variable keyPressed is true if.
Chapter 1 Introduction to Computers and C++ Programming Goals: To introduce the fundamental hardware and software components of a computer system To introduce.
Introduction to Processing CS 4390/5390 Fall 2014 Shirley Moore, Instructor September 3,
______________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] |
1 Graphics CSCI 343, Fall 2015 Lecture 2 Introduction to HTML, JavaScript and WebGL.
Programming for Artists ART 315 Dr. J. R. Parker Art/Digital Media Lab Lec 10 Fall 2010.
Introduction to Processing. 2 What is processing? A simple programming environment that was created to make it easier to develop visually oriented applications.
B. RAMAMURTHY Simulating Motion and Implementing Animation.
I Power Higher Computing Software Development Development Languages and Environments.
CIS 3.5 Lecture 2.2 More programming with "Processing"
Chapter 3 Syntax, Errors, and Debugging Fundamentals of Java.
1 Taif University Faculty Of Computers And Information Technology TA. Kholood Alharthi & TA. Maha Thafar First Semester AH.
Variables Art &Technology, 3rd Semester Aalborg University Programming David Meredith
Arrays. An array is a collection “The Dinner offers an array of choices.” In computer programming, an array is a collection of variables of the same data.
Processing Workshop. What is processing? “Processing is an open source programming language and environment for people who want to program images, animation,
Mouse Inputs in Processing. Interacting with the Mouse mouseX and mouseY: pg mouseXmouseY –The position of the mouse in the canvas pmouseX and.
Processing (Program Language) by Piseth Tep intro Processing is a code base visual design and electronic art programing. It were initiated by Casey Reas.
G RAPHICS & I NTERACTIVE P ROGRAMMING Lecture 2 More Programming with Processing.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
Continuous. Flow of Control Programs can broadly be classified as being –Procedural Programs are executed once in the order specified by the code varied.
Visualization Programming: “Libraries” and “Toolkits” Class visualization resources CSCI 6361.
1 SIC / CoC / Georgia Tech MAGIC Lab Rossignac Processing  Install Processing  Learn how to edit, run, save, export,
Review Random numbers mouseX, mouseY setup() & draw() frameRate(), loop(), noLoop() Mouse and Keyboard interaction Arcs, curves, bézier curves, custom.
Introduction to Processing Dominique Thiebaut Dept. Computer Science Computer Science Dominique Thiebaut Thiebaut -- Computer Science.
Project Information Abstract Project Objectives The objective of this project is to: Create a visual designer that will allow inexperienced end- users.
Processing == Java + Extra Utilities Processing Adds: – Drawing functions – Text and font manipulations – Image and video – 3D transformations – Keyboard.
Chapter 7 Introduction to High-Level Language Programming.
Reference: What is it? A multimedia python library – Window Management – Graphics geometric shapes bitmaps (sprites) – Input Mouse Keyboard.
Introduction to Processing David Meredith Aalborg University Art &Technology, 3rd Semester Programming.
MPEG-4 Binary Information for Scenes (BIFS)
Emerging Platform#1: Processing 3
Chapter 14, Translate & Rotate
Example: Card Game Create a class called “Card”
“Processing” easy coding Jens Dalsgaard Nielsen
More programming with "Processing"
Introduction to Problem Solving & Programming using Processing 2
Lecture 7: Introduction to Processing
Introduction to Problem Solving & Programming using Processing 2
Introduction to Problem Solving & Programming using Processing 2
Presentation transcript:

DSA Processing

Links Processing.org My Processing page Ben Fry Ben Fry’s Thesis on Computational Information DesignThesis Casey Reas siteCasey Reas Casey Reas at UCLA

Favourites Zipcodes by Ben FryZipcodes Dreamlines by Leonardo SolaasDreamlines Life automata by Chris WallaceLife automata

Origin Ben Fry and Casey Reas. Processing is a programming language and environment built for the electronic arts and visual design communities. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook. It is used by students, artists, designers, architects, and researchers for learning, prototyping, and production. Processing is a Object oriented language with a specific domain of multimedia. Programs are translated in to Java, compiled and executed seamless in the simple but effective Development environment. Once written, an application can be exported as a Java applet for inclusion in a website, or as a Java application.

// Storing Input // by REAS int num = 120; float mx[] = new float[num]; float my[] = new float[num]; void setup() { size(200, 200); smooth(); noStroke(); fill(255, 153); framerate(60); } void draw() { background(51); // Reads throught the entire array // and shifts the values to the left for(int i=1; i<num; i++) { mx[i-1] = mx[i]; my[i-1] = my[i]; } // Add the new values to the end of the array mx[num-1] = mouseX; my[num-1] = mouseY; for(int i=0; i<num; i++) { ellipse(mx[i], my[i], i/4, i/4); } Variables are typed just as they are in Java Array declaration Setup called once at the start Draw called once every frame HSV model fill colour for shapes Model is sequence of x,y values, oldest first Update model by losing the oldest and adding the mouse position Finally render the model as circles, oldest smallest.

Processing syntax Like java –Comments –Control structures –Assignment –Strongly typed variables Simple class definition Extensive library of functions to: –Set state of animation –Draw graphics (2D and 3D) –Get mouse input –File and web interaction

Animation Program Structure Code executes in a framework which calls functions at points in the processing loop –Start – setup() –Each frame – draw() Draw updates the Display window –Fresh canvas (buffer) at the start of draw() –Graphics commands update the canvas –When draw terminates, the canvas is written to the Display Window

Integrated Development Environment Syntax and language-aware editor –Colour-code syntax –Bracket matching –reserved words linked to reference manual Generally good diagnostics Extensive language examples Fast edit-compile-execute cycle Generate Java applet and application code Include Java code

Graphics Model Very powerful set of graphics primitives for line graphics –2-d and 3-d models + OpenGL –image and video manipulation –RGB and HSB colour models –Interaction from mouse and keyboard and serial port –Extensive font library Graphics drawn through a transformation matrix (2-d or 3-d) with matrix stack y x

Model- based animation Model Canvas visualise e.g. Spring User input External data source Screen render Processing manages User defined