﻿// JScript 文件
var map=null;//地图对像
var mapCenterX= -95615.3357704883;//中心坐标-95615.3357704883, 3239039.639001
var mapCenterY=3239039.639001;
var mapLeveCount;//地图层数
var mapServer="/mapHandler/"

function MapConfig()
{
    var dw=request("dw");//地图宽
    var dh=request("dh");//地图高
    if(!dw){dw="100%"};if(!dh){dh="100%"}
    $("map").style.width=dw;$("map").style.height=dh;
    //加载地图

    OnPageLoad();
    getop();
  
}

function OnPageLoad()
{       
        var params = new Object();
        params.mapHandler=mapServer;
        params.mapName = "四川省图";
        params.mapScales =[1/5500000,1/2800000,1/700000,1/350000,1/170000,1/90000,1/40000,1/20000,1/10000,1/5000,1/2500];
        mapLeveCount=params.mapScales.length
//        params.x =mapCenterX;
//	    params.y = mapCenterY;
//	    params.imageFormat = "png";
//        params.zoomLevel =10;//用2008的脚本明显比5.2.1慢。
        params.x ="-92528.84090166795";
	    params.y = "3242074.46808035";
	    params.imageFormat = "png";
        params.zoomLevel =5;//用2008的脚本明显比5.2.1慢。
        params.buffer = 256; // 预先进行下载的视图范围。 1/5500000,1/2800000,1/700000,1/350000,
        params.fixedView = false;        
        map = new SuperMap.IS.MapControl($("map"), params);
        map.Init();      
}


function OnMap_Click()
{
        var point1=new Object();	
	    point1.x=event.x-map.GetOffsetX();
	    point1.y=event.y-map.GetOffsetY();
	    //把原左上点像素坐标转换成地理坐标
	    var point=map.PixelToMapCoord(point1);
	    //map.PanToMapCoord(point.x,point.y);
}
function MoveMap(X,Y)
{
   
    Y=parseFloat(Y);//-0.00108;
   map.PanToMapCoord(X,Y);
}
function MoveMap(X,Y,zindex)
{
   
    Y=parseFloat(Y);//-0.00108;
     map.SetCenterAndZoom(X,Y,zindex)
    //map.PanToMapCoord(X,Y);
}
//加标点
function AddMark(id, x, y, w, h, str,css,i)
{   
    y=parseFloat(y);//-0.00108;
    map.CustomLayer.AddMark(id, x, y, w, h, str,css,i);
}
//插入标点
function InsertMark(id, x, y, w, h, str,css,i)
{
    y=parseFloat(y);//-0.00108;
    map.CustomLayer.AddMark(id, x, y, w, h, str,css,i);
}
//清除所有标点
function ClearMarks()
{
    map.CustomLayer.ClearMarks();
}
//清除一个标点
function RemoveMark(id)
{
    map.CustomLayer.RemoveMark(id);
}
//加载嵌入地图显示的方式
function getop()
{
    var op=unescape(request("op"));    
    //初始化比例层
    if(unescape(request("zoomLevel"))!="")
    {  
        try{
            var zoomLevel=parseInt(unescape(request("zoomLevel")));
            if(zoomLevel>0&&zoomLevel<=12)
            {
                 map.SetZoomLevel(zoomLevel);
            }
        
        }catch(e){}
    }
    //地图中心位置

    if(unescape(request("X"))!=""&&unescape(request("Y"))!="")
    {
            var y=parseFloat(request("Y"));//-0.00108;
            MoveMap(unescape(request("X")),y);
    }
    //标点方式
    if(op=="1")
    {
        
    }else if(op=="2")
    {
      
    }else if(op=="3")
    {
      
    }
    else if(op=="4")
    {
       addPoint4();
    }else if(op=="5")
    {
       addPoint5();
    }
}
//自定义第四种注点
function addPoint4()
{
    
    var x=unescape(request("X"));
    var y=unescape(request("Y"));
    var name=unescape(request("name"))
    var img=unescape(request("img"))
    if(img=="")
    {
        var str="<table cellpadding=\"0\" title='"+name+"' cellspacing=\"0\" width='20' height='20' background='../images/topoint.gif' style='cursor:hand;' ><tr><td align='center'>";
        str +="<font color=red><b></b></font></td></tr></table>";
    }
    y=parseFloat(y);//-0.00108;
     map.CustomLayer.AddMark("point", x, y, 20, 20, str,"",10);
}
////自定义第五种注点

function addPoint5()
{
    var x=unescape(request("XS")).split(',');
    var y=unescape(request("YS")).split(',');
    var name=unescape(request("names")).split(',');
    var img=unescape(request("img"));
    var imgw=unescape(request("imgw"));
    var imgh=unescape(request("imgh"));
    if(img==""){img="../images/topoint.gif"}
   
    if(imgw==""){imgw="20";}
    if(imgh==""){imgh="20";}
    
    for(var i=0;i<x.length;i++)
    {
        var str="<table cellpadding=\"0\" title='"+name[i]+"' cellspacing=\"0\" width='20' height='20' background='"+img+"' style='cursor:hand;' ><tr><td align='center'>";
        str +="<font color=red><b></b></font></td></tr></table>";
        map.CustomLayer.AddMark("ico",x[i],parseFloat(y[i]), imgw,imgh, str, "",10);//map.CustomLayer.AddMark("ico",x[i],parseFloat(y[i])-0.00108, imgw,imgh, str, "",10);
    }
    _ViewByPoints(x,y);
}

 
      



//显示所有的标记
function _ViewByPoints(X,Y)
{
    var points=new Array();   
   for(var i=0;i<X.length;i++)
   {       
        var point=new Object();
        point.x=parseFloat(X[i]);
        point.y=parseFloat(Y[i]);
        points.push(point);
   }
  map.ViewByPoints(points);
}

function UnOnPageLoad()
{
    try{
	if(map)
	{
	    map.Destroy();

	    map = null;	
    }
   }catch(e)
   {}
}
