Wikipedia:Lua/Werkstatt/Geo

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Umstellung der Vorlagen mit Geo-Koordinaten auf Lua. Umbau von Vorlage:Coordinate und Vorlage:Positionskarte. Dazu ist zuerst eine Analyse der Vorlage:Coordinate nötig.

  • Was leistet die Vorlage? -> Zusammentragen der Features.
  • Welche Parameter gibt es und welche Werte können sie haben?
  • Was sol es evtl. zusätzlich können ? (z.B. CH1903-Umrechnung, Syntax der Eingabewerte)
  • Zusammenhang der bisherigen Unterseiten -> Erstellen eines Flussdiagramms (Textform reicht evtl.)
  • Was soll geändert werden?

Analyse von Coordinate[Quelltext bearbeiten]

Analyse des Bestehenden.

Bestehende Verwendung / Features[Quelltext bearbeiten]

  • Verwendung in zwei Formen: "Simple" und "Complex". Simple mit reduzierten Möglichkeiten für häufige Einbindung, Complex für volle Features und nur wenige Einbindungen.
  • Verwendung für
    • Geohacklink oben rechts auf der Seite
    • Inhalt einer Tabellenzelle
    • Einfügung im Fließtext
    • In der Positionskarte (bisher "Map" genannt)

Was es zukünftig auch noch können soll[Quelltext bearbeiten]

Zurzeit nur die dringend notwendigen Anforderungen:

  • Die Trennung in "Simple" und "Complex" war eine Folge langer Ladezeiten bei vielen Einträgen. Das ist bei guter Lua-Programmierung nicht zu befürchten. Daher sollte das zusammengelegt werden.
  • Interne Umrechnung von CH1903 in WGS84.

Parameter[Quelltext bearbeiten]

Parameter Bedeutung konvertierter Typ (bei der Übergabe ist alles ein String) Werte
NS Breitengrad Gleitkomma Direkt oder Konvertierung des Slashstring (a/b/c)
EW Längengrad Gleitkomma Direkt oder Konvertierung des Slashstring (a/b/c)
type Objekttyp (ggf. Markertyp) Wert aus Stringliste { country, state, adm1st, adm2nd, city, isle, airport, mountain, waterbody, forest, landmark, event, example }
event, forest und example sind evtl. verzichtbar.
region Zuordnung zu einem Gebiet Nur bestimmte Werte zulässig Kombination aus ISO 3166-1-ALPHA2-Code, ISO-3166-2 und hauseigenen Codes, maximal vier Werte
globe Himmelskörper Wert aus Stringliste erweiterter Bedarf.
dim Durchmesser des Umkreises (Objektabmessungen) Ganze Zahl (reicht aus) wird für Skalierungen benötigt
elevation Höhe (ganze?) Zahl von ca. -999 bis +9999, bei anderen Himmelskörpern andere Bereiche
pop Einwohnerzahl (population) ganze Zahl (es gibt zwar "halbe Portionen", aber keine halben Einwohner) Nur natürliche Zahlen
name Name ein String Vorgabe ist "PAGENAME"
simple Auswahl des Vorlagentyps Logisch Wird wohl entfallen.
article Ausgabetyp: Artikellink (oben rechts im Artikel) Logisch / Wert aus Stringliste { (Leer), /, DMS, DM, DEC, CH1903, UTM}
text Ausgabetyp: Fließtext oder Tabelle Logisch / Wert aus Stringliste { (Leer), /, DMS, DM, DEC, CH1903, UTM}
sortkey Sortierbarkeit nach NS oder EW Logisch / Wert aus Stringliste {(Leer), NS, EW}
tooltip individueller Tooltip String Vorgabe: name
tooltipformat Koordinatenformat im Tooltip leer oder String aus Liste Wie bei text
map Ausgabetyp: Positionskarte Logisch / Wert aus Stringliste {(Leer), NS, EW}
mapsize Größe der Karte Ganzzahl Angabe in Pixel
maplevel übergeordnete Positionskarte Wert aus Stringliste { global, continental, national, adm1st, adm2nd }
maptype Kartentyp Wert aus Stringliste { relief, ... } (schlecht dokumentiert)
maplayer Bildunterschrift der Karte String
maplabel Kartenmarkierungs­beschriftung String
  • Nicht alle Kombinationen von article, text und map sind sinnvoll.

Fazit: Sieht nach viel Arbeit aus.

Was soll erstellt werden.

Generell größtmögliche Abwärtskompatiblität

Änderungen[Quelltext bearbeiten]

Hier können Ideen zur Änderung vorgebracht werden.

  1. -- Abtrennen der Map-Funktionen. In Lua ist es leicht, Quellcode auch in anderen Modulen zu nutzen. Entweder per Require oder per Kopie. Deshalb sollten alle Mapfunktionen von Vorlage:Positionskarte ohne Aufruf von Coordinate übernommen werden. ÅñŧóñŜûŝî (Ð) 14:25, 15. Mai 2013 (CEST)[Beantworten]


Ende[Quelltext bearbeiten]

Aufgrund fehlenden Interesses wurde das Projekt eingestellt.