BMN <-> Grad

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.