2

静止画像を使用して OpenLayers 3 でマップを作成しました。フェイク プロジェクションを使用するため、マップはレイヤーをピクセル単位で適切に表示するために使用できます。これはコードです:

var pixelProjection = new ol.proj.Projection({
  code: 'pixel',
  units: 'pixels',
  extent: [0, 0, 1389, 1070]
});


var map = new ol.Map({
  layers: [
    new ol.layer.Image({
      source: new ol.source.ImageStatic({
        url: 'http://s25.postimg.org/4o15oqbmn/jdgf.jpg',
        imageSize: [1389, 1070],
        projection: pixelProjection,
        imageExtent: pixelProjection.getExtent()
      })
    })
  ],
  target: 'map',
  view: new ol.View2D({
    projection: pixelProjection,
    center: ol.extent.getCenter(pixelProjection.getExtent()),
    zoom: 2
  }) 
});

マーカー オーバーレイを追加してインタラクションを追加しようとしましたが、位置を指定するのに苦労しており、マーカーを配置したい場所の内側ではなく、マップの外側にあります。

var marker = new ol.Overlay({
    position: [200, 200],
    element: document.getElementById('marker'),
    stopEvent: false
});

私はこれに非常に初心者なので、誰かが位置を正しく設定する方法を知っていれば、私は感謝します.

4

1 に答える 1