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

📄 activexdemo.htm

📁 delphi精品控件:dappermapDapperMap地图控件 1.05
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<script language="javascript" >
var angle = 0;
var addstate = 0;
var myhittest = 0;
var mydragtest = 0;

var mydragobjtype = null
var mydraglayerid = null;
var mydragobjid = null;
var begindragx = 0;
var begindragy = 0;

var curpoint = 0;
var curline = 0;
var curpolygon = 0;
var curtip = 0;
var curani = 0;
var curpic = 0;


var tmplineid = 0;
var tmppolygonid = 0;
var tmppoiid = 0;
var tmplayerid = 0;

var strPosList = "";

var	 pointArray = new Array(10);
var	 lineArray = new Array(10);
var	 polygonArray = new Array(10);
var	 tipArray = new Array(10);
var  aniArray = new Array(10);
var  picArray = new Array(10);


var layerid = 0;

var FlashLayerID = 0;
var timeName = null;
var bShow = 0;
var flashobjArray = null;

var startnodeid = 0;
var endnodeid = 0;
var nodestate= 0;

var showhistoryTimer = null;
var IndexPos= 0;

var historyposlist = "";

function FlashPoint()
{
	//隐藏,显示层
	if(bShow == 0)
	{
		//window.status = "HIDE";
		DapperMap.SetLayerConf("600","HIDE",0);
		bShow  = 1;
	}
	else if(bShow == 1)
	{
		//window.status = "SHOW";
		DapperMap.SetLayerConf("600","SHOW",0);
		bShow = 0;
	}
	DapperMap.DrawActiveLayer();
}
		

function SetMapState(value)
{
	DapperMap.MapState = value;
}

function AddHistoryPos()
{
  if(IndexPos<historyposlist.length)
	{
		strxy = historyposlist[IndexPos].split(",");	
		strData = historyposlist[IndexPos]+"\t0\t轨迹点" + IndexPos;
		DapperMap.AddGeoObj(1,strData,0x1001);	
		if(IndexPos>0)
		{
			strData = historyposlist[IndexPos-1] + "," + historyposlist[IndexPos] + "\t343\t轨迹线";
			nRet =DapperMap.AddGeoObj(7,strData,0x9001);
			//alert(strData);
		}
				
		if(DapperMap.PtInMapView(strxy) == 1)
		{
		  DapperMap.DrawActiveLayer();
		}
		else
		{
		  DapperMap.MapCenterX = strxy[0];
		  DapperMap.MapCenterY = strxy[1];
		  DapperMap.DrawMap();
		}			
		IndexPos++;
	}
	else
	{
	   IndexPos = 0;
	   DapperMap.DelMapLayer(0x9001);
	   DapperMap.DelMapLayer(0x1001);
	   clearInterval(showhistoryTimer);
	}
}

function showhistory()
{
		 //在这先请求数据,并初始化全局变量
		 historyposlist= "";
		 var strUrl = "http://www.lingyusoft.cn/download/poslist.txt";
		 strData = RequestURL(strUrl);
		 historyposlist = strData.split("\r\n");	 	   
	   DapperMap.DelMapLayer(0x9001);
	   DapperMap.DelMapLayer(0x1001);
	   DapperMap.AddMapLayer("7\t9001\轨迹线\t10000\t0\t10000\t1");//自定义线
	   DapperMap.AddMapLayer("1\t1001\t18101\t10000\t0\t10000\t1");//点层
	   //DapperMap.SetLayerConf("1001","HIDE",0);
	   DapperMap.DrawActiveLayer();
	   showhistoryTimer=setInterval("AddHistoryPos()",1000); 
}

function SetCenter()
{
   var longlat = document.getElementById('city_select').value;
   var strxy = longlat.split(",");
   var long = strxy[0];
   var lat = strxy[1];
   DapperMap.MapCenterX = long;
   DapperMap.MapCenterY = lat;
   DapperMap.DrawMap();
}

function SetAddState(value)
{
	if(layerid == 0)
		AddLayer(1);
  addstate = value;
}

