30 November 2009

aus den Internet-Gruselarchiven

[ohne Worte]

Labels: , , ,

24 August 2009

nachlad...wart...wart...abbrech

...also manchmal - aber nur manchmal - denke ich ja, daß es vielleicht nicht immer ganz falsch ist, die ein oder andere Bibliothek (oder Bilder oder was auch immer) als Kopie auf dem eigenen Server liegen zu haben und nicht alles immer von fremden Servern zu laden. Aber damit liege ich ganz sicher falsch...

Labels: , , ,

19 August 2009

Höhenlinien als Layer über OSM

Ich hab' mich neulich mal wieder ein bisschen mit Karten beschäftigt. Dieses mal ging es eigentlich darum, wie man Höhenlinien erstellt. Um mal ein bisschen in das Thema reinzuschnuppern habe ich mir die SRTM-Daten auf der unübersichtlichen Seite des CGIAR gezogen - natürlich für die Kachel, in der Trier liegt. (Zwischendurch scheinen deren Server ein wenig überlastet gewesen zu sein, bei mir klappte der Download erst im dritten Anlauf, bei anderen wohl überhaupt nicht - aber, naja, 'geschenkter Gaul' und so...)
Ziel war es nun, aus diesen Daten für einen Bereich um Trier Höhenlinien zu erzeugen und diese dann als Layer mit OpenLayers über der OpenStreetMap anzuzeigen. Hierzu kann man entweder das Programm Srtm2Osm oder aber (wie ich) die entsprechenden perl-scripte benutzen. Mit extractdata.pl zog ich zuerst einen Ausschnitt aus den Daten (ca. 'von Sirzenich bis Irsch') und erstellte daraus dann mit mkcntr.pl die OSM-Datei mit den Höhenlinien. Wie diese Höhenlinien dann als Layer über der OpenStreetMap aussehen, kann man sich hier ansehen - wie die OSM-Datei als Layer verwendet wird, steht im Quelltext.
Wählt man in meinem kleinen Beispiel die CycleMap (die schon die Höhenlinien beinhaltet) als BaseLayer sieht man jedoch, daß meine Höhenlinien (rot) nach Nordwesten verschoben sind (siehe Bild). Ich weiß nicht, woran das liegt, irgendwo muß sich ein Fehler eingeschlichen haben.
Das Ergenis ist für das bischen Bastelei erstmal zufriedenstellend, man erkennt an den Höhenlinien z.B. sehr schon Aveler- und Butzbachtal. Leider steh ich dank mangelnder JavaScript-Kenntnisse mit OpenLayers und dessen Eventhandlern noch auf dem Kriegsfuß, ansonsten könnte ich damit sicher noch viele schöne Spielereien anstellen.
Aber noch mal kurz zurück zu der Frage, wie man Höhenlinien erstellt bzw. errechnet - diese bleibt für mich nämlich eigentlich erstmal ungeklärt, da mkcntr.pl auch nur den Contourplot von gnuplot benutzt. Dies entspricht auch nur meiner ursprünglichen Idee, selbigen von R zu benutzen.

(Bild: Screenshotausschnitt einer OSM-Karte - CC-By-SA)

Labels: , , , ,

15 Februar 2009

contentEditable

...heute mal aus der Reihe "Dinge, die ich so bisher noch nie wirklich benutzt habe": Das contentEditable-Attribut. In eigentlich allen neuen Browsern ist auch "ein rich-text-Editor eingebaut" (in der Gecko-Engine heißt das Ding "Midas") - man kennt diese meist aus CMSystemen, die oft js-Editoren wie den fckeditor verwenden. Man kann die API für den im Browser eingebauten Editor natürlich auch selber ansprechen.
Ich habe dazu mal eine kleine Demo gebaut, die den Text in einem DIV-Tag mit dem Attribut contentEditable zum Bearbeiten freischaltet. (Die alternative Möglichkeit ist, das ganze Dokument mit designMode=on bearbeitbar zu machen).
Über das DHTML-Kommando document.execCommand (die Liste der möglichen Kommandos findet man auf mozilla.org) kann der markierte Text dann entsprechend verändert werden.
Unter 'Resultat' zeigt die Demo nach dem Abschicken des bearbeiteten Textes, was dann beim Server ankommt. Einfach mal mit verschiedenen Browsern ausprobieren und in den Quelltext schauen.
Um mal ein bisschen hinter die Kulissen zu blicken sicherlich so weit ganz interessant, für den tatsächlichen Einsatz lohnt es sich aber, einen fertigen Editor zu verwenden und evtl. nach den eigenen Bedürfnissen anzupassen. Mir gefällt insbesondere TinyMCE von Moxiecode, da er sich sehr leicht integrieren und konfigurieren läßt.

