Beschreibung | ||||||||||||||||||||||||
Diese Funktion überprüft, ob ein Bild einen rechteckigen Bereich berührt oder überlappt. Dies ist besonders für Objekte mit transparenter Farbe gut geeignet. Die Prüfung geschieht pixelgenau - daher etwas langsamer als IMAGERECTOVERLAP. Um die Kollision zwischen zwei Bilder zu prüfen, ist der Befehl IMAGESCOLLIDE besser. Benutze MASKIMAGE, um eine transparente Farbe auszuwählen!![]() | ||||||||||||||||||||||||
Parameter | ||||||||||||||||||||||||
| ||||||||||||||||||||||||
Rückgabewert | ||||||||||||||||||||||||
0 = keine Kollision 1 = Kollision | ||||||||||||||||||||||||
Beispiel | ||||||||||||||||||||||||
Dieses Programm zeichnet einen Kreis. Wenn dieser Kreis einen rechteckigen Bereich berührt, dann wird das Programm gestoppt: GRAPHICS 640,480,0,1 gfxCircle=CREATEIMAGE(50,50) SETBUFFER IMAGEBUFFER(gfxCircle) COLOR 255,0,0 OVAL 10,10,30,30,1 SETBUFFER BACKBUFFER() Color 0,0,255 hotX=RND(50,610) hotY=RND(50,430) hotW=RND(20,100) hotH=RND(20,100) REPEAT circleX=MOUSEX() circleY=MOUSEY() CLS RECT hotX,hotY,hotW,hotH,0 DRAWIMAGE gfxCircle,circleX,circleY FLIP UNTIL IMAGERECTCOLLIDE (gfxCircle,circleX,circleY,0,hotX,hotY,hotW,hotH) TEXT 0,0, "Kollision! Maustaste drücken" FLIP WAITMOUSE() ENDGRAPHICS | ||||||||||||||||||||||||
Siehe auch | ||||||||||||||||||||||||
IMAGERECTOVERLAP, IMAGESCOLLIDE, IMAGESOVERLAP, RECTSOVERLAP |