⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mousereal.js

📁 1985498mapxtremeforaspdemo.rar
💻 JS
📖 第 1 页 / 共 2 页
字号:
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);  //-画圆心半径
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -