Skip to content

Robolus911/Tilemap-Generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 

Repository files navigation

Tilemap Generator

Erzeugt Tilemaps aus Geodaten. Unterstützt vier sequenzielle Suchstrategien auf Basis von neun Sortierstrategien für die Zuordnung sowie eine Zuordnung auf Basis des Hungarian Algorithm. Export als GeoJSON / Shapefile / GPKG sowie PNG / JPG / SVG.

Merkmale

  • Neun Sortierstrategien
  • Vier sequenzielle Suchstrategien:
    • min (Euklid)
    • spirale
    • zickzack
    • ring
  • Optimierte Suchstrategie (Hungarian Algorithm) für minimale Gesamtdistanz der Euklidischen Distanzen (gerasterte Zentroide zu allen erlaubten Zellen).
  • Label-Autofit (ein-/zweizeilig) mit Kollisionstest und Skalierung.
  • Drag-&-Drop-Modus in der Vorschau (Verschieben/Swap von Tiles).
  • Ausdehnung des Zielgitters.
  • Export: GeoJSON, Shapefile, GPKG, PNG, JPG, SVG.

Installation

  1. Python 3.10+ (download: https://www.python.org/downloads/)
  2. Abhängigkeiten installieren:
    pip install geopandas shapely matplotlib scipy numpy

Die Anwendung kann nun per Doppelklick gestartet werden.

  • Eingabe: Geo-Datei (Shapefile/GPKG).
  • Wähle Label 1 und Label 2 (optional).
  • Wähle Gittergröße, Max. Kacheln X/Y, Sortierstrategie, Suchstrategie.
  • Exportiere Grafiken/Geodaten über die Schaltflächen Tilemap generieren und Vorschau speichern .

Such-/Zuordnungslogik

  • Sequenziell: Für jedes Polygon wird ausgehend vom (gerasterten) Zentroid die nächste freie Zelle gemäß Sortier- und Suchstrategie gesucht; belegte Zellen werden übersprungen.
  • Hungarian Algorithm: Für alle Polygone (gerasterte Zentroide) wird eine Kostenmatrix zu allen erlaubten Zellen aufgebaut (Euklid); linear_sum_assignment liefert die minimale Gesamtdistanz.

Hinweise

  • Start außerhalb der Grenzen → Begrenzung aufs Zielgitter.
  • Bei Hungarian ist die Sortierung deaktiviert, da für Zuordnung nicht relevant.
  • Label-Autofit hält Text innerhalb der Kachel und vermeidet Überlappungen.

Lizenz

MIT-Lizenz (siehe Lizenzdatei).

About

A Python Script including a Tilemap Generator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages