Ich suche eine Formel für die Umrechnung von (Rechtswert,Hochwert,Meridian) in BMN/Österreich nach (Grad,Grad) in WGS84, und umgekehrt. Im Web finde ich diverse Threads in anderen Foren, wo die Antworten immer lauten, dass die Formeln sehr kompliziert sind (ist mir wurscht, ich will sie nicht erklären können, sondern nur in Javascript umsetzen) und dass diese und jene Software das ganz toll kann (das nützt mir für Javascript erst recht nichts).
Hi,
proj.4 gibt es auch für Javascript: http://www.proj4js.org/
Ciao,
Frank
EDIT
Die passenden defs findest Du auf http://spatialreference.org unter “Proj4js format”
Spontan wuerd’ ich sagen
Proj4js.defs["EPSG:31257"]=" ... ";
Proj4js.defs["EPSG:31258"]=" ... ";
Proj4js.defs["EPSG:31259"]=" ... ";
Irgendwie krieg ich das nicht hin. Da funktioniert nicht mal der Constructor: Nach
var p = new Proj4js.Point(rechtswert,hochwert);
ist p.y immer NaN. (URL: http://www.steige.info/osm/tools/tools.pl?T=ANZ))
Mmh, ich vermisse bei Dir
Proj4js.defs["EPSG:31257"] = "+proj=tmerc +lat_0=0 +lon_0=10.33333333333333 +k=1 +x_0=150000 +y_0=-5000000 +ellps=bessel +towgs84=577.326,90.129,463.919,5.137,1.474,5.297,2.4232 +units=m +no_defs";
Proj4js.defs["EPSG:31258"] = "+proj=tmerc +lat_0=0 +lon_0=13.33333333333333 +k=1 +x_0=450000 +y_0=-5000000 +ellps=bessel +towgs84=577.326,90.129,463.919,5.137,1.474,5.297,2.4232 +units=m +no_defs";
Proj4js.defs["EPSG:31259"] = "+proj=tmerc +lat_0=0 +lon_0=16.33333333333333 +k=1 +x_0=750000 +y_0=-5000000 +ellps=bessel +towgs84=577.326,90.129,463.919,5.137,1.474,5.297,2.4232 +units=m +no_defs";
oder hab’ ich sie übersehen?
4326 hat er schon im Bauch.
Unter dem Verzeichnis “test” gibt es ein mini-Beispiel.
Ciao,
Frank
Was auch immer das bedeutet, ich hab es jetzt eingetragen. Aber das hat nichts damit zu tun, dass der Point-Konstruktor nicht funktioniert, denn der ist projektionsunabhängig.
Hi,
geht bei mir:
<html>
<head>
<script src="../lib/proj4js-compressed.js"></script>
</head>
<body>
<script>
Proj4js.defs["EPSG:31259"] = "+title=West +proj=tmerc +lat_0=0 +lon_0=16.33333333333333 +k=1 +x_0=750000 +y_0=-5000000 +ellps=bessel +towgs84=577.326,90.129,463.919,5.137,1.474,5.297,2.4232 +units=m +no_defs";
var point = new Proj4js.Point(16.371345, 48.211996);
var proj = new Proj4js.Proj('EPSG:31259');
var xyResult = Proj4js.transform(Proj4js.WGS84, proj, point);
document.write("Felix Austria: " + xyResult.x + " " + xyResult.y);
</script>
</body>
</html>
Ciao,
Frank
new Point funktioniert anscheinend nicht mit einem String als zweitem Parameter. Mit vorheriger Konvertierung mittels Number() geht’s bei mir jetzt auch.
Danke für die Hilfe.