úterý, 24. duben, 2007
Kategorie: Php

Slepá ulička Járy Cimrmana

Minule jsem psal o algoritmu pro vytváření náhodného terénu. Vzal jsem to z gruntu a začal se tím zaobírat. Po třech dnes usilovného snažení mi z náhodně generované velkoplošné mapy vznikl paskvil.

Tedy, kde začít. Vycházel jsem z toho, že potřebuji velkou mapu kontinentu, kde by byla přibližně zakreslena teréní situace. Tu jsem již dříve tvořil a nebyl problém ji dodělat. Z této mapy (6000×3000 px) jsem udělal barevnou předlohu, kde bílá bylo moře, černá břehová linie a odstíny dalších barev různé nadmořské výšky. Tento obrázek jsem uložil do png a projel ho skriptem, který rozpoznával barvy a přiřazoval je k výškám. Tyto výšky s jejich souřadnicemi jsem ukládal do databáze. Tady přišel kámen úrazu celé myšlenky a to je množství dat, které se musely do databáze uložit a čas, který to trvalo. Nakonec jsem uložil cca 2.700.000 bodů se kterými se prakticky již nedalo rychle pracovat, vše se strašně dlouho načítalo... Nakonec jsem na čtverce 4×4 px aplikoval pěti iterační postup čtvercovo diamantového algoritmu, tj. ze 25 bodů mi vzniklo 1089 generovaných, tzn. že z 2.700.000 bodů vzniklo 120.000.000 bodů a to mi už počítač neutáhnul. Tedy jsem si musel připustit Cimrmanův výrok: "Tudy ne".