Sortieren
-
Hallo,
das Sortieren von X:Y Ordinaten, hat eine lange Historie, bisher hat es mir
gereicht via : std:sort(begin,end,SortXY) gute Ergebnisse zu erzielen.Standard pair sort:
static bool SortXY(const CPoint &p1, const CPoint &p2) { return (p1.x == p2.x ? p1.y < p2.y : p1.x < p2.x); }
Auch sehr Wirksam:
static bool SortNear(const CPoint &p1, const CPoint &p2) { return (p1.x*p1.x + p1.y*p1.y) < (p2.x*p2.x + p2.y*p2.y); }
Unlängst stelle ich fest, das es auch unrichtige folgen in der Sortierung gibt, auch ein invertierter zweiter Durchgang bringt keine Besserung.
Gibt es bekannte GPU -Sort Funktionen ? Oder noch bessere Verfahren zur
Sortierung von x,y Pärchen ?(Sicher kann man sich an dem Thema lange aufhalten)
Danke für Hinweise
Karsten.
-
Achromat schrieb:
Unlängst stelle ich fest, das es auch unrichtige folgen in der Sortierung gibt, auch ein invertierter zweiter Durchgang bringt keine Besserung.
Was is?