지식IT
[GIS] openlayers에서 반경을 입력해서 폴리곤을 그리는 방법
인코딩
2023. 5. 29. 15:15
728x90
반응형
1. Circle 함수를 사용하여 중심점과 반경 값을 입력하여 Circle 객체를 생성합니다.
var center = ol.proj.fromLonLat([lon, lat]);
var circle = new ol.geom.Circle(center, radius);
2. Circle 객체를 다각형 폴리곤으로 변환합니다.
var polygon = ol.geom.Polygon.fromCircle(circle, 64).transform('EPSG:4326', 'EPSG:3857');
- 64는 원을 근사화하기 위해 사용되는 세그먼트 수입니다.
- transform 함수를 사용하여 좌표계를 변경합니다. 위 예제에서는 WGS84(4326) 좌표계를 Web Mercator(3857) 좌표계로 변경합니다.
3. 폴리곤을 Vector 객체로 생성하여 지도에 추가합니다.
var vectorSource = new ol.source.Vector({
features: [new ol.Feature(polygon)]
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
map.addLayer(vectorLayer);
위 코드에서 map은 OpenLayers 지도 객체입니다.
반응형