GeoDiveExaで使用しているProj(座標変換ライブラリ)

,

Wgs84からTOKYO座標系への変換など昔は手作りの変換関数を作成して対応して居たものですが、現在は各種GISソフトで利用されているProjをGeoDIveExaも使用しています。これは他のソフトとの互換性を保つメリットも有りますが、簡単に使用できるのが大きな理由です。

本当はPROJの画像を使いたかったのですが、問題がある?かもしれませんので、CANVAでロゴを作ってみました。

1)Proj概要

ProjOSGeoLiveの中にある「地理空間ライブラリ」の1つで、座標参照系ライブラリです。

Projの説明:Projサイトより

PROJ
  PROJは、異なる座標参照システム間で変換するメソッドを提供するライブラリです。地理座標参照システムでは、地球上のすべての点を座標(緯度、経度、高度など)のセットとして記述できます。それぞれのシステムは、平坦な二次元マップ上に三次元地球を表現ししています。
  PROJは、 MapServer 、 GRASS GIS 、 PostGIS 、 Mapnik 、そして、 Thuban, OGDI, TopoCad, OGRCoordinateTransformation などなどで利用されています。
  PROJ は、Cから、 ほかの言語へ 変換されています。サブプロジェクトには、:
    Proj4js (JavaScript) - OpenLayers で使われている。
    CS-Map (C++) - MapGuide に採用
   GeoTIFF/libgeotiff (C++)。
   Proj4J (Java)。

EPSG.io - 座標系定義を取得するためのWebサイトです
SpatialReference.org - 座標系定義を取得するためのWebサイトです(旧式)

主な機能
  ある座標参照システムから別の座標参照システムへの点変換を提供します。
  データ間の変換が含まれます。  
  多数の投影クラスがサポートされています。

実装されている標準規格
  PROJ は、 European Petroleum Survey Group (EPSG) で定義されている座標系定義を使用しています。Well Known Text(WKT)形式。

詳細  
  Webサイト: https://proj.org/
ライセンス: X/MIT Open Source license
ソフトウエアバージョン: 9.1.1
対応プラットフォーム: Windows, Linux, Mac

2)Proj使用方法

座標変換の元としてwgs84、変換先をJgd2011とすると以下の様な形で座標変換が行えます。
//変換元の座標系を指定する:EPS4326
CoordinateSystem wgs84Src = SRIDReader.GetID(4326);
//変換先の座標系を指定する:EPS6668
CoordinateSystem Jgd2011Target = SRIDReader.GetID(6668);
//変換関数を作成する(wgs84Srcー>Jgd2011Target
toJgd2011 = (ICoordinateTransformation)ctFact.CreateFromCoordinateSystems(wgs84Src, Jgd2011Target);
//座標変換実行( wgs84(lon,lat) —> Jgd2011(lon,lat)
double[] wgs84SrcPos = new[] { lon, lat };
double[] Jgd2011TargetPos = toJgd2011.MathTransform.Transform(wgs84SrcPos);

ここで、43266668EPSGコードです。GeoDiveExaは以下のEPSGコードを使用して居ます。
参考:EPSGコード一覧表/日本でよく利用される空間座標系(座標参照系)

座標系EPSGコード設定値
wgs8443264326;GEOGCS[“WGS 84“,DATUM[“WGS_1984”,SPHEROID[“WGS 84”,6378137,298.257223563,AUTHORITY[“EPSG”,”7030″]],AUTHORITY[“EPSG”,”6326″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”4326″]]
jgd201166686668;GEOGCS[“JGD2011“,DATUM[“Japanese_Geodetic_Datum_2011”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,”7019″]],AUTHORITY[“EPSG”,”1128″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”6668″]]
6669~6687JGD2011の19座標系
jgd200046124612;GEOGCS[“JGD2000“,DATUM[“Japanese_Geodetic_Datum_2000”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,”7019″]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY[“EPSG”,”6612″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”4612″]]
2443-2461JGD2000の19座標系
tokyo43014301;GEOGCS[“Tokyo“,DATUM[“Tokyo”,SPHEROID[“Bessel 1841”,6377397.155,299.1528128,AUTHORITY[“EPSG”,”7004″]],TOWGS84[-146.414,507.337,680.507,0,0,0,0],AUTHORITY[“EPSG”,”6301″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”4301″]]
30161-30179
Tokyoの19座標系

3)今後の可能性

Projを使うことにより、QGISなど他のソフトとの座標互換性が取れるのは大きなメリットです。また今は使用して居ませんがUTM座標との変換も簡単に出来ます。今後ユーザ要望が有ればUTM座標との変換を追加する可能性はあります。

座標系EPSGコード設定値
jgd201166686668;GEOGCS[“JGD2011“,DATUM[“Japanese_Geodetic_Datum_2011”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,”7019″]],AUTHORITY[“EPSG”,”1128″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”6668″]]
6688~6692JGD2011のUTM 51N-55N
jgd200046124612;GEOGCS[“JGD2000“,DATUM[“Japanese_Geodetic_Datum_2000”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,”7019″]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY[“EPSG”,”6612″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”4612″]]
3097-3101JGD2000のUTM 51N-55N
tokyo43014301;GEOGCS[“Tokyo“,DATUM[“Tokyo”,SPHEROID[“Bessel 1841”,6377397.155,299.1528128,AUTHORITY[“EPSG”,”7004″]],TOWGS84[-146.414,507.337,680.507,0,0,0,0],AUTHORITY[“EPSG”,”6301″]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,”8901″]],UNIT[“degree”,0.0174532925199433,AUTHORITY[“EPSG”,”9122″]],AUTHORITY[“EPSG”,”4301″]]
3092-3096
TokyoのUTM 51N-55N


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

PAGE TOP