var txt1, txt2;
var szSelectLayers = "";
var szCurHtmlResult = "";
function mtInitTool()
{
	blRectTool = false;
	blCircleTool = false;
	blMoveTool = false;
	blClickTool = false;
	blDblClickTool = false;
	blDblLineTool = false;
	blDblPointTool = false;
	blSetStartTool = false;
	blSetEndTool  = false;
	blSetBStartTool = false;
	blSetBEndTool  = false;
}

function mtSelectMaptool( tool )
{
	var strToolName = "你还没有选择！";
	var szLayerName = "";
	var content = "";
	
	OperateType = ""

	strToolName = tool;
	//var szLayerList = commGenLayerList(strLayerList);
	clearRuler();   //清除测距
	switch( strToolName ){
	case '拖动':
		mtInitTool();
		blMoveTool = true;
		break;

	case '画点':
		mtInitTool();
		blClickTool = true;
		OperateType = "Close"
		break;

	case '画线':
		mtInitTool();
		blDblLineTool = true;
		OperateType = "Open"
		break;

	case '画矩形':
		mtInitTool();
		blRectTool = true;
		OperateType = "Close"
		break;

	case '画圆':
		mtInitTool();
		blCircleTool = true;
		OperateType = "Close"
		break;

	case '画不规则面':
		mtInitTool();
		blDblLineTool = true;
		OperateType = "Close"
		break;

	case '双击点击':
		mtInitTool();
		blDblClickTool = true;
		OperateType = "Open"
		break;

	case '查看全图':
		mtInitTool();	
		content = '查看全图:<input type="text" name="txtZoom" size="15">&nbsp;&nbsp;&nbsp;<a href="javascript:mtSumbitViewEntireLayer()">提交</a>'
		szLayerName = szLayerInput;
		break;

	case '拖动放大':
		mtInitTool();
		szSelectedMaptool = "DragZoomIn";
		mtSelectMaptool('画矩形')
		CursorStyle("crosshair");
		selMsg="当前操作：拖动放大";
		break;

	case '拖动缩小':
		mtInitTool();
		szSelectedMaptool = "DragZoomOut";
		mtSelectMaptool('画矩形')
		CursorStyle("crosshair");
		selMsg="当前操作：拖动缩小";
		break
	
	case '拖动平移':
		mtInitTool();
		szSelectedMaptool = "DragPan";
		mtSelectMaptool('拖动')
		CursorStyle("move");
		selMsg="当前操作：拖动平移";
		break;

	case '测距':
		mtInitTool();	
		szSelectedMaptool = "Ruler";
		mtSelectMaptool( '画线' )
		CursorStyle("crosshair");
		selMsg="当前操作：测距(双击结束)";
		break;

	case '最短路径':
		mtInitTool();	
		szSelectedMaptool = "shorDist";
		mtSelectMaptool( '画线' )
		CursorStyle("crosshair");
		selMsg="当前操作：请选择起点、终点";
		break;

	case '路径起点':
		mtInitTool();	
		szSelectedMaptool = "shorDist";
		blSetStartTool = true;
		CursorStyle("crosshair");
		selMsg="当前操作：设置起点";
		var szName = document.all.startName.value;
		if (szName.length>0)
		{
			setStrsql(2,"ALLUNIT",'uname like "%' + szName + '%"');
		}
		break;

	case '公交起点':
		//if( window.event.keyCode != 13 ) return;		
		mtInitTool();	
		var szName = document.all.bstartName.value;
		if (szName.length>0)
		{
			setStrsql(2,"ALLUNIT",'uname like "%' + szName + '%" and fir_type="22" and sec_type="02"');
		}
		szSelectedMaptool = "shorDist";
		blSetBStartTool = true;
		CursorStyle("crosshair");
		selMsg="当前操作：设置公交起点";
		break;

	case '路径终点':
		mtInitTool();	
		szSelectedMaptool = "shorDist";
		blSetEndTool = true;
		CursorStyle("crosshair");
		selMsg="当前操作：设置终点";
		var szName = document.all.endName.value;

		if (szName.length>0)
		{
			setStrsql(2,"ALLUNIT",'uname like "%' + szName + '%"');
		}
		break;

	case '公交终点':
		mtInitTool();	
		var szName = document.all.bendName.value;
		if (szName.length>0)
		{
			setStrsql(2,"ALLUNIT",'uname like "%' + szName + '%" and fir_type="22" and sec_type="02"');
		}
		szSelectedMaptool = "shorDist";
		blSetBEndTool = true;
		CursorStyle("crosshair");
		selMsg="当前操作：设置终点";
		break;

	case '测距清除':
		mtInitTool();	
		mtSumbitClearRuler();
		break;

	case '鹰眼':
		mtInitTool();
		mtSubmEagleEye();
		break;

	case '范围查找':
		mtInitTool();
		mtSelectMaptool('画矩形');
		szSelectedMaptool = "SearchRange!!Rect";
		CursorStyle("crosshair");
		selMsg="当前操作：范围查找";
		break;

	case '半径查找':
		mtInitTool();
		mtSelectMaptool('画圆');
		szSelectedMaptool = "SearchRange!!Circle";
		CursorStyle("crosshair");
		selMsg="当前操作：半径查找";
		break;

	case '查找最近':
		break;

	case '改变地图大小':
		mtInitTool();
		content = '宽度：<input type="text" name="txtSetMapImageSizeWidth" size="15"><br>高度：<input type="text" name="txtSetMapImageSizeHeight" size="15"><p><a href="javascript:mtSubmitSetMapImageSize()">提交</a>'
		szLayerName = szLayerInput;
		break;

	case '图层控制':
		mtInitTool();
		mtSumbitLayerControl();
		break;

	case '历史查询列表':
		mtInitTool();
		mtSumbitListHistory();
		break;

	case '清除临时点':
		clearRuler;
		sendToServerParam("20");
		break;

	case 'load':

	case 'print':
		content = "printMap.htm"; 
		var imgwin = open( content, null, "width=600,height=400,resizable=no,scrollbars=yes,status=no,toolbar=no,menubar=yes,location=no");
		imgwin.focus();
		imgwin.moveTo(0, 0);
		imgwin.resizeTo(MapPicWidth,MapPicHeight);
		break;

	default:
		break;;
	}
}


