Views ===== Eine View ist ein wichtiger Bestandteil der PlexMap. Sie bestimmt die gesamte Darstellung des PlexMap-Viewers, einschließlich seiner Farben, Layer, POIs und Komponenten. Eine neue View erstellen ------------------------ In PlexMap gibt es immer eine voreingestellte Hauptview, zusätlich kann man jedoch beliebig viele andere Views hinzufügen. **TODO** Eine View konfigurieren ----------------------- Allgemein ......... Pro View können nahezu alle Einstellung der ``config.yaml``-Konfiguration überschrieben werden (siehe :ref:`configuration`), einschließlich der Komponenten-Liste und der Komponenten-Konfiguration (siehe :ref:`components_configuration`). Um dies zu tun, müssen die Felder, die überschrieben werden sollen, im ``config``-Feld in der View spezifiert werden. Um einen bestimmte Komponente aus der View auszuschließen, ist es nicht nötig, die gesamte Komponenten-Liste (``plexgis.components``) neu zu verfassen. Es reicht, folgenden Syntax-Shortcut zu verwenden:: plexgis: excluded: - auth So wird die ``auth``-Komponente aus dieser View entfernt, ohne dass die Reihenfolge der anderen Komponenten dabei verändert wird. Eingeschränkte Navigation ......................... Mit der folgenden View-Konfiguration kann eine View so eingeschränkt werden, dass der Benutzer nur noch um einen Punkt rotieren kann und diesen auch nicht mehr verändern kann. Zusätzlich wird der minimale Zoomabstand von diesem Punkt auf 100 m und der maximale Zoomabstand auf 200 m gesetzt:: globe: navigation: min_height: 100 max_height: 200 constrained_to_position: True Initial drehen .............. Mit der folgenden Konfigurationseinstellung kann die Ansicht initial gedreht werden. Die Drehung hält an, sobald der Benutzer mit der Karte interagiert:: globe: toolboxes: clapperboard: true clapperboard: default_speed: 1.0 initial_active: true Den Viewer aufrufen ------------------- Aufruf einer View ................. Um eine View mit der ID ``viewid`` direct zu öffnen, kann folgender URL benutzt werden:: http://host/v/viewid/ Erweiterte API .............. Im Folgenden wird beschrieben, wie eine bestimmte Ansicht ("vista") angesteuert werden kann. Es gibt im Wesentlichen zwei Möglichkeiten. Die erste Möglichkeit ist der *Vistacode*, den auch das "Ansicht teilen"-Tool verwendet. Dieser Code enthält alle notwendigen Informationen zu einer Ansicht, ist aber nur maschinenlesbar, um den Link möglichst klein zu halten. Ein Beispiel wäre folgender:: http://berlin.geoplex.de/v/berlin/?44-vxV64U-m6000000752RLZB3-pVkw5iqj-000000k4byXa94UXai Darüber hinaus kann eine Vista aber auch durch seine Bestandteile beschrieben werden. Diese sind mindestens * entweder ``lat`` (Breitengrad) und ``lon`` (Längengrad) * oder ``x`` (Rechtswert im lokalen Koordinatensystem (z.B. Gauß-Krüger oder UTM) und ``y`` (Hochwert). Optionale Parameter sind: * ``elevation`` (Abstand der Kamera von dem genannten Punkt in Metern, Standardwert: ``100``) und * ``yaw`` (Drehung der Kamera in Grad (Gierwinkel), ``0`` ist Richtung Norden, ``90`` Osten usw., Standardwert: ``0``). * ``pitch`` (Drehung der Kamera in Grad (Neigung), ``-90`` ist von oben, ``0`` ist keine Neigung, Standardwert: ``-25``). Ein Beispiel für einen Vistalink mit expliziten Bestandteilen wäre folgender:: http://berlin.geoplex.de/v/berlin/?lat=52.5109696&lon=13.40049296&yaw=90&elevation=108 Achtung: Wenn bestimmte Werte wie ``elevation`` oder ``pitch`` zu klein gewählt werden, kann es sein, dass der Viewer direkt in den Fußgängermodus springt (normales Verhalten). Wählen Sie größere Werte, wenn dies nicht beabsichtigt ist. Fußgängermodus .............. Um den Viewer direkt im Schrägluftbilder-Modus zu starten, benutzen Sie folgende API:: http://host/fp/?viewid?lat=latitude&lon=longitude&yaw=rotation - oder - http://host/fp/?viewid?x=rechtswert&y=hochwert&yaw=rotation Beispiel:: http://paris.local/fp/?paris?lat=2.367318016070496&lon=48.8534160522187&yaw=180.0 Schrägluftbilder ................ Um den Viewer direkt im Schrägluftbilder-Modus zu starten, benutzen Sie folgende API:: http://host/aerial/?viewid?longitude,latitude,zoom-level,rotation Beispiel:: http://paris.local/aerial/?paris?2.367318016070496,48.8534160522187,14,0 2D-Ansicht .......... **TODO**