Sok megoldás van. A körforgalom vizsgálatában keverem majd a szezont a fazonnal, azaz az elméletet a gyakorlattal.
Egyfelôl van egy, régóta működő rutin, mely végig fog menni az összes szakaszon és összekapcsolja azokat, melyek valamely, előre megadott paraméterben megegyeznek, ez esetünkben Type=0x0C (körforgalom, roundabout) lesz. Ez az algoritmus nem nézi a szakaszok irányultságát.
Egyből kiesnek azok az esetek, amikor a szakaszok nem állnak össze egy körbe. Hibaüzenet.
Kiesnek azok az esetek, amikor a kört alkotó szakaszok irányultsága nem ugyanaz (csomópontonként az egyik szakasz vége, a másik szakasz eleje kell legyen)
Majd az egymást követô csomópontok kooi egymás és az általuk meghatározható középpont közti viszonyaikból meg lehet állapítani, az óramutató járásával (rossz) vagy azzal ellentétes az irányultság.
Az utóbbi két esetben vagy hibaüzenet, vagy automatikusan javít a pgm.
P.s.: Az említett rutinban van valahol egy hangyányi hiba... Száz eset közül egyben nem kapcsol össze szakaszokat; fogalmam sincs miért, pedig kinéztem már mindkét szemem... Remélem, az új funkció tesztelése kihozza a hibát.
[ előzmény: (32017) zayd, 2009.08.17 18:59:11] |