function mtSubmitFromMap( szXY )
{
	var maptool = szSelectedMaptool;
	var param = "";
	var XYType = "Screen";
	var layer;
	var ObjDes = szXYZL(szXY) + ":" + XYType;
	var ObjType="", range="", Order="", Other="";

	switch( maptool ) 
	{
		case "SearchRange":
			layer = document.all.sSearchLayer.options[ document.all.sSearchLayer.selectedIndex ].value
			range = document.all.sRange.options[ document.all.sRange.selectedIndex ].value
			Order = document.all.sResultOrder.options[ document.all.sResultOrder.selectedIndex ].value
			Other = "ObjectLayers==" + layer 
			break;			
		case "SearchRange!!Rect":
			maptool = "SearchRange";
			layer = document.all.selSearchLayer.options[document.all.selSearchLayer.selectedIndex].value;
			range = "1"
			Order = "50"
			Other = "ObjectLayers==" + layer 
			break;			


		default:
			OperateType = ""
			break;
	}

	mtSpellSubmit( maptool, ObjType, range, ObjDes, Order, Other )
}

function szXYZL(Cdt) 
{
	var CC = Cdt.split(",")
	var Cd = CC[0]
	var temp = ""

	if ( CC.length == 1 ) { return CC.join(",") }
	for ( var i=1; i<CC.length; i++ ) {
		if ( CC[i] == Cd ) {
			CC[i] = ""
		} else {
			Cd = CC[i]
		}
	}
	
	for ( var i=0; i<CC.length; i++ ) {
		if ( CC[i] != "" ) {
			temp = temp + CC[i] + ","
		}
	}

	return temp.substring(0,temp.length-1)
}

function mtViewMap(View)
{
	var maptool = "BrowseMap";
	var act = "";
	switch(View){
	case 'prev':
		act = "prev";
		break;
	case 'next':
		act = "next";
		break;
	case 'last':
		act = "last";
		break;
	}
	param = "Action==" + act;
	mtQuerySubmit( maptool, param )	
}

function mtSumbitClearRuler()
{
	var maptool = "ClearRuler";
	var param = "";

	OldRuler = 0
	lcReplaceLayerContent( szLayerOutput, "" )
	mtQuerySubmit( maptool, param );	
}

function mtSubmEagleEye()
{
	var maptool = "";
	var param = "EyeImageSize==" + nEagleEyeMapWidth + "," + nEagleEyeMapHeight;

	mtQuerySubmit( maptool, param)
}

function mtSumbitLayerControl()
{
	var maptool = "LayerControl";
	var param = "";
	mtQuerySubmit( maptool, param );	
}