function AddLayer(value)
{
  //分别添加点,线面层///////////////////////////////////////
  //DapperMap.AddMapLayer("3\t300\绿地\t10000\t0\t10000\t1"); //不透明风格的面
	//DapperMap.AddMapLayer("3\t300\测试风格\t10000\t0\t10000\t1");//透明风格的面
	DapperMap.AddMapLayer("3\t300\t斜线风格\t10000\t0\t10000\t1");//斜线且透明风格的面
	DapperMap.AddMapLayer("2\t200\t四级道路\t10000\t0\t10000\t1");//
	DapperMap.AddMapLayer("1\t100\t18101\t10000\t0\t10000\t1");//点层
	//DapperMap.AddMapLayer("1\t1001\t18101\t10000\t0\t10000\t1");//点层
	DapperMap.AddMapLayer("5\t500\t18101\t10000\t0\t10000\t1");	//图片层	
	DapperMap.AddMapLayer("6\t700\斜线风格\t10000\t0\t10000\t1");//斜线且透明风格的面
	//DapperMap.AddMapLayer("7\t900\t自定义线\t10000\t0\t10000\t1");//自定义线
	//添加一个临时的闪动图层
	FlashLayerID = DapperMap.AddMapLayer("1\t600\t18101\t10000\t0\t10000\t1");		
	//添加一个路径规划结果显示的层
	DapperMap.AddLayerStyle("选中线中心\t100000\t13\t0\t4\tRGB(0,0,255)");
	
	DapperMap.AddLayerStyle("轨迹线\t20000\t13\t0\t2\tRGB(255,0,0)\tLINE:0,0,20,0;LINE:10,3,20,0;LINE:10,-3,20,0;");
	//DapperMap.AddMapLayer("7\t9001\轨迹线\t10000\t0\t10000\t1");//自定义线
	
	DapperMap.AddMapLayer("2\t900\t选中线\t10000\t0\t10000\t1");
	DapperMap.AddMapLayer("2\t800\t选中线\t10000\t0\t10000\t1");
	DapperMap.AddMapLayer("8\t1000\高速1标注\t10000\t0\t10000\t1");
	
	
	layerid = 100;
}

function SaveLayer()
{
	  if(tmppolygonid != 0)
    {
    	DapperMap.DelGeoObj(tmppolygonid,0x300);
    	tmppolygonid = 0;
    }
    DapperMap.SaveLayer(0x100);
    DapperMap.SaveLayer(0x800);
    DapperMap.SaveLayer(0x900);
    DapperMap.SaveLayer(0x300);  
    alert("保存完毕");
}


function DelPoint()
{
  if(curpoint > 0)
  {
  	 curpoint--;
     DapperMap.DelGeoObj(pointArray[curpoint],0x100);
	 	 DapperMap.DrawActiveLayer();
  }
}

function DelLine()
{
	if(curline > 0)
	{
		curline--;
		DapperMap.DelGeoObj(lineArray[curline],0x200);
		DapperMap.DrawMap();
	}
}

function DelPolygon()
{
	if(curpolygon > 0)
	{
		curpolygon--;
		DapperMap.DelGeoObj(polygonArray[curpolygon],0x300);
		DapperMap.DrawActiveLayer();
	}
}

function DelTip()
{
	if(curtip > 0)
	{
		curtip--;
		DapperMap.DelTip(tipArray[curtip]);
		DapperMap.DrawActiveLayer();
	}
}

function DelAni()
{
  if(curani > 0)
  {
    curani--;
	 	DapperMap.DelAnimation(aniArray[curani]);
	 	DapperMap.DrawActiveLayer();
  }
}

function DelPic()
{
	if(curpic > 0)
	{
		curpic--;
		DapperMap.DelGeoObj(picArray[curpic],0x500);
		DapperMap.DrawActiveLayer();
	}
}



function SetMapAngle(value)
{
	if(value == 0)
	{
    	angle += 3.1415926/12;
    	DapperMap.MapAngle = angle;
			DapperMap.DrawMap();
	}
	else
	{
    	DapperMap.MapAngle = 0;
			DapperMap.DrawMap();		
	}
}

