Mouse conducts Ellipse
Click on the stage to make the object follow the mouse
float sollPosX, sollPosY; //zielposition wird bei mousklicken gesetzt float posX, posY; //aktuelle position der ellipse die sich dem zielpunkt nähert void setup(){ size(600, 600); smooth(); posX = 0; posY = 0; } void draw(){ background(255); //bei jedem draw() aufruf wird die position um 0.01 * Entfernugn-zum-Ziel gesetzt posX = posX + 0.01 * (sollPosX - posX); posY = posY + 0.01 * (sollPosY - posY); //ellispe an ihre aktuelle Position zeichnen stroke(0); ellipse(posX, posY, 20, 20); //zeichnet ein Kreuz an die Zielposition cross(sollPosX, sollPosY, 5); } void mousePressed(){ //einmal beim klicken aufgerufen //setzt zielpunkt auf aktuelle mouse Position sollPosX = mouseX; sollPosY = mouseY; } void cross(float _x, float _y, float s){ //setzt den strich rot stroke(255, 0, 0); //fügt eine neue Matrix ein pushMatrix(); //setzt den nullpunkt der matrix auf den //übergeben wert _x/_y translate(_x, _y); //zeichnet ein kreuz durch den Ursprung des Koordinatensystems line(-s, s, s, -s); line(s, s, -s, -s); //schliesst die Matrix wieder und beeinflusst dadurch //nicht darauf gezeichnete objekte popMatrix(); }