function mtSubmitSetMapImageSize()
{
	var maptool = "SetMapImageSize"
	var param = ""
	var width,height

	width = document.all.txtSetMapImageSizeWidth.value
	height = document.all.txtSetMapImageSizeHeight.value

	if ( isNaN(width) || width < 0 || width=="" || isNaN(height) || height < 0 || height=="" ) {
		alert("数值错误");return
	}
	
	if ( width == 0 || height == 0 ) {
		param = "MapImageSize==0,0"
	} 
	else {
		param = "MapImageSize==" + width + "," + height
	}

	mtQuerySubmit( maptool, param );
}


function mtSubmitHighLight(Layer,fid,name)
{
	var maptool = "HighLight"
	var ObjType, Range, ObjDes, Order, Other
	
	ObjType = ""
	Range = ""
	ObjDes = Layer + ":" + fid;
	Order = ""
	Other = ""
	document.all.txtFindStringZBHJ.value = name;
	document.all.endName.value = name;
	document.all.txtEnd.value = name;
	document.all.txtFindString1.value = name;
	mtSpellSubmit( maptool, ObjType, Range, ObjDes, Order, Other )
}

function mtSumbitMapZoom( scale )
{
	var MZ = szMapZoom * scale;
	var param = "Zoom==" + MZ + "!!CenterX==" + nCenterX + "!!CenterY==" + nCenterY;
	mtQuerySubmit( '', param );
	mapZoomScale(scale);
	
}

function mtSubBarAdd()
{
	scale=1.5;
	epSetMap_Bar();
	mtSumbitMapZoom( scale );
}

function mtSubBarMin()
{
	scale=0.5;
	epSetMap_Bar();
	mtSumbitMapZoom( scale );
}

function showinfo_unit(uid)
{
	var strSql = "mi_prinx=" + uid;
	setStrsql(31,"ALLUNIT",strSql);
}

function position_unit(uid,uname)
{
	var strSql = "mi_prinx=" + uid;
	setStrsql(32,"ALLUNIT",strSql);

	document.all.AdvanceItem.style.display="none";
	if (blSetBStartTool)
	{
		document.all.bstartName.value=uname;
	}
	if (blSetBEndTool)
	{
		document.all.bendName.value=uname;
	}

	if (blSetStartTool)
	{
		document.all.startName.value=uname;
	}
	if (blSetEndTool)
	{
		document.all.endName.value=uname;
	}
}


function position_station()
{
	if (blSetBStartTool || blSetStartTool)
	{
		drawMovePt(1,nCenterX,nCenterY);
	}
	if (blSetEndTool || blSetBEndTool)
	{
		drawMovePt(2,nCenterX,nCenterY);
	}
}


var szFnObjName = "";

function mtSumbitListHistory()
{
	var maptool = "ListHistory"
	var param = ""
	mtQuerySubmit( maptool, param );
}

function mtSpellSubmit( maptool, ObjType, Range, ObjDes, Order, Other )
{
	var param
		
	var FeatType = "FeatureDescType==" + ObjType + "," + OperateType + "," + Range
	var FeatDesc = "FeatureDesc==" + ObjDes
	var ResOr = "ResultOrder==" + Order

	if ( FeatType == "FeatureDescType==,," ) FeatType = ""
	if ( FeatDesc == "FeatureDesc==" ) FeatDesc = ""
	if ( ResOr == "ResultOrder==" ) ResOr = ""

	param = FeatType + "!!" + FeatDesc + "!!" + ResOr + "!!" + Other
	OldParam = maptool + "!!" + ObjType + "!!" + Range + "!!" + ObjDes + "!!" + Order + "!!" + Other
		

	param = ClearCharacter( param,"!!" )
	mtQuerySubmit( maptool, param )
}

function ClearCharacter(str,Reg)
{
	while ( str.substr(0,2) == Reg ) {
		str = str.substring(2)
	}

	while ( str.substr(str.length-2,2) == Reg ) {
		str = str.substring(0,str.length-2)
	}

	str = str.replace(Reg+Reg,Reg)
	str = str.replace(Reg+Reg+Reg,Reg)
	str = str.replace(Reg+Reg+Reg+Reg,Reg)
	return str;
}

function mtClearHistory()
{
	var param = "Zoom==" + szMapZoom + "!!CenterX==" + nCenterX + "!!CenterY==" + nCenterY + "!!ClearHistory==1";
	mtQuerySubmit( '', param );
}

function isnot_chinese(Lastparam)
{
	var pattern = /[^\u4E00-\u9FA5]/;
	if(!pattern.test(Lastparam)) return false;
	else return 1;
}


