var vworldUrl = 'http://map.vworld.kr'; var vworld2DCache = 'http://2d.vworld.kr:8895/2DCache'; var vworldBaseMapUrl = 'http://xdworld.vworld.kr:8080/2d'; var vworldStyledMapUrl = 'http://2d.vworld.kr:8895/stmap'; var vworldIsValid = 'true'; var vworldErrMsg = ''; var vworldApiKey = '555B273E-CE37-3639-A669-04066CB89CCA'; var vworld3DUrl = '/js/sopMapInit.js.do'; var vworldVers={OpenLayers:"2.13",Base:'201612',Hybrid:'201512',Satellite:'201612',Gray:'201512',Midnight:'201512',ServerMaxLevel:18};var vworldTimes={times:["1950","1978","1989","1996","2006","2007"],types:["png","png","png","png","png","jpeg"]};if(!Array.indexOf){Array.prototype.indexOf=function(obj){for(var i=0;ims){break;}}},_popupView:function(url,name,width,height,sb,ispopup){var w=vworldFunc._GetElement(vworldIDs.idpanel).offsetWidth;var h=vworldFunc._GetElement(vworldIDs.idpanel).offsetHeight;var minW=width+10;var minH=height+30;var isSafari=(vworldFunc._browserName()=='Safari')?true:false;if(w0){srcUrl=remainUrls.shift();} if(srcUrl!=''){if(remainUrls.length>0){afterUrl=remainUrls[0];} var js=this._CreateElement('script');js.setAttribute('type',"text/javascript");js.setAttribute('src',srcUrl);js.setAttribute('async',false);js.onreadystatechange=function(){if(js.readyState=='loaded'||js.readyState=='complete'){if(afterUrl!=''){js.onreadystatechange=null;vworldFunc._loadExtLibs(remainUrls,afterFunc);} else{afterFunc();}}} js.onload=function(){if(afterUrl!=''){js.onload=null;vworldFunc._loadExtLibs(remainUrls,afterFunc);} else{afterFunc();}} document.getElementsByTagName('head')[0].appendChild(js);} return false;},_parseURL:function(url){var a=vworldFunc._CreateElement('a');a.href=url;return{source:url,protocol:a.protocol.replace(':',''),host:a.hostname,port:a.port,query:a.search,path:a.pathname.replace(/^([^\/])/,'/$1')};}};vworldUtil={validSearchList:function(is3D){var returnstr='';var allowbldg=false;if(!is3D){var z=vmap.getZoom();var typelist=getServiceLayerList();var types=typelist.split(',');for(var i=0;i=17)returnstr=returnstr+types[i]+",";}else if(types[i].toUpperCase()==vworldVar.bldglayer){if(z>=16)returnstr=returnstr+types[i]+",";}else{returnstr=returnstr+types[i]+",";}} if(z>=16)allowbldg=true;}else{if(vearth!=null){var dist=vearth.getViewCamera().getDistance();var len=vworldInfo.Layers3d.length;for(var i=len-1;i>=0;i--){var tname=vworldInfo.Layers3d[i].info;if(tname.toUpperCase()=='LP_PA_CBND_BUBUN'){if(dist<=860)returnstr=returnstr+tname+",";}else if(tname.toUpperCase()==vworldVar.bldglayer){if(dist<=2000)returnstr=returnstr+types[i]+",";}else{returnstr=returnstr+tname+",";}} if(dist<=2000)allowbldg=true;}} if(allowbldg){if(returnstr=='')returnstr=vworldVar.bldglayer;} return returnstr;},requestSearch:function(lon,lat,pixelX,pixelY,projection,searchlist,success,failure,extbuffer){var msg='검색좌표(lon):'+lon;msg+='\n검색좌표(lat):'+lat;msg+='\n검색픽셀(pixelX):'+pixelX;msg+='\n검색좌표(pixelY):'+pixelY;msg+='\n좌표계(projection):'+projection;msg+='\n검색대상(searchlist):'+searchlist;try{if(typeof(searchlist)!='string'||searchlist.length==0)return;var buffer=1;if(typeof extbuffer=='number')buffer=extbuffer;var typeName=(searchlist!=null)?searchlist:'';var types=typeName.split(',');if(typeof lon!='number'||typeof lat!='number'||typeof pixelX!='number'||typeof pixelY!='number'||typeof searchlist!='string'||types.length==0){alert('검색조건(인자)이 올바르지 않습니다. 확인 후 다시 시도하여 주십시오.\n\n'+msg);return;} vworldUtil._initInfos();vworldInfo.lonlat=new OpenLayers.LonLat(lon,lat);vworldInfo.pixel.x=pixelX;vworldInfo.pixel.y=pixelY;var x=lon;var y=lat;if(projection=='EPSG:4326'||projection=='EPSG:4019'){var min=OpenLayers.Util.destinationVincenty(new OpenLayers.LonLat(lon,lat),225,buffer);var max=OpenLayers.Util.destinationVincenty(new OpenLayers.LonLat(lon,lat),45,buffer);var MinX=Math.abs(min.lat);var MinY=Math.abs(min.lon);var MaxX=Math.abs(max.lat);var MaxY=Math.abs(max.lon);}else{var pixel=new OpenLayers.Pixel(pixelX-4,pixelY+4);var min=thisMap.getLonLatFromPixel(pixel);var pixel=new OpenLayers.Pixel(pixelX+4,pixelY-4);var max=thisMap.getLonLatFromPixel(pixel);var MinX=Math.abs(min.lon);var MinY=Math.abs(min.lat);var MaxX=Math.abs(max.lon);var MaxY=Math.abs(max.lat);} var SearchPoint=MinX+","+MinY+","+MaxX+","+MaxY;var filterText="BBOX="+SearchPoint;var fieldinfo=null;var properties="";for(var i=0;i0)){fieldinfo=_queryFields.getList(types[i])};if(fieldinfo!=null){properties+="("+fieldinfo.fields.join(',')+",AG_GEOM),";}else{if(i==0&&types.length==2){properties+=",";} else{properties+="(),";}}} if(typeName.substr(-1)===',')typeName=typeName.substring(0,typeName.length-1);if(properties.substr(-1)===',')properties=properties.substring(0,properties.length-1);var successCall=vworldUtil.treatResponse;var failureCall=vworldUtil.treatFailure;if(typeof success=='function'){successCall=success;} if(typeof failure=='function'){failureCall=failure;} var params="TYPENAME="+typeName;params+="&"+filterText;if(properties!=','&&properties!='()')params+="&propertyname="+properties;if(typeName.indexOf(vworldVar.bldglayer)==0)params+="&MAXFEATURES=1";params+="&SERVICE=WFS";params+="&REQUEST=GetFeature";params+="&SRSNAME="+projection;params+="&OUTPUT=text/xml;subType=gml/3.1.1/profiles/gmlsf/1.0.0/0";params+="&VERSION=1.1.0";params+="&EXCEPTIONS=text/xml";params+="&apiKey="+vworldApiKey;var reqConfig=OpenLayers.Util.extend({url:vworldUrls.wfs,data:params,headers:{"Content-Type":"text/plain"},success:successCall,failure:failureCall,scope:this},{method:"POST"});OpenLayers.Request.issue(reqConfig);}catch(e){alert("공간정보조회를 실패하였습니다.\n\n"+e.message);}},treatFailure:function(response){},treatResponse:function(response){var xmlObj=response.responseXML;var g=new OpenLayers.Format.GML();g.featureNS="http://www.deegree.org/app";g.featurePrefix="app";var responStr=response.responseText;var features=g.read(responStr);if(features.length<1)return;var bounds;var hideinfo=true;features.sort(function(a,b){var aval=a.fid.split('.')[0];var bval=b.fid.split('.')[0];return aval=vworldInfo.group.length||groupid==null){groupid=0;} if(idx>=vworldInfo.group[groupid].length||idx==null){idx=0;} var feature=vworldInfo.group[groupid].features[idx];var is3D=vworld.is3D();var canShow=true;var layername=feature.fid.split('.')[0];var callbackurl=null;if((typeof _queryCallBacks=='object')&&_queryCallBacks.length>0){callbackurl=_queryCallBacks.getList(layername);} if(callbackurl!=null){var lkey=callbackurl.key.toUpperCase();var lurls=callbackurl.urls;for(var j in feature.attributes){var key=null;if(j.indexOf(":")>0)j=j.split(":")[1];if(j.toUpperCase()==lkey){canShow=false;var key=feature.attributes[j];for(var i=0;i0){vworldFunc._popupView(url,'layerView'+i,500,500,"hidden",true);} else{vworldFunc._popupView(url,'layerView'+i,500,500,"hidden",false);}} break;}}} var content="",subcontent="";var Titles=null;var lcnt=0;var alias=allLayerList.getLayerKoNameFromName(layername);if(alias==''||alias=='undefined'||alias==undefined){alias=layername;} var sizeW=140;var sizeH=0;if(canShow||vworldInfo.group[groupid].features.length>1||vworldInfo.group.length>1){content='
';content+='

'+alias+'

';content+=' ';content+=' ';content+=' ';content+='
';content+='
';sizeH+=45;var tmpW=(alias.length*24)+45;if(sizeW0){Titles=_queryFields.getList(layername);} if(Titles!=null){for(var k=0;k"+title+"
"+value+"
";lcnt++;}}else{for(var k in feature.attributes){if((k.toUpperCase()=='BOUNDEDBY')||(k.toUpperCase()=='OBJECTID')||(k.toUpperCase()=='GID')||(k.toUpperCase()=='SHAPE_AREA')||(k.toUpperCase()=='SHAPE_LEN'))continue;var title=k;var value=feature.attributes[k];if(value==null||value=='undefined'||value=='0000'){value="-";} var topBorder="";var tmp1=""+k+"";var tmp2=""+value+"";var tmpW=90+(tmp2.length*13)+50;if(sizeW"+title+"
"+value+"
";lcnt++;}} height=lcnt*26;sizeH+=height+7;} if(vworldInfo.group[groupid].features.length>1){subcontent+="