EPSG:4326 形式で座標を読み込み、地図上にプロットするプログラムを使用しようとしています。問題は、座標が EPSG:3006 であることです。
OpenLayers のプロジェクションを別の EPSG に変換する機能はありますか?
EPSG:4326 形式で座標を読み込み、地図上にプロットするプログラムを使用しようとしています。問題は、座標が EPSG:3006 であることです。
OpenLayers のプロジェクションを別の EPSG に変換する機能はありますか?
これを行うより良い方法は、ここでproj4js ライブラリを使用することです。これは簡単で、必要に応じてカスタム プロジェクションを追加できます。
以下に、それがどのように機能するかを示します。
var SourceProjection= new Proj4js.Proj('EPSG:4326');
var DestinationProjections= new Proj4js.Proj('EPSG:3006');
var Point = new Proj4js.Point(longitude, latitude);
Proj4js.transform(FirstProjection, SecondProjections, ne);
または、openlayers から実行したい場合は、ジオメトリの「変換」機能を使用できます。ここでは、私が使用するカスタム関数を示します。
function TransformGeometry(geometry, SourceProj, DestProj) {
geometry.transform(
new OpenLayers.Projection(SourceProj),
new OpenLayers.Projection(DestProj));
return geometry;
}
いずれにせよ、プロジェクションの「長いリスト」を使用するには、HTML タグでproj4jsを宣言する必要があります (ここと作成したカスタム プロジェクションを含む)。