function mtQuerySubmit( maptool, param )
{
	return;
	var variant = "DestGeoset==" + szGeoset + "!!HirerID==" + szHirerID;

	if( param != "" )
		variant += "!!" + param;

	if( blEagleEyes )
		variant += "!!EyeImageSize==" + nEagleEyeMapWidth + "," + nEagleEyeMapHeight;
	
	var szOprtParam = 
			"?hidden_MapTool=" + maptool + 
			"&hidden_Variant=" + variant +
			"&" + aryHiddenParam.join( "&" ) ;

	szOprtParam += "&hidden_MapZoom=" + szMapZoom + "&hidden_MapCenterX=" + nCenterX + "&hidden_MapCenterY=" + nCenterY;
	for(i=0;i<szOprtParam.length;i++)
	{
	;
		if(!isnot_chinese(szOprtParam.substring(i,i+1))) szOprtParam=szOprtParam.substring(0,i)+escape(szOprtParam.substring(i,i+1))+szOprtParam.substring(i+1,szOprtParam.length);
	}
	lcShowLayer(szLayerLoading);
	epEventNull();
	lcChangeImgSrc( "images/pixel.gif" );
	lcHideLayer( szLayerMapImage );
	parent.__OprtFinalSubmit__( szOprtParam );
}

var moveX,moveY,downX,downY,upX,upY,clickX,clickY;
var eventId = "";
var downID = "";

var divNum = -1;
var lineY = new Array();
var lineX = new Array();
var curX,curY;

function epCaptureEvent()
{
	document.onmousemove = epMouseMove;
	document.onmousedown = epMouseDown;
	document.onmouseup = epMouseUp;
	document.ondblclick = epMouseDbclick;
}

function epMouseMove(e)
{
	eventId = event.srcElement.id;
	moveX = event.clientX + document.body.scrollLeft;
	moveY = event.clientY + document.body.scrollTop;
	if (ovIsVisible) 
	{
	 	if((moveX>locLeft) && (moveY>locTop) && (moveX<locLeft+locWidth) && (moveY < locTop+locHeight)) 
		{
			window.status=selMsg;
		} else 
		{
			calCoord(moveX,moveY);
			//window.status=selMsg+"                当前坐标 X:"+curX+"  Y:"+curY;
			window.status=selMsg;
		}
	}
	
	if( epCheckMouse_Map() )
	{
		if( blMoveTool && blDown ) 	// 漫 游
		{
			lcMoveLayer( szLayerMapImage,moveX-downX,moveY-downY );
			lcMoveLayer( szLayerMapImageBg,moveX-downX,moveY-downY );
		}
	
		if( blRectTool  && blDown )
		{
			epRect();
		}

		if( blCircleTool && blDown )
		{ 
			drawCircleLayer(false);
		}
		
		if( divNum != -1 && divNum <= 9 && blDblLineTool )
		{
			epAddUserLine( divNum );
		}
	}
	if( epCheckMouse_Bar() && blDown ) {
		epGetScale( moveY );
		lcMoveLayer( szLayerBar, Bar_Left,moveY);
		epSetMap_Bar();
	}
}

function epCheckMouse_Map()
{
	if( (moveX > left) && (moveX < left+width) && 
		(moveY > top)  && (moveY < top+height) && 
		(downX > left) && (downX < left+width) && 
		(downY > top)  && (downY < top+height)
		 && eventId == szLayerMask && downID != szLayerOutput )
	{
		return true;
	} 
	else 
	{
		return false;
	}
}

function epMouseDown(e)
{
	moveX = event.clientX + document.body.scrollLeft;
	moveY = event.clientY + document.body.scrollTop;
	downX = moveX;
	downY = moveY;
	eventId = event.srcElement.id;
	downID = event.srcElement.id;

	if (ovIsVisible) 
	{
	 	if((moveX>locLeft) && (moveY>locTop) && (moveX<locLeft+locWidth) && (moveY < locTop+locHeight))
		{
			ovMapClick(moveX,moveY);
			window.status = "在鹰眼图上";
			return;
		}
	}
	
	if( eventId != "" )
		blDown = true;
	else 
		blDown = false;

	if( epCheckMouse_Map() && blRectTool ) {
		lcShowLayer('layRect');
		lcMoveLayer( 'layRect',downX,downY );
	}

	if( epCheckMouse_Map() && blCircleTool ) //-画圆
	{ 
		drawCircleLayer(true);  //-画圆心半径
	}

	if( epCheckMouse_Map() && ( blSetStartTool || blSetBStartTool )) //-起点
	{ 
		drawSetPt(1,downX,downY);
		if (blSetStartTool)
		{
			document.all.startName.value="";
		} 
		else document.all.bstartName.value="";
	}

	if( epCheckMouse_Map() && (blSetEndTool || blSetBEndTool)) //-终点
	{ 
		drawSetPt(2,downX,downY);    
		if (blSetEndTool)
		{
			document.all.endName.value="";
		} 
		else document.all.bendName.value="";
	}
	epMouseClick(e);
}



