Google API 오버레이 뷰를 사용했습니다. 픽셀 값을 사용하여 latl 위치에 html div 요소가있는 사용자 정의 오버레이를 추가 할 수있었습니다. 지금은 OpenLayer 3을 사용하고Openlayer 3 레이어에 맞춤 HTML DOM 요소를 추가하는 방법
USGSOverlay.prototype.draw = function() {
var overlayProjection = this.getProjection();
var sw = overlayProjection.fromLatLngToDivPixel(this.bounds_.getSouthWest());
var ne = overlayProjection.fromLatLngToDivPixel(this.bounds_.getNorthEast());
var div = this.div_;
div.style.left = sw.x + 'px';
div.style.top = ne.y + 'px';
div.style.width = (ne.x - sw.x) + 'px';
div.style.height = (sw.y - ne.y) + 'px';
};
픽셀 값을 사용하여 특정 위치에 마커와 같은 사용자 정의 div 요소를 추가 할 수있는 옵션이 있습니다. 지도가 확대되거나 축소 될 때마다 픽셀 위치를 찾고 div 요소의 위쪽과 왼쪽을 업데이트하여 올바른 위치에있는 것처럼 보일 수 있습니다. OpenLayer3에서는이 점이있을 수 있습니다.
감사합니다. 이전에 추가 된 오버레이의 위치를 변경해야하는 경우 setposition을 사용해야합니다. 하지만 내가 더 많은 수의 오버레이를 가지고 있다면 어떻게하면 원하는 오버레이 객체를 식별 할 수 있을까요? 오버레이 객체의 참조를 저장할 때마다 매번 반복해야합니까? –
예, 각 오버레이에 대해 고유 한 ID를 만들고이를 포함하는 개체를 만들고 해당 ID를 키로 사용하여 직접 액세스 할 수있는 경우 (루프를 피할 때까지) 루프를 반복해야합니다. 그래도 레이어 옵션을 사용해야한다고 생각합니다. –