// unser Lego Bild
PImage img;
// die Breite und Höhe einer Kachel,
// diese berechnen wir über die Anzahl der
// Zeilen und Spalten
int gridStepX;
int gridStepY;
// aus wieviel Zeilen und Spalten besteht
// das Gittermuster
int numRows = 5;
int numCols = 5;
void setup() {
// Groesse der Anwendung = Groesse des Bildes
size(400, 375);
background(255);
// Bild laden
img = loadImage("lego.jpg");
// Grösse der Kachel berechnen
// Groesse = Gesamtgrösse / Anzahl der Spalten
gridStepX = width / numRows;
gridStepY = height / numCols;
}
void draw() {
// wir "schneiden" uns unser Kachelstück
// an der aktuellen Mausposition heraus,
// und speichern dies in einem neuen Bild
PImage imgPart = img.get(mouseX, mouseY, gridStepX, gridStepY);
// gehe in 'Kachelschritten' entlang der Breite
for (int x=0; x < width; x = x + gridStepX) {
// gehe in 'Kachelschritten' entlang der Hoehe
for (int y=0; y < width; y = y + gridStepY) {
// zeichne das aktuelle Kachelbild an
// der jeweiligen Stelle
image(imgPart, x, y);
}
}
}