function epMouseUp(e)
{
	upX = moveX;
	upY = moveY;
	blDown = false;
	if( epCheckMouse_Map() && ( blRectTool || blMoveTool  || blCircleTool ) )
	{
		szXY = (downX-left) + " " + (downY-top) + "," + (upX-left) + " " + (upY-top)
		mtSubmitFromMap( szXY );
		submitDrag(downX,downY,upX,upY);
	}
}

function epMouseClick(e)
{
	clickX = moveX;
	clickY = moveY;
	eventId = event.srcElement.id;

	if( blClickTool && epCheckMouse_Map())
		mtSubmitFromMap( (clickX-left) + " " + (clickY-top) );

	if( epCheckMouse_Map() && blDblLineTool ) 
	{	// 画虚线
		divNum = divNum + 1;
		lineX[divNum] = clickX - left;
		lineY[divNum] = clickY - top;
		if (divNum>9)
		{
			alert('最大为9段，请重新选择！');
			if(divNum>10) clearRuler();
		}
		if (divNum>1)
		{
			OldRuler = OldRuler + calDistance(lineX[divNum],lineY[divNum],lineX[divNum-1],lineY[divNum-1]);
		}
	}
	
	if( epCheckMouse_Bar() ) { // 滑轨
		epGetScale( moveY );
		lcMoveLayer( szLayerBar, Bar_Left,clickY);
		epSetMap_Bar();
		mtSumbitMapZoom( scale );
	}
}

function clearRuler()
{
	OldRuler=0.0;
	var i;
	for (i=0;i<10 ;i++ )
	{
		lcHideLayer( 'div'+ i );
		epSetMeasureq( i, 0, 0, 0, 0, "" );
	}
	divNum =0 ;
}

function epMouseDbclick(e)
{
	eventId = event.srcElement.id;
	var szXY = ""

	if( epCheckMouse_Map() && blDblLineTool ) {		// 画虚线
		for ( var i=0; i< lineX.length; i++ ) {
			szXY = szXY + lineX[i] + " " + lineY[i] + ","			
		}
		szXY = szXY.substring(0,szXY.length-1)	
		//mtSubmitFromMap( szXY );  // wsd add 客户端计算

		divNum = -1;
		lineY = new Array();
		lineX = new Array();
	}
}

function epSetMap_Bar()
{
	var w = width / scale;
	var h = height / scale;

	var x = width/2 * ( 1 - 1/scale );
	var y = height/2 * ( 1 - 1/scale );
	
	lcChangeImgSize( w, h );
	lcSetImgSize( szImageMapBg, w, h );
	lcMoveLayer( szLayerMapImage, x, y);
	lcMoveLayer( szLayerMapImageBg, x, y);
}

function epGetScale( paramY )
{
	if( moveY < Bar_Top )
		scale = ( Bar_bgHeight / 2 ) / ( ( ( Bar_Top - Bar_Height / 2 ) - paramY ) * 2 + Bar_bgHeight / 2 )
	if( moveY > Bar_Top )
		scale = ( ( paramY - ( Bar_Top - Bar_Height / 2 ) ) * 2 + Bar_bgHeight / 2 ) / ( Bar_bgHeight / 2 );
	if( scale > 3 )   scale = 3;
	if( scale < 1/3 ) scale = 1/3;
	
}

function epCheckMouse_Bar()
{
	if( moveX > Bar_bgLeft && moveX < ( Bar_bgLeft + Bar_bgWidth ) &&
		moveY > Bar_bgTop  && moveY < ( Bar_bgTop + Bar_bgHeight-10 ) &&
		blBarExit && eventId == szLayerBarMask &&  downID != szLayerOutput)
		return true;
	else
		return false;
}

function	drawSetPt(locNum,locX,locY)
{
	var layName;
	calCoord(locX,locY);
	switch(locNum)
	{
		case 1:
			layName = 'divStart';  //- 起点
			startPtX=curX;
			startPtY=curY;
			//alert('x:'+startPtX+'y:'+startPtY);
			break;
		case 2:
			layName = 'divEnd';  //- 终点
			endPtX=curX;
			endPtY=curY;
			//alert('x:'+endPtX+'y:'+endPtY);
			break;
		case 3:
			layName = 'divMove';  //- 移动点
			break;
	}
	document.all( layName ).style.top = locY-11;
	document.all( layName ).style.left = locX-11;
	lcShowLayer( layName);
}

