| 發表文章 | 發起投票 |
[Python研究分享]分析Bitmap地圖

(Paradox Victoria2地圖係極佳應用例子)
首先你有張完整既Bitmap世界地圖,咁你點將以上每個省份獨立Gen出黎做顯示運算呢?
(即Python三國既地圖mode)使用工具:
Python + Tkinter(顯示用) + PIL(處理圖片用)
解決思路:
每個省份fill咗顏色(RGB色碼唔重覆)
.逐粒pixel搵:
.如果係黑色(省份邊界):
.如果鄰近八粒pixel有未出現過既省份RGB色碼(A):
開始搵所有圍住呢個省份既黑色pixel
搵pixel,有一個Empty既List記錄pixels
.第一粒pixel
.搵第二粒pixel,如果鄰近八粒pixel當中有A就加入List入面,如此類推,直到LOOP到第一粒pixel隔離最尾個粒pixel
(每個省份都一定有黑色pixel圍住,用A黎判斷避免搵錯位
)好處:
.畫地圖可以真係畫,唔使自己搵XY軸(假如你需要做高階地圖,宣傳:例如Python三國
)缺點:
.張地圖要有固定格式(黑色pixel要面對面連接,對角唔當連接)
.每個省份要上色(可以另外整個自動上色)
.要裝Python同PIL(或者其他圖像處理module)
例子:






愛爾蘭 0.13秒
日本 0.45秒
英國 0.60秒
視乎地圖大細及省份周界
Code:
https://github.com/Montague27/Python-Bitmap
本貼文共有 0 個回覆
此貼文已鎖,將不接受回覆
| 發表文章 | 發起投票 |