由於輸入我們只有一組段,這裏有一個例子:算法從圖中得到的所有個別地區
[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)]
(對不起,我已經盡了全力,但我的圖片有點模糊)
我需要找到所有的單個區域。從上圖中我將有3個不同的區域,JKL,CEFG和{ABCD,JKL}:
注意,段不進行任何區域都被忽略(例如[HI] ),以及面積不能由段劃分,如:
我可以做一些意大利麪條代碼將完全效率不容易做,但這樣做之前,你有什麼想法我可以開始工作的算法?我正在尋找儘可能高效的東西...
有沒有可能是線相交,例如說如果H低於AD,所以GH與AD相交? – m69
找到所有連接的圖 –
你是什麼意思的「不能被細分」? – Surt