function	drawMovePt(locNum,moveX,moveY)
{
	var layName;
	var locX,locY;
	locX = calPixelX(moveX);
	locY = calPixelY(moveY);
	switch(locNum)
	{
		case 1:
			layName = 'divStart';  //- 起点
			startPtX=moveX;
			startPtY=moveY;
			break;
		case 2:
			layName = 'divEnd';  //- 终点
			endPtX=moveX;
			endPtY=moveY;
			break;
		case 3:
			layName = 'divMove';  //- 移动点
			break;
	}
	lcShowLayer( layName);
	document.all( layName ).style.top = locY-11;
	document.all( layName ).style.left = locX-11;
}

function epAddUserLine( d )
{
	lcShowLayer( 'div'+ d );
	var MmX = lineX[divNum] + left;
	var MmY = lineY[divNum] + top;
	var McX = moveX;
	var McY = moveY;
	var szHtml;
	szHtml = ""+calDistance(MmX,MmY,McX,McY)+",";
	interRulerResult( szHtml );

	if( McY > top + height ) McY = top + height;
	if( McY < top )     McY = top;
	if( McX > left + width )  McX = left + width;
	if( McX < left )     McX = left;

	if( McX -MmX >-2 && McX -MmX <2 ) //1
	{
		if (MmY>McY) epSetMeasureq( d, McY, (MmX+McX)*0.5, 2, MmY - McY, 'images/vv.gif' );
		else         epSetMeasureq( d, MmY, (MmX+McX)*0.5, 2, McY - MmY, 'images/vv.gif' );		
	}
	else if(McY - MmY>-2  && McY - MmY<2) //1
	{
		if (MmX>McX) epSetMeasureq( d, (MmY+McY)*0.5-8, McX, MmX - McX, 2, 'images/vh.gif' );
		else         epSetMeasureq( d, (MmY+McY)*0.5-8, MmX, McX - MmX, 2, 'images/vh.gif' );
	}
	else if( McX > MmX && McY > MmY ) //1
		epSetMeasureq( d, MmY, MmX, McX-MmX, McY-MmY, 'images/tr.gif' );
	else if( McX > MmX && McY < MmY ) //2
		epSetMeasureq( d, McY,MmX,McX-MmX,MmY-McY, 'images/tl.gif' );
	else if( McX < MmX && McY > MmY ) //3
		epSetMeasureq( d,MmY,McX,MmX-McX,McY-MmY, 'images/tl.gif' );
	else if( McX < MmX && McY < MmY ) //4
		epSetMeasureq( d,McY,McX,MmX-McX,MmY-McY, 'images/tr.gif' );
}

function epSetMeasureq( pname, ptop, pleft, pwidth, pheight, psrc )
{
	document.all( 'div' + pname ).style.top = ptop;
	document.all( 'div' + pname ).style.left = pleft;
	document.all( 'img' + pname ).width = pwidth;
	document.all( 'img' + pname ).height = pheight;
	document.all( 'img' + pname ).src = psrc;
}

function calDistance(ix1,iy1,ix2,iy2)
{
	var dist,sc;
	dist = Math.sqrt((ix2-ix1)*(ix2-ix1)+(iy2-iy1)*(iy2-iy1))*(eRight-eLeft)/MapPicWidth;
	dist = Math.round(dist*100)/100;
	return dist;
}

function epRect()
{
	if( moveX<downX && moveY<downY ) {        // No.2
		lcResizeLayer('layRect',downX-moveX,downY-moveY);
		lcMoveLayer('layRect',moveX,moveY);
	} else if( moveX>downX && moveY<downY ) { // No.1
		lcResizeLayer('layRect',moveX-downX,downY-moveY);
		lcMoveLayer('layRect',downX,moveY);
	} else if( moveX<downX && moveY>downY ) { // No.3
		lcResizeLayer('layRect',downX-moveX,moveY-downY);
		lcMoveLayer('layRect',moveX,downY);
	} else if( moveX>downX && moveY>downY ) { // No.4
		lcResizeLayer('layRect',moveX-downX,moveY-downY);
		lcMoveLayer('layRect',downX,downY);
	}
}

