Bin neu hier und habe schon gleich mein erstes Problem:
Ich frage meine Datenbank Postresql/Pgis/pgroute nach bestimmen Punkten ab und lasse diese dann mit st_asText quasi konvertieren und bekomme einen WKT Kompatiblen ausdruck.
Wenn ich diesen Punkte richtig interpretieren POINT(9.2, 47.3) als Bsp, dann habe ich die Lon und Lat Koordinaten gegeben.
Sobald ich die Zeile (Openlayers.layer.osm…) einfüge quasi die Openstreetmap Daten lade dann verschwinden meine Punkte.
Wo ist das Problem?
Hat jemand eine bessere Lösung um pgSQL Daten abzufragen und darzustellen in Openstreetmap. Es muss aber Ajax kompatibel sein. mit XML/KML/GML geht das ja nicht, weil Openlayer explizit eine Datei laden will. Stream reicht nicht.
Es geht eigentlich darum ein Openlayer zu initialisieren mit der Openstreetmap karte.
Auf die Openstreetmap karte soll dan ein Polygon projeziert werden aus der DB.
WFS sehe ich als etwas overkill. Alles was ich will ist ein Polygon mit gegebenen Punkten auf eine Openstreetmap Karte zu zeichnen. Ich denke es liegt an Projections.
Wie wandle ich ein WKT am besten um? Also projection->displayProjection
Ich bekomme Koordinaten im WGS84 Format und dann gehts nicht weiter. Das Problem hatte ich am Anfang mit KML und GML auch aber nach der .transformation() ist das vom Tisch.
Aber alle meine Transformationsansätzte für einen WKT stream scheinen zu scheitern!
var point = setToMercator(lng,lat);
feature[ind] = new OpenLayers.Feature(markerLayer, new OpenLayers.LonLat(point[0],point[1]));
…
function setToMercator(lon, lat) {
x = parseFloat(lon);
y = parseFloat(lat);
var PI = 3.14159265358979323846;
x = x * 20037508.34 / 180;
y = Math.log (Math.tan ((90 + y) * PI / 360)) / (PI / 180);
y = y * 20037508.34 / 180;
return new Array(x,y);
}