OpenLayers에서 ol.geom.Circle의 radius 매개 변수를 미터(meter) 단위로 사용하려면, 다음과 같이 코드를 작성할 수 있습니다.
// 지도 투영 방식 설정
var projection = new ol.proj.Projection({
code: 'EPSG:3857', // 미터 단위를 사용하는 Web Mercator 투영 방식
units: 'm'
});
// 중심점 좌표와 반지름(m) 설정
var center = [0, 0]; // 중심점 좌표
var radiusInMeters = 1000; // 반지름(m)
var circle = new ol.geom.Circle(center, radiusInMeters, 'XY');
// 원형 지오메트리를 가진 feature 생성
var feature = new ol.Feature(circle);
// feature를 가지고 있는 vector layer 생성
var vectorLayer = new ol.layer.Vector({
source: new ol.source.Vector({
features: [feature]
})
});
// 생성한 layer를 지도에 추가
var map = new ol.Map({
target: 'map',
layers: [
vectorLayer
],
view: new ol.View({
center: center,
zoom: 10,
projection: projection
})
});
위 코드에서, projection 객체는 지도 투영 방식을 설정하며, units 속성을 'm'(미터)로 설정하여 미터 단위를 사용합니다. 그리고 radiusInMeters 변수에 반지름을 미터 단위로 지정합니다. 마지막으로, ol.geom.Circle 생성자의 세 번째 매개 변수 opt_layout에 'XY'를 전달하여 X,Y 좌표계를 사용한다는 것을 명시합니다.
위 코드를 실행하면, 지도 위에 반지름이 1000m인 원이 그려집니다.
[jQuery] 선택한 요소의 순서를 알려주는 index() 메소드 (0) | 2023.05.29 |
---|---|
[GIS] openlayers에서 반경을 입력해서 폴리곤을 그리는 방법 (0) | 2023.05.29 |
[오라클] 사용자 수준에서 테이블 스페이스 확인 하기 (0) | 2023.05.29 |
Spring Boot Starter Parent의 역할은? pom.xml (0) | 2022.11.25 |
[Clean Code] Clean Code 1장 깨끗한 코드를 읽고 (0) | 2022.02.14 |