Skip to content

opt12/LandingPlanes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LandingPlanes

Dieses Repo wird benutzt um die Arbeiten der Gruppe "pthreads" im Fachpraktikum 1597 der Fernuni-Hagen im SS2017 zu koordinieren.

Berichte und Vortragsfolien

Die Berichte und Vortragsfolien finden sich im Unterverzeichnis /planning. Sie lassen sich mit pdflatex übersetzen. Die PDF-Files selber sind nicht im Repo.

Installationsanleitung

Um die abgelegte Software auszuprobieren ist ein Rechner mit einer aktuellen Linux-Distribution erforderlich. Notwendig ist insbesondere:

  • eine aktuelle Installation von Node.js ( ≥ Version 8)
  • eine aktuelle Installation von NPM
  • eine aktuelle installation von bower (npm install -g bower)
  • eine aktuelle Version der gdal-Library, deren Header-Dateien unter /usr/include/gdal liegen müssen
  • eine aktuelle Version des kompilierten gdal-bin Pakets (insbesondere gdalinfo im PATH)
  • eine laufende Instanz einer MongoDB, welche sich auf mongodb://localhost:27017 ansprechen lässt
  • Terrain Daten (sind z. B. verfügbar unter Digitale Geländemodelle von Deutschland)

Zunächst wird das gesamte Projekt von Github auf den Rechner geklont:

git clone git@github.com:opt12/LandingPlanes.git

Dann muss die Search Engine Komponente gebaut werden:

Die 1597_searchEngine Komponente und die Bibliotheken plane_library.a und libGeoTiffHandler.a können gemeinsam erstellt werden:

cd LandingPlanes/src/1597_searchEngineWrapper/
make

Nun muss der Landing Client gebaut werden.

cd LandingPlanes/src/1597_LandingClient
npm install
bower install
npm run local-build

Es ist nun eine Datei LandingPlanes/src/1597_LandingClient/bundle.js erstellt worden.

Als letzte Komponente muss der Database Manager vorbereitet werden.

cd LandingPlanes/src/1597_DatabaseManager
npm install

Nun muss lediglich die Datei LandingPlanes/src/1597_DatabaseManager/package.json überprüft und gegebenenfalls angepasst werden. Es müssen die Pfade im Skript

"start": "node ./bin/www --tiffpath=/home/xxxxx/dev/LandingPlanes/terrain
         --wrapper=../1597_searchEngineWrapper/bin/1597_searchEngineWrapper
         --clientpath=’../1597_LandingClient’

angepasst werden.

tiffpath: Ist der Pfad zu den GeoTIFF Dateien. (Der muss gesetzt werden, da aktuell nur der Dateiname übergeben wird, nicht der Pfad)

wrapper: Ist der Pfad zur kompilierten 1597_searchEngineWrapper-Applikation. Diese wird automatisch gestartet und über einen Unix-Socket mit Daten gefüttert.

clientpath: Der Pfad zum Verzeichnis für die React-Applikation, also den 1597_LandingClient.

terminal: Ist ein optionaler Parameter um festzulegen, welche Terminal-Emulation benutzt werden soll. xterm sollte auf allen Maschinen funktionieren, falls der Defaultwert gnome-terminal nicht verfügbar ist. Der Parameter kann dann noch mit --terminal=’xterm’ hinzugefügt werden.

Wenn diese Vorbereitungen abgeschlossen sind, kann das System mit

cd LandingPlanes/src/1597_DatabaseManager
npm start

gestartet werden und über das öffnen von http://localhost:3000 bedient werden.

Ein manueller Merge von überlappenden Landebahnen kann angestoßen werden, wenn in einem eigenen Terminal das npm-Skript cleanup aufgerufen wird:

cd LandingPlanes/src/1597_DatabaseManager
npm run cleanup

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published