[OSGeoJapan-discuss] OpenLayersで座標変換

ASAHI Kosuke asahi @ hcc.co.jp
2013年 12月 17日 (火) 00:03:06 PST


斎藤様

朝日です。

proj4jsは読み込まれているでしょうか?

 
https://github.com/openlayers/openlayers/blob/master/lib/OpenLayers/Projection.js
上記↑ソースのコメント中を読むと、OpenLayers単体としては、
EPSG:4326 と web or spherical mercator (EPSG:900913 et al.)
の変換はサポートしています。ただし、他の投影については、proj4jsをinclude 
しないとダメとなっています。

下記サンプルを参考にしてみてはいかがでしょうか?
 
http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/using-proj4js.html

(2013/12/13 11:07), 斎藤 直正 wrote:
> 斎藤です。
>
>  OpenLayers 2.13.1を使用して、座標の変換を行ってみました。
>  本来の目的は、世界測地系のデータを真球メルカトルで表示する。
>  更に、その世界座標系を旧日本測地系の座標に変換して表示する。
>   ・世界測地系→真球メルカトル(900913)
>   ・世界測地系→真球メルカトル(3857)
>   ・世界測地系→旧日本測地系(4301)
>  の変換を行うことでした。
>
>  どうも上手く動作しないので、原因が解らず以下のコードを試していました。
>
> var Pro4326 = new OpenLayers.Projection("EPSG:4326");
> var Pro900913 = new OpenLayers.Projection("EPSG:900913");
> var Pro3857 = new OpenLayers.Projection("EPSG:3857");
> var Pro4301 = new OpenLayers.Projection("EPSG:4301");
>
> var p900913 = new OpenLayers.LonLat(13.41,52.52).transform( Pro4326,
> Pro900913);
> var p3857 = new OpenLayers.LonLat(13.41,52.52).transform( Pro4326,
> Pro3857);
> var p4301 = new OpenLayers.LonLat(13.41,52.52).transform( Pro4326,
> Pro4301);
> var p4326 = new
> OpenLayers.LonLat(1492794.37133,6894699.800322676).transform( Pro3857,
> Pro4326);
>
> alert("p900913 : " + p900913 + "\n"
> + "p3857 : " + p3857 + "\n"
> + "p4301 : " + p4301 + "\n"
> + "p4326 : " + p4326
> );
>
> 実行結果としてalertで表示されたのは以下の結果です。
> ①p900913 : lon=1492794.37133,lat=6894699.800322676
> ②p3857 : lon=1492794.37133,lat=6894699.800322676
> ③p4301 : lon=13.41,lat=52.52
> ④p4326 : lon=13.41,lat=52.520000000000145
>
> ①②④の結果から真球メルカトル↔世界測地系の変換は出来ている様です。
> ③の結果から、世界測地系→旧日本測地系への変換が出来ません。
>
>  何か方法が間違っているのでしょうか?
>
>  何方かご教示頂けないでしょうか?
>
> 以上
>
> _______________________________________________
> OSGeoJapan-discuss mailing list
> OSGeoJapan-discuss @ lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss


-- 
北海道地図株式会社 研究開発課
朝日 孝輔
mailto:asahi @ hcc.co.jp
Tel : 0166-62-4711



More information about the OSGeoJapan-discuss mailing list