Programing/OpenLayers

openLayers 2.x 좌표값으로 left, top 구하는 방법

리커니 2021. 3. 16.
반응형

openLayers 2.x 좌표값으로 left, top 구하는 방법

 

WGS84 좌표계를 OpenLayers에서 사용하는 Postion 으로 변환

var transLatLng = function(x, y, epsg,transFlag){
	Proj4js.defs["EPSG:5181"] = "+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m +no_defs";
		
	var src = "EPSG:4326";
	var trg = "EPSG:5181";
		
	if(transFlag==true){
		tag = "EPSG:4326";
		src = "EPSG:5181";
	}
	if(epsg != null) src = epsg;
	
	var position = new OpenLayers.Geometry.Point(x,y).transform(
		new OpenLayers.Projection(src) , new OpenLayers.Projection(trg)
	);
	return position;
}

 

변환된 postion으로 좌표를 구하고 left, top 으로 변환

 

var pos = NS.OL.transLatLng(LCS_DATA[i].longd, LCS_DATA[i].latd);
var coordinate = new OpenLayers.LonLat(pos.x, pos.y);
var pixel = map.getPixelFromLonLat(coordinate);

/*x : left, y : top*/
var left = pixel.x;
var top = pixel.y;

 

 

 

반응형

댓글

💲 추천 글