OpenLayers 오픈레이어에서 WMS 로 레이어 불러오기 > 개발

본문 바로가기
사이트 내 전체검색

개발

OpenLayers 오픈레이어에서 WMS 로 레이어 불러오기

페이지 정보

profile_image
작성자 관리자 (61.♡.26.29)
댓글 0건 조회 5,221회 작성일 17-03-19 11:13

본문

우선 OpenLayers 의 공식홈에 있는 사용방법은 아래와 같다.

[code]
var wms = new OpenLayers.Layer.WMS("NASA Global Mosaic",
"http://wms.jpl.nasa.gov/wms.cgi",
{
layers: "modis,global_mosaic",
transparent: true
}, {
opacity: 0.5,
singleTile: true
});
[/code]

출처 : http://dev.openlayers.org/docs/files/OpenLayers/Layer/WMS-js.html


여기에 살을 좀 더 붙여 보자. WMS 레이어를 불러오고 remove 하는 함수

[code]
function olWMS(){
var layer = map.getLayerByName('레이어명'); // 레이어 이름을 가지는 변수 하나를 만든다.
if(layer != null){
map.removeLayer(layer); // 해당 레이어가 있으면, 해당 레이어를 remove 한다.
} else {
var wms = new OpenLayers.Layer.WMS("레이어명",
"url" // WMS 서비스를 제공하는 곳의 서비스 url
, {
layers:'173' // 중요! WMS 서비스를 제공하는 서버측 서비스 ID 이다. 콤마로 구분해서 여러개 지정 가능
,transparent:true
,format:'image/png'
,service:'WMS'
,version:'1.1.1' // 버전이 다를 경우, 지도를 못 불러오는 경우가 있다.
,request:'GetMap'
,styles:''
,crs:'EPSG:4326'
,srs:'EPSG:3857'
,bbox:'14128275.680959,4506556.8412456,14130694.196308,4508124.3974894' // Bounding Box - minx,miny,maxx,maxy
,width:1300,height:1100 // 이미지 사이즈가 너무 작으면 ( 내 지도 화면 크기보다 작으면 ), 못 불러 올 수도 있다.
}
, {
isBaseLayer:false
,singleTile:true
,visibility:true
,opacity:0.5 // 투명도 50%
});
map.addLayer(wms);
console.log(map.getLayerByName('레이어명').id); // 이렇게 해당 레이어의 id 를 찍어 볼 수 있다.
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
map.addControl( new OpenLayers.Control.LayerSwitcher() );
}
}
[/code]

추천0

댓글목록

등록된 댓글이 없습니다.

Total 386건 6 페이지
  • RSS

검색


사이트 정보

Copyright © Baragi.Net. All rights reserved.