<< Chapter < Page Chapter >> Page >
To have a clear understanding of computer science terms such as those that follow, we recommend lookingat Wikipedia
scope
within a program, it is a region where a variable can be accessed and its valuemodified
global scope
defined outside the methods setup() and draw(), the variable is visible andusable anywhere in the program
local scope
defined within a code block or a function, the variable takes values that arelocal to the block or function, and any values taken by a global variable having the same name are ignored.

Array declaration and allocation

int[] arrayDiInteri = new int[10];
Got questions? Get instant answers now!

Programming structures

Conditional instructions

  • if: if (i == NMAX) { println("finished");} else {i++; }

Iterations

  • while: int i = 0; //integer counter while (i < 10) { //write numbers between 0 and 9 println("i = "+ i); i++; }
  • for: for (int i = 0; i < 10; i++) { //write numbers between 0 and 9 println("i = "+ i); }

Initializing a table of random numbers

int MAX = 10; float[] tabella = new float[MAX]; for (int i = 0; i < MAX; i++) tabella[i] = random(1); //random numbers between 0 and 1 println(tabella.length + " elements:"); println(tabella);
Got questions? Get instant answers now!

Functions

Functions allow a modular approach to programming. In Processing, in the intermediate programming mode, we can define functions other than setup() and draw() , usable from within setup() and draw() .

Example of function

int raddoppia(int i) { return 2*i; }
Got questions? Get instant answers now!

A function is characterized by the entities (with reference to the example ) :

  • return type ( int )
  • name ( raddoppia )
  • parameters ( i )
  • body ( return 2*i )

Objects and classes

A class is defined by a set of data and functions. An object is an instance of a class. Vice versa, a class is the abstractdescription of a set of objects.

For an introduction to the concepts of object and class see Objects and Classes .

Example of class

Dot myDot; void setup() { size(300,20); colorMode(RGB,255,255,255,100); color tempcolor = color(255,0,0); myDot = new Dot(tempcolor,0); } void draw() { background(0); myDot.draw(10); } class Dot { color colore; int posizione; //****CONSTRUCTOR*****// Dot(color c_, int xp) { colore = c_; posizione = xp; } void draw (int ypos) { rectMode(CENTER); fill(colore); rect(posizione,ypos,20,10); } }
Got questions? Get instant answers now!

A class is characterized by the following entities (with reference to the example ) :

  • name ( Dot )
  • data ( colore, posizione )
  • constructor ( Dot() )
  • functions (or methods, draw() )

An object (instance of a class) is declared in the same way as we declare a variable, but we have to allocate a space for it(as we did for the arrays) by means of its constructor (with reference to the example ).

  • Declaration: ( Dot myDot; )
  • Allocation: ( myDot = new Dot(tempcolor,0) )
  • Use: ( myDot.draw(10); )

For a quick introduction to the Java syntax see Java Syntax Primer

With the following draw() method we want to paint the window background with a gray whose intensity depends on the horizontal position of themouse pointer. void draw() { background((mouseX/100)*255);} However, the code does not do what it is expected to do. Why?

The variable mouseX is of int type, and the division it is subject to is of the integer type. It is necessary to perform a type casting from int to float by means of the instruction (float)mouseX .

Got questions? Get instant answers now!

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Media processing in processing. OpenStax CNX. Nov 10, 2010 Download for free at http://cnx.org/content/col10268/1.14
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Media processing in processing' conversation and receive update notifications?

Ask