2016-05-24 4 views
2

OpenLayersを初めて使用しています。ピクセルベースの座標から緯度/経度に変換するにはどうすればよいですか?私は、静的なイメージの機能を表示して描画するOL3を使用しています(6494 X 7687のjpg)を使用して投影:OpenLayers 3ピクセル座標を緯度に変換する

var projection = new ol.proj.Projection({ 
    code: 'xkcd-image', 
    units: 'pixels', 
    extent: [0, 0, 6494, 7687] 
    }); 

正常に動作します私はこれを持ってpolyganドロー、の終わりに:

draw.on('drawend', function (event) { 
    var coord = event.feature.getGeometry().getCoordinates(); 
    console.log("YOU DREW A Polygon with coord="+coord); 
}); 

上記のピクセルベースのポリゴン座標を緯度/経度座標に変換する簡単な方法はありますか?私は画像の四隅の緯度/経度を持っています。代わりにカスタムピクセル投影を指定する

答えて

3

、あなたのコーナーの座標にimageExtentセットを使用して、静的なイメージソースを設定し、'EPSG:4326'への投影を設定します。

new ol.source.ImageStatic({ 
    // ... 
    imageExtent: [minLon, minLat, maxLon, maxLat], 
    projection: 'EPSG:4326' 
}) 

あなたが歪んされることなく、自分の画像を表示したい場合はprojection: 'EPSG:4326'でビューを構成する必要があります。その後、地理座標を使って作業します。

類似のものは公式の例の1つにも示されています。http://openlayers.org/en/latest/examples/reprojection-image.html。違いは、そこにはラスタ再投影が使われているということです。なぜなら、画像とビューは異なる投影にあるからです。

+0

お返事ありがとうございます。それは多くの意味があります。緯度/経度座標とピクセル座標の両方を格納する必要があります。緯度/経度座標をピクセル座標に変換するのがどれほど難しいでしょうか?再度、感謝します。 – Morey

関連する問題