Mam wygenerowaną proceduralnie mapę z wykorzystaniem komórek Voronoi, z określonym poziomem morza i wiarygodną mapą wysokości.
Do tej pory z powodzeniem opisywałem niektóre cechy geograficzne: ląd, ocean, jeziora, rzeki, ujścia rzek, przecięcia, góry i biomy. Biomy obejmują tundrę, las borealny, łąki i las umiarkowany. Istnieje również kilka innych biomów, ale dla moich celów nie są one obecnie ważne.
Chciałbym teraz oznaczyć zatoki i cieśniny, ale nie wiem, jak to zrobić poprawnie. Zatoka jest zagłębionym, przybrzeżnym zbiornikiem wodnym, który bezpośrednio łączy się z oceanem.
Cieśnina to naturalnie uformowana, wąska droga wodna, która łączy dwie części oceanu. Zasadniczo tam, gdzie dwa kawałki ziemi prawie się stykają, a po obu stronach jest ocean. Nazywany także „kanałem”.
Aby określić funkcje, mogę przeglądać dowolne funkcje według typu:
for each (var feature:Object in geography.getFeaturesByType(Geography.LAND))
// loop through lands
for each (var cell:Cell in feature.cells)
// loop through cells
for each (var neighbor:Cell in cell.neighbors)
// loop through a cell's neighbors
trace(neighbor.hasFeatureType(Geography.LAND));