Als Eingangs wir hier nur eine Reihe von Segmenten haben, ist ein Beispiel:Algorithmus alle einzelnen Bereiche von einer Figur zu bekommen
[AB] = [(0, 0), (0, 4)] ; [BC] = [(0, 4), (2, 6)]
[CD] = [(2, 6), (4, 0)] ; [DA] = [(4, 0), (0, 0)]
[CE] = [(2, 6), (5, 6)] ; [EF] = [(5, 6), (5, 3)]
[FG] = [(5, 3), (3, 3)] ; [HI] = [(2, 1), (4, 5)]
[JK] = [(1, 3), (2, 3)] ; [KL] = [(2, 3), (1, 1)]
[LJ] = [(1, 1), (1, 3)]
(sorry ich mein Bestes versucht, aber meine Bilder sind ein bisschen unscharf)
ich brauche alle einzelnen Bereiche zu finden. Bei der obigen Abbildung i 3 verschiedenen Bereichen haben würde, JKL, CEFG und {ABCD, JKL}:
Beachten Sie, dass Segmente, die keinen Bereich machen, werden ignoriert (wie [HALLO]), und ein Bereich, kann nicht von einem Segment aufgeteilt werden, zum Beispiel:
ich es leicht mit einigem Spaghetti-Code tun könnte, die völlig uneffizient sein würden, aber bevor es zu tun, haben Sie eine Vorstellung davon, ein Algorithmus, mit dem ich anfangen kann? Ich suche nach etwas so effizient wie möglich ...
es möglich ist, dass die Linien schneiden, sagen z.B. wenn H unter AD lag und GH AD schneidet? – m69
Finden Sie alle verbundenen Grafik –
Was meinen Sie mit "kann nicht durch ein Segment geteilt werden"? – Surt