Hallo,
ich habe eine Fläche, die durch ein TRect definiert ist (Flaeche: TRect). Auf dieser Fläche liegen viele andere TRect's (Belegt: array of TRect). Ich möchte nun wissen, wo ein freier Platz für das Rect "PlatzFuer" vorhanden ist. "PlatzFuer" darf keine TRect's aus "Belegt" berühren und muss such vollständig in "Flaeche" befinden. Die Suche soll von unten nach oben in "Flaeche" ausgeführt werden. Die X,Y-Koordinate der freien Fläche soll zurückgegeben werden. Gibt es dafür einen fertigen Algorithmus? Hat jemand eine Idee, wie man das besser (schneller) hinbekommt, als alle möglichen X,Y-Koordinaten einfach durchzutesten?
Delphi-Quellcode:
function FindeFreienPlatz(Flaeche, PlatzFuer: TRect; Belegt: array of TRect): TPoint;
begin
...
end;