Labels: , , ,

06 Februar 2009

OpenLayers - KML-Daten als Layer über OSM

...hätte man mich vor ein paar Jahren gefragt, wie man eine (möglichst noch interaktive) Karte auf eine Webseite bringt, ich hätte wahrscheinlich ratlos die Schultern hochgezogen. Inzwischen besteht z.B. OpenStreetMap dank der vielen fleißigen Datensammler nicht mehr nur aus weißen Flecken und es gibt so nützliche Frameworks wie OpenLayers.
Um zu demonstrieren, wie eine kleine, interaktive Karte aussehen könnte, habe ich mal ein paar Gebäude der Uni Trier (Campus I) als Vektordaten in eine KML-Datei geschrieben und diese Polygone als Overlay mit OpenLayers über OpenStreetmap gelegt.
Die Demo besteht aus einer html-Datei mit mehr javascript als html (siehe Quelltext), die als Widget die Karte der Uni angezeigt (Mapnik als Base Layer, Osmarender auswählbar). Die Objekte aus der KML-Datei werden auf einem Layer angezeigt, der ein- und ausgeblendet werden kann. Klickt man auf die Objekte (Gebäude), werden deren Attribute (Name des Gebäudes, auch aus den KML-Daten) in einem Popup (AnchoredBubble) eingeblendet.
(Die Demo basiert hauptsächlich auf diesem Beispiel aus der OpenLayers-Doku - vielleicht hilft sie ja der ein oder dem anderen)

Labels: , , , ,

21 November 2008

mootools und so

...ich gebe ja zu, daß JavaScript* und ich noch nie richtig Freunde waren und es wahrscheinlich auch nicht mehr werden. Und obwohl ich - wenn man mich auf der Straße fragen würde - wohl nie eingestehen würde, daß es sinnvoll sein kann, irgend etwas nicht auf dem Server zu erledigen bevor man das Ergebnis ausliefert, weiche ich hier mal meine festbetonierte Meinung auf. Ich halte ja eigentlich nicht viel von blinkenden, fadenden oder sich bewegenden Elementen auf Webseiten, wenn ausklappbare oder slidende Elemente (Menüs, Infoboxen etc.) jedoch die Übersichtlichkeit und Bedienbarkeit der GUI (wenns denn schon in X- und oder HTML sein muß) verbessern... naja, dann von mir aus, denn: Man hat schließlich nicht unendlich viel Platz auf 'dem Bildschirm'.
Da ich selbst wenig mit JavaScript zu tun habe freue ich mich immer über bestenfalls gut dokumentierte und leicht zu verwendende Frameworks. Schon vor einiger Zeit fielen mir die mootools in die Hände, die ich 'irgendwann' mal ein bisschen ausprobieren wollte. Das habe ich jetzt getan, auch wenn das Ergebnis noch sehr dürftig und nur ein erstes Ausprobieren ist: Mit den Sortables aus mootools habe ich eine kleine Seite geschrieben, auf der man DVB-S-Fernsehsender nach Programmplatz sortieren kann, ein Klick auf den Button darunter erzeugt dann eine entsprechend sortierte channels.conf-Liste, die man sich rauskopieren und weiterverwenden kann. Die Angaben aus der Liste sind ohne Gewähr auf Richtigkeit und es fehlen auch einige Sender. Das Script war halt nur zum Spielen gedacht, nicht als vernünftig zu bedienendes Tool. Wie dem auch sei: 'Ajax und Web-two-ohh - hoppla, jetzt komm ich' - nein, nicht wirklich.

* "Java and Javascript are similar like Car and Carpet are similar." (Greg Hewgill)

Labels: , , , , ,