Klar, mach ich spasseshalber mal...
Da kann nur bei rumkommen, dass ich bei meinem Algo anfangs manchmal gar nicht die längste Strecke zwischen zwei Punkten ermittle, sondern die 2. längste. Wenn das passiert, fängt der Algo vermutlich an zu zappeln. Faktisch zappelt er dann zwischen den beiden Punkten der eigentlich längsten Strecke, welche nun zu AB wird und der Punkt von Ex-AB, welcher weiter von dem neuen Mittelpunkt dieser Strecke weg ist, evtl. Punkt C.
Ich liste den Algo nun nochmal zusammenfassend auf, denn so scheint's zu gehen.
[CODE]1. Erstellen der BoundingBox. Dabei muss über jeden Punkt iteriert werden und wo man schon dabei
ist, kann dabei jeder Punkt als Linie zu einem noch nicht festgelegten fixpunkt in einer Liste
angelegt werden.
2. Den noch nicht festgelegten Fixpunkt in das Zentrum der Box legen und die Liste der Linien
der Länge nach absteigend sortieren. Der erste Eintrag der Liste ist Punkt A des Dreiecks.
3. Den gemeinsamen Fixpunkt auf Punkt A legen und Liste erneut absteigend sortieren. Der
erste Eintrag ist Punkt B des Dreiecks.
4. Den Mittelpunkt der Strecke AB in den Fixpunkt legen, erneut absteigend sortieren.
5. Wenn der erste Eintrag kürzer als die halbe Strecke AB ist, ist der augenblickliche Fixpunkt
der gesuchte Mittelpunkt, Strecke AB der Kreisdurchmesser und der Algo ist fertig.
6. Sonst enthält der Erste Eintrag der Liste Punkt C des Dreiecks.
7. Umkreismittelpunkt des Dreiecks berechnen und in Fixpunkt legen, Liste mal wieder
absteigend sortieren.
8. Ist der erste Eintrag länger als der augenblickliche Kreisradius, war AB nicht die längste
Strecke. Der erste Eintrag der Liste und Punkt C bilden nun die neue Strecke AB. Der Algo
wird ab 4. widerholt.
9. Der Algo ist durch.[/CODE]