Openlayers Overlay 결과 오프셋
설명:
프로젝트를 하는 과정에서 오버레이로 infowindow 창을 만들었지만 사용 과정에서 버그: 오버레이를 발견했습니다.setPosition 이후 편향이 나타나지만 지도를 드래그하거나 지도의 다른 곳을 클릭하면 정확한 위치로 돌아갑니다.
코드는 다음과 같습니다.
let overlay = new ol.Overlay({
id: "overlay",
element: "marks",
positioning: "bottom-center",
stopEvent: _stopEvent ? _stopEvent : false
});
절차:
연구에 따르면positioning을 기본값(top-left)으로 바꾸는 것은 문제없다. 이어서 다른 몇 개의 매개 변수인center-center,bottom-left 등을 시험해 보았는데 무릇center를 설치한 사람은 모두 이 문제가 있을 수 있다.
# :'bottom-left'
, 'bottom-center'
, 'bottom-right'
, 'center-left'
, 'center-center'
, 'center-right'
, 'top-left'
, 'top-center'
, 'top-right'
오버레이가 센터를 렌더링할 때 약간 버그가 있을 것 같아요.
솔루션:
오버레이의positioning을 불러온 후에 설정하면 됩니다
let overlay = new ol.Overlay({
id: "overlay",
element: "marks",
//positioning: _position, //
stopEvent: _stopEvent ? _stopEvent : false
});
overlay.setPosition([_x,_y]);
map.addOverlay(overlay);
// overlay center
overlay.setPositioning("bottom-center");
전재 대상:https://www.cnblogs.com/giser-s/p/11474364.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.