2009-03-02 7 views
6

Ich möchte eine Grundrisskarte eines Innenraums mit anklickbaren Bereichen erstellen. Mein erster Gedanke war, GeoDjango seit seiner die Mapping-App für Django zu untersuchen. Aber angesichts der Abhängigkeiten, der Lernkurve und der allgemeinen Komplexität bin ich besorgt, dass ich versuche, eine Fliege mit einer Bazooka zu schlagen.Soll ich mit GeoDjango einen Grundriss erstellen?

Soll ich dafür GeoDjango verwenden, oder soll ich ganzzahlige Listen in einem Datenbankfeld speichern?

EDIT: Der Grundriss wäre ziemlich einfach; eine Sammlung von Wänden und Workstations mit der Möglichkeit, Regionen zu definieren, wie viel Platz die Workstation einnimmt, so dass Büros definiert werden können, sowie offene Layouts.

+0

Wie kompliziert ist Ihr Innenraum? Wie viele Regionen? – Harold

+0

Wie oft ändert sich der Grundriss? Aus Ihrer Beschreibung würde ein einfaches Bild mit einer Imagemap genügen. –

+0

Andrew, du solltest deinen Kommentar als tatsächliche Antwort schreiben, damit ich dich auf den neuesten Stand bringen kann. – Soviut

Antwort

5

Ich würde sagen, dass die Verwendung von GeoDjango für diesen Zweck definitiv übertrieben ist.

Es implementiert einfach mit einer Bildkarte, oder Canvas/SVG oder Flash extra hübsch-Punkte :)

+0

Ich habe Flash oder AJAX von Anfang an in Betracht gezogen, wollte aber wissen, ob ich GeoDjango als Backend zum Speichern und Editieren der Polygone nutzen sollte. – Soviut

+0

Nun, Sie können es sicherlich, aber es ist eine nicht-triviale Menge an Arbeit damit verbunden. Also, wenn Sie vermuten, GeoDjango in Zukunft wieder zu verwenden, kann es eine gute Investition sein, es mit einem kleineren Projekt wie diesem zu lernen. – mikl

+0

Ich habe den Weg der Implementierung mit einem einfachen Komma-separierten Integer-Feld und Flash gegangen, um alles zu zeichnen und Rollovers zu machen. – Soviut

4

IMHO mit GeoDjango für einen Grundriss ist keine schlechte Idee. Wenn sich Ihre Daten jedoch nicht wesentlich ändern und die Datenmenge (Räume, Bereiche, Workstation, ...) nicht sehr groß ist, benötigen Sie möglicherweise keine Datenbank und keinen vollständigen GeoDjango-Stack.

Eine einfachere Lösung wäre die Verwendung von OpenLayers direkt mit einem Bild des (möglicherweise gescannten) Grundrisses als Hintergrundebene. Mit OpenLayers können Sie auch Regionen und Punkte (Marker) definieren, die mit "Mouse Over" oder Click Events umgehen. Ein Beispiel für die Verwendung von OpenLayers für einen Grundriss ist Office Plans via Open Layers.

1

Wie oft wird der Grundriss ändern könnte? Aus Ihrer Beschreibung würde ein einfaches Bild mit einer Imagemap genügen.

+0

Die Leute werden ziemlich oft umhergeschoben. Während sich das tatsächliche Bild nicht ändert, werden die Punkte auf der Karte, die Arbeiter mit bestimmten Regionen/Polygonen in Beziehung bringen, ziemlich oft aktualisiert. – Soviut

0

Eine gute Motivation für die von GeoDjango Verwendung sein kann:

the access to the geographical cooridinates backend, 

und Sie werden nicht nur Schönheit produzieren Bilder mit willkürlicher Skala suchen, sondern Objekte, die geo-oriented sein werden, was ist cruciall wenn man will Flugzeug, um den erstellten Plan für den Zweck indoor navigation zu verwenden.

Ich werde eine starke Nutzung von GeoDjango und einige OpenLayers mit Unterstützung für GeoJSON in Erwägung ziehen.

Verwandte Themen