Functions are an elementary part of programming languages. With them programs can be simplified and presented in a manageable and reusable way (modularisation). Functions also help us to keep our code organised and understandable.
Functions act as jumps in the program. In the event of a function call, the program jumps to the position where the function is defined and then returns after the function has been executed.
Most programming languages have many built in or native functions. To find out how the functions work, and what parameters they expect, we need to look at the processing documentation (https://processing.org/reference/).
Syntax of functions
There are two parts of a function. First there is the the function declaration, where the name of the function along with its properties and behaviors are defined. Next there is the function call, where the function is then actually executed. Functions may be called multiple times.
...
Functions can also return a value. This means when we return to the line where the function was called, it has now carried a number with it. In processing, functions that have no return value are declared with “void” return type.
Function Declaration
This is how the function is named, its return type and parameters defined with sudo code.
...
This is how we execute a function:
functionName(parameter,.....) ;
Further functional examples
This example shows how to write functions with return values.
Code Block |
---|
void setup()
{
println(addition(1,2));
println(addition(2,10));
}
int addition(int parameter1, int parameter2)
{
return parameter1 + parameter2;
} |
This example shows how to use functions around the code of legible and simple blocks (modularization).
Code Block |
---|
void setup() { size(300,300); smooth(); stroke(255,255,255); noFill(); } void draw() { background(0); bommel(100,10,140,50); bommel(150,10,190,50); bommel(200,10,240,50); } void bommel(int x,int y,int length,int size) { strokeWeight(1); line(x,y,x,y+length); strokeWeight(5); ellipse(x,y+length,size,size); } |
And here is our first interactive program:
Code Block |
---|
void setup()
{
size(300,300);
background(0);
}
void draw()
{}
void mousePressed()
{
println("x:" + mouseX + ", y:" + mouseY);
} |
Exercise
Create a Programm where a unique shape follows the mouse position.