Einleitung

Bereits sehr früh haben wir in PicApport die Möglichkeit eingebaut Fotos über Geokoordinaten zu suchen bzw. auf einer Karte anzuzeigen.
Siehe hierzu auch Fotos finden mit der Landkarte auf Fotos finden mit PicApport

Bereits bei mittelgroßen Fotosammlungen kann das sehr schnell unübersichtlich werden. Mit Erscheinen der Version 8 haben wir uns daher
entschieden die GEO-Funktionalität wie folgt auszubauen:


Dynamische Sammlung als Marker erstellen

Um Marker zu erstellen benötigt man die entsprechende Berechtigung: Berechtigung Mapmarker zu bearbeiten
(Diese Berechtigung wird bei einem Versionsupdate bei allen Benutzern, welche die Berechtigung haben, dynamische Sammlungen zu bearbeiten, automatisch gesetzt)

Der Name (Titel) des Markers sowie die Beschreibung werden vom selektierten Foto übernommen und können überschrieben bzw. geändert werden.




GeoJSON Dateien erstellen

Typischerweise erstellt man Tracks oder Routen mit einer Tracking-App auf dem Handy. Da es hier sehr viele Datenformate gibt,
wird die erzeugte Datei mit einem Programm in eine GeoJSON-Datei umgewandelt (https://de.wikipedia.org/wiki/GeoJSON).
(Der Autor verwendet z.B. das kostenlose GPSBabel (https://www.gpsbabel.org/) welches auch die Anzahl der aufgezeichneten Trackpunkte reduzieren kann was durchaus zu empfehlen ist.)

Auch gibt es zahlreiche Programme und Tools um Tracks bzw. GeoJSON Dateien manuell zu erzeugen. (z.B. im Web http://geojson.io)

Eine für PicApport gültige GeoJSON-Datei muss die Dateiendung .geojson haben. Sofern der verwendete Konverter die Dateiendung .json vergibt, ist die Dateiendung nach Konvertierung in .geojson zu ändern.

Ist die GeoJSON-Datei erst einmal erstellt, wird diese einfach in ein Verzeichnis zusammen mit den thematisch zugeordneten Fotos auf den PicApport-Server kopiert.
Der PicApport-Crawler erzeugt automatisch ein Thumbnail für die GeoJSON Datei.

Dieses Thumbnail übernimmt etwaige Metadaten aus der GeoJSON-Datei (siehe dazu unten den Punkt Optionale Metadaten für Geojson Dateien) bzw. kann in PicApport
mit zusätzlichen Schlagworten versehen werden und kann damit im Zuge von Abfragen gefunden werden.


Wenn man auf den Track klickt, gibt es zwei Möglichkeiten für die Anzeige des Tracks:

  1. Zeige GeoJSON-Datei auf Karte
    Es wird der Track inkl. aller in der gleichen Abfrage gefundenen Bilder angezeigt.

  2. Zeige GeoJSON-Datei auf Karte mit zugeordneten Fotos
    Es wird der Track nur mit den Fotos angezeigt, die im gleichen Verzeichnis (incl. aller Unterverzeichnisse) liegen wie der Track. Bilder, die zwar in der Abfrage aufscheinen, aber
    in anderen Verzeichnissen liegen, werden nicht angezeigt. Damit kann man die Anzeige exklusiv auf den Track und die zugeordneten Bilder reduzieren.

Beispiel auf der Online Demo: https://onlinedemo.picapport.de/picapport#thumbs?query=track+cevennen&sort=datetimeascending&viewtime=7


Beschreibung der von PicApport unterstützen Attribute in Geojson-Dateien

Die folgenden beiden Links zeigen eine einfaches Beispiel für eine GeoJSON Datei:

Optionale Metadaten für Geojson Dateien

Damit Geojson-Dateien in PicApport auch gefunden werden können, ist es möglich diese optional mit folgenden Metadaten auszustatten:

"picapport-metadata": {
        "timestamp": "2007-12-11 15:00:00",
        "title": "Titel der GeoJSON Datei",
        "description": "Beschreibung",
        "keywords": "tag1, tag2, tag3",
        "rating": 1
	    }

Siehe hierzu auch unsere Beispiel-GeoJSON-Datei: kaikoura-whale-watching-map.geojson



Geojson Property NameTypdefaultBeschreibung
timestampString (JJJJ-MM-TT HH:MM:SS)

Erstellungsdatum der
GeoJSON Datei

Wird behandelt wie das Aufnahmedatum eines Fotos
zur Suche und Sortierung
titleStringName der GeoJSON
Datei
Kann zur Suche verwendet werden
descriptionStringnicht gesetztKann zur Suche verwendet werden
keywordsStringnicht gesetztKann zur Suche verwendet werden
ratingInteger (Ganzzahl)nicht gesetztSterne für Datei Werte
Erlaubte Eingaben: 0-5


"picapport-metadata":{} ist eine PicApport spezifische Erweiterung  der GeoJSON Spezifikation.
Es ist möglich,  das diese Informationen von anderen GeoJSON Bearbeitungsprogrammen nicht unterstützt wird (Wird nach Veränderung dann evtl. nicht gespeichert)

Geojson Styling und Attribute

Beschreibung (Gültig für Marker, Linien und Polygone)

Geojson Property NameTypdefaultBeschreibung
titleStringnicht gesetztÜberschrift für den Tooltip des Objekts
urlStringnicht gesetztExterne URL (Nur in Verbindung mit title)
Wenn title und url gesetzt sind, ist der Title im Popup anklickbar.
Die Url wir in einem neuen Tab angezeigt
descriptionStringnicht gesetztBeschreibender Text
picapport-queryStringnicht gesetztWenn vorhanden, kann eine Picapport-Abfrage gestartet werden
(Thumbnails werden dann angezeigt)

Points (Marker)

Geojson Property NameTypdefaultBeschreibung
marker-colorString"red"

Farbe des Markers
neben den html-Farben in der # Notation (#rrggbb)
Werden folgende Farbcodes unterstützt:

white, black, red, blue, yellow, orange, green

Linien in Polygone

Wir haben uns hier an folgender Spezifikation orientiert: https://github.com/mapbox/simplestyle-spec/tree/master/1.1.0

Geojson Property Name
(Leaflet Name)

TypdefaultBeschreibung

stroke-visible
(stroke)

BooleantrueSetzen Sie es auf false, um Grenzen/Umrandungen von Polygonen oder Kreisen zu deaktivieren. 

stroke
(color)

String"#3388ff"Linienfarbe (wie marker-color)

stroke-width
(weight)

ganzzahl3Linienbreite in Pixel

stroke-opacity
(opacity)

Dezimalzahl
0.0 - 1.0

1.0Opazität der Linie

stroke-linecap
(lineCap)

String"round"

Eine Zeichenkette, die die Form definiert, die am Ende einer Linie verwendet werden soll.

siehe: https://developer.mozilla.org/de/docs/Web/SVG/Attribute/stroke-linecap

stroke-linejoin
(lineJoin)

String"round"

Eine Zeichenkette, die die Form definiert, die an den Ecken von Linien verwendet werden soll.

siehe: https://developer.mozilla.org/de/docs/Web/SVG/Attribute/stroke-linejoin

stroke-dasharray
(dashArray)

String

nicht gesetzt

Eine Zeichenkette, die das Strichmuster definiert.

siehe: https://developer.mozilla.org/de/docs/Web/SVG/Attribute/stroke-dasharray

stroke-dashoffset
(dashOffset)

Stringnicht gesetzt

Abstand des Strichmusters

siehe: https://developer.mozilla.org/de/docs/Web/SVG/Attribute/stroke-dashoffset

fill-visible
(fill)

BooleantrueGibt an, ob der Pfad mit Farbe gefüllt werden soll. Stellen Sie es auf false, um das Füllen von Polygonen oder Kreisen zu deaktivieren.

fill
(fillColor)

Stringwenn nicht gesetzt dann gleicher Wert wie strokeFüllfarbe der Fläche (wie marker-color)
fill-opacity
(fillOpacity)

Dezimalzahl
0.0 - 1.0

0.2Opazität der Fläche