function SetHitTest(value)
{
	if(myhittest == 2 && value == 0)
	{
		//停止定时器,并清除闪动图层
		if(timeName != null)
		{
			clearInterval(timeName);
		}
		//闪动图层中的数据,追加到原来所在的图层中
		DapperMap.DelMapLayer(0x600);
		
		if(flashobjArray != null)
		{
			for(i=0;i<flashobjArray.length;i++)
			{
				DapperMap.AddGeoObj(1,flashobjArray[i],0x100);			
			}
		}
		DapperMap.DrawActiveLayer();
		
	}
	myhittest = value;
}

function SetDragTest(value)
{
	mydragtest = value;
	if(mydragtest == 1)
	{
	  DapperMap.MapState = 0;
	  addstate = 0;
	}
}

function SetCustomCursor(value)
{
	DapperMap.SetCustomCursor(value);
}

function SetNavNode(value)
{
	nodestate = value;
	if(value == 0)
	{
		DapperMap.DelGeoObj(startnodeid,0x100);
		DapperMap.DelGeoObj(endnodeid,0x100);
		DapperMap.DrawActiveLayer();
	}
}

function OnlyShowYinHang()
{
	  DapperMap.SetLayerConf("ALLPOILAYER","HIDE",0);
	  DapperMap.SetLayerConf("18101,18102,18103,18104,18105,18106,18107,18108","SHOW",0);
	  DapperMap.DrawMap();
}

function AddCenter(x,y,name)
{
   DapperMap.MapCenterX = x;
	 DapperMap.MapCenterY = y;
   var strData;
	 strData = x + "," + y + "\t" + "0\t" + name;
	 if(layerid == 0)
	 	AddLayer(1);
   DapperMap.AddGeoObj(1,strData,0x100);	  
	 DapperMap.DrawMap();
}

function Nav()
{
	strcondition = DapperMap.GetGeoObj(1,startnodeid,1) + "," + DapperMap.GetGeoObj(1,endnodeid,1) +",0";
	//alert(strcondition);
	var posList = DapperMap.GetPath(strcondition);
	strData = posList + "\t0\t导航线";
	DapperMap.AddGeoObj(2,strData,0x800);
	DapperMap.DrawMap();
}


function setpicangle(value)
{
	DapperMap.UpdateGeoObj(0x500,picArray[0],"55",5);
	DapperMap.DrawActiveLayer();
}

function CreateXMLHttp()
{
	var obj=null;
	try{
		obj=new ActiveXObject("Microsoft.XMLHTTP");
		return obj;
	}catch(e)
	{
		try{
			obj=window.XMLHttpRequest;
			return obj;
		}catch(se){}
	}

	if(!obj&&typeof obj!="undefined")
	{
		obj=new XMLHttpRequest();
		return obj;
	}
}

function RequestURL(strURL)
{
	var result=0;
	xmlhttp=CreateXMLHttp();	
  //alert(strURL); 
	if(xmlhttp!=null)
	{
		//xmlhttp.onreadystatechange=Process;
		xmlhttp.Open("GET",strURL, false);
		try
		{
			xmlhttp.send("");
			result=xmlhttp.responseText;
			//alert(result);
		}catch(e)
		{
			result=0;
		}		
	}
	xmlhttp = null;
  return result;
}		


function SearchKeyWord()
{
   //通过Ajax发送Get请求,并把结果打印到Span中来
   //得到关键字
  var KeyWord = document.getElementById('KeyWord').value;
	if(KeyWord == "")
	{
		document.getElementById('result').innerHTML = "";
		return;
	}
	var content = "";
	//alert(strResult);
	var strSearchCondition;
	strSearchCondition = "1\t1\t"+KeyWord+"\t20";//返回前20个结果
  var strResult = DapperMap.search(strSearchCondition);
  var strLines = strResult.split("\r\n");
	for(i=0;i<strLines.length;i++)
	{
	   var strFields = strLines[i].split("\t");
	   //strFields[0]为名字
	   content += "<a href= javascript:AddCenter(" + strFields[2] + "," + strFields[3] + ",'" + strFields[0] + "')>" + strFields[0] + "</a><br>";
	}
	document.getElementById('result').innerHTML = content;   
}



//判断控件是否注册///////
function   DapperMapRegistered()
{   
  var   obj=null;   
  try{   

⌨️ 快捷键说明

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