function epInitMappage() {
	downX = 0;
	downY = 0;
	moveX = 0;
	moveY = 0;
	
	lcHideLayer( szLayerLoading );

	lcHideLayer( szLayerBorder );
	lcResizeLayer( szLayerBorder, 1, 1 );
	lcMoveLayer(  szLayerBorder, -10, -10 );

	lcChangeImgSize( width, height );  //- wsd add
	lcMoveLayer( szLayerMapImage, 0, 0 );
	lcShowLayer( szLayerMapImage );

	for(i=0; i<=9; ++i) {
		lcHideLayer( 'div' + i );
		lcMoveLayer(  'div' + i, -10, -10 );
		lcResizeLayer('div' + i, 1, 1 );
	}
	if( blBarExit )
		lcMoveLayer( szLayerBar, Bar_Left, Bar_Top );
}


function drawCircleLayer(isInith)
{
	var rDist;
	var i,x1,y1,x2,y2;
	if (isInith)
	{
		rDist=2.0;
	}
	else
	{
		rDist = Math.sqrt((downX - moveX)*(downX - moveX)+(downY- moveY)*(downY- moveY));
		var szHtm = "提示信息<br><hr>当前半径为：" + calDistance(downX,downY,moveX,moveY) + " 米<br>"
		frmMappage.lcReplaceLayerContent( szLayerOutput, szHtm );
	}

	for (i=1;i<9 ;i++ )
	{
		x1=Math.cos((i-0.25)*3.1415926/4)*rDist + downX;
		y1=Math.sin((i-0.25)*3.1415926/4)*rDist + downY;
		x2=Math.cos((i+0.75)*3.1415926/4)*rDist + downX;
		y2=Math.sin((i+0.75)*3.1415926/4)*rDist + downY;
		if (isInith)
		{
			lcShowLayer( 'div'+ i );
		}
		drawLine(i,x1,y1,x2,y2);
	}
}

function drawLine(d,MmX1,MmY1,McX1,McY1)
{
	if( McY1 > top + height ) McY1 = top + height;
	if( McY1 < top )     McY1 = top;
	if( McX1 > left + width )  McX1 = left + width;
	if( McX1 < left )     McX1 = left;

	if( McX1 -MmX1 >-2 && McX1 -MmX1 <2 ) //1
		epSetMeasureq( d, MmY1, MmX1, McX1-MmX1, McY1-MmY1, 'images/vv.gif' );
	else if(McY1 - MmY1>-2  && McY1 - MmY1<2) //1
		epSetMeasureq( d, MmY1, MmX1, McX1-MmX1, McY1-MmY1, 'images/vh.gif' );
	else if( McX1 > MmX1 && McY1 > MmY1 ) //1
		epSetMeasureq( d, MmY1, MmX1, McX1-MmX1, McY1-MmY1, 'images/tr.gif' );
	else if( McX1 > MmX1 && McY1 < MmY1 ) //2
		epSetMeasureq( d, McY1,MmX1,McX1-MmX1,MmY1-McY1, 'images/tl.gif' );
	else if( McX1 < MmX1 && McY1 > MmY1 ) //3
		epSetMeasureq( d,MmY1,McX1,MmX1-McX1,McY1-MmY1, 'images/tl.gif' );
	else if( McX1 < MmX1 && McY1 < MmY1 ) //4
		epSetMeasureq( d,McY1,McX1,MmX1-McX1,MmY1-McY1, 'images/tr.gif' );
}


function epEventNull()
{
	document.onmousemove = '';
	document.onmousedown = '';
	document.onmouseup = '';
	document.onclick = '';
	document.ondblclick = '';
}


function codeName(scode)
{
	var sname;
	switch(scode)
	{
		case '00':	
			sname = '全部';
			break;
		case '01':	
			sname = '政府机关';
			break;
		case '02':
			sname = '科研院所';
			break;
		case '03':
			sname = '餐饮娱乐';
			break;
		case '04':
			sname = '宾馆饭店';
			break;
		case '05':
			sname = '公司企业';
			break;
		case '06':
			sname = '文化教育';
			break;
		case '07':
			sname = '金融银行';
			break;
		case '08':
			sname = '写字楼';
			break;
		case '09':
			sname = '商业网点';
			break;
		case '10':
			sname = '医疗卫生';
			break;
		case '11':
			sname = '旅游景点';
			break;
		case '12':
			sname = '房地产';
			break;
		case '13':
			sname = '邮政电信';
			break;
		case '14':
			sname = '运动场馆';
			break;
		case '15':
			sname = '车站码头';
			break;
		case '16':
			sname = '居民小区';
			break;
		case '17':
			sname = '汽车服务';
			break;
		case '18':
			sname = '行政区划';
			break;
		case '19':
			sname = '街道';
			break;
		case '20':
			sname = '水系';
			break;
		case '21':
			sname = '绿地';
			break;
		case '22':
			sname = '公交线路';
			break;
		case '23':
			sname = '公交车站';
			break;
		case '24':
			sname = '基础地图';
			break;
		case '25':
			sname = '建筑物';
			break;
		case '26':
			sname = '高程测点';
			break;
		default:
			sname = '其它';
			break;
	}
	return sname;
}

function mtSubmitFuzzyQuery()
{
	if(!isReqing)
    {
		var bolSubmit = false;
		if(mtSubmitFuzzyQuery.arguments[0] == false)
		{
			if( window.event.keyCode == 13 ) bolSubmit = true;		
		}
	
		if(bolSubmit || mtSubmitFuzzyQuery.arguments[0] != false)
		{
			var maptool = "FuzzyQuery";
			var szLyr =  document.all.selSearchLayer.options[document.all.selSearchLayer.selectedIndex].value;
			var szName = document.all.txtFindString.value;
			if (szName.length>0)
			{
				var strSql = 'MAIN_NAME LIKE "%' + szName + '%"';
				if (szLyr>"00")
				{
					strSql = strSql + ' and fir_type="' + szLyr + '"';
				}
				setStrsql(2,"ALLUNIT",strSql);
			}
			else alert("名称为空，请重新输入！");
	 	}
    }
	else alert("正在加载地图数据，请稍候！");
}


function mtSubmitAdvanceQuery()
{
	if(!isReqing)
    {
		var bolSubmit = false;
		bolSubmit = true;		
		var maptool = "FuzzyQuery";
		var szLyr;
		var szName;
		var szOrder;
		var strSql='',sand=' and ';
		var nofirst=false;

		szName = document.all.Txt_Name.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'UNAME LIKE "%' + szName + '%"';
		}
		szLyr =  document.all.SelFir_Type.options[document.all.SelFir_Type.selectedIndex].value;
		szLfir = szLyr;
		if (szLyr>"00")
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql = strSql + ' fir_type="' + szLyr + '"';
		}
		szLyr =  document.all.SelSec_Type.options[document.all.SelSec_Type.selectedIndex].value;
		if ((szLyr>"00") && (szLfir>"00"))
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql = strSql + ' sec_type="' + szLyr + '"';
		}

		szName = document.all.Txt_Address.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'locat_add LIKE "%' + szName + '%"';
		}

		szName = document.all.Txt_Telephone.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += ' telphone LIKE "%' + szName + '%"';
		}

		szName = document.all.Txt_Introduce.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'introduce LIKE "%' + szName + '%"';
		}

		szName = document.all.Txt_Cadastral.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'cadastral LIKE "' + szName + '%"';
		}

		szName = document.all.Txt_Cocode.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'ent_coding LIKE "%' + szName + '%"';
		}

		szName = document.all.Txt_Alias.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'alias_name LIKE "%' + szName + '%"';
		}

		szName = document.all.Txt_Code.value;
		if (szName.length>0)
		{
			if (nofirst)
			{
				strSql += sand;
			}
			nofirst=true;
			strSql += 'coding LIKE "' + szName + '%"';
		}
		
		if (nofirst)
		{
			//strSql += ' order by fir_type';
			setStrsql(2,"ALLUNIT",strSql);
		}
		else alert("参数为空，请填写！");
	}
	else alert("正在加载地图数据，请稍候！");
}


function calCoord(mouseX,mouseY)
{
	var sc = (eRight-eLeft)/MapPicWidth;
	curX = Math.round(eLeft + sc*(mouseX - MapPicLeft));
	curY = Math.round(eTop  - sc*(mouseY - MapPicTop));
}


function calPixelX(locX)
{
	var sc = (eRight-eLeft)/MapPicWidth;
	var coordX = (locX-eLeft)/sc + MapPicLeft;
	coordX = Math.round(coordX);
	return(coordX);
}

function calPixelY(locY,coordY)
{
	var sc = (eRight-eLeft)/MapPicWidth;
	var coordY = (eTop-locY)/sc  + MapPicTop;
	coordY = Math.round(coordY);
	return(coordY);
}



function revertToolPic() 
{
	document.zoomin.src="images/zoomin_1.gif";
	document.zoomout.src="images/zoomout_1.gif";
	document.identify.src="images/identify_1.gif";
	document.pan.src="images/pan_1.gif";
	document.measure.src="images/measure_1.gif";
}

function setToolPic(functName) 
{
	revertToolPic();
	focus();
	switch(functName)
	{
		case "Zoom In":
			document.zoomin.src="images/zoomin_2.gif";
			break;
	}
}
