Hallo Christine,
Stell Dir das Problem einfach so vor:
| |
--------
O |XX|
--------
| |O
Das "XX" ist Dein Rechteck. Die "-" und "|" sind die verlängerten Seitenlinien, die "O" sind die Kreise. Dann brauchst Du Fallunterscheidungen für die 9 Quadranten, die sich ergeben. Der erste Fall, Kreismittelpunkt innerhalb der Rechtecks, ist trivial, dann hast Du nochmal eine grundlegende Unterscheidung, wenn der Kreismittelpunkt in einem der horizontal oder vertikal neben dem Rechteck liegenden Quadranten ist, dann vergleichst Du die X bzw.Y-Koordinaaten des entsprechenden Eckpunkts mit dem Mittelpunkt + bzw. - Radius, im Quadranten links neben dem Rechteck also die X-Koordinaaten der linken Eckpunkte mit der X-Koordinaate des Kreises, die Y-Koordinaate spielt keine Rolle, weil der Kreis ja irgendwo auf der Linie schneiden kann.
In den Quadranten, die schräg ober/unter den Ecken liegen, rechnest Du die Entfernung der direkten Linie zum jeweiligen Eckpunkt aus, wenn die kleiner ist als der Radius, schneidet der Kreis.
Viele Grüße
Stephan