505 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			HTML
		
	
	
		
		
			
		
	
	
			505 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			HTML
		
	
	
| 
								 | 
							
								<!DOCTYPE html>
							 | 
						||
| 
								 | 
							
								<html lang="en">
							 | 
						||
| 
								 | 
							
								<head>
							 | 
						||
| 
								 | 
							
								  <meta charset="UTF-8">
							 | 
						||
| 
								 | 
							
								  <title>真趣一图通</title>
							 | 
						||
| 
								 | 
							
								  <script type="text/javascript" src="jsmap/2D/jsmap_light.js"></script>
							 | 
						||
| 
								 | 
							
								  <link type="text/css" rel="stylesheet" href="jsmap/2D/jsmap_light.css"></link>
							 | 
						||
| 
								 | 
							
								<!--  <script type="text/javascript" src="jsmap/3D/jsmap.js"></script>-->
							 | 
						||
| 
								 | 
							
								<!--  <link type="text/css" rel="stylesheet" href="jsmap/3D/jsmap.css"></link>-->
							 | 
						||
| 
								 | 
							
								  <script type="text/javascript" src="https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js"></script>
							 | 
						||
| 
								 | 
							
								  <style>
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:after,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:before,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p:after,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p:before {
							 | 
						||
| 
								 | 
							
								      margin: 0;
							 | 
						||
| 
								 | 
							
								      padding: 0;
							 | 
						||
| 
								 | 
							
								      -webkit-box-sizing: border-box;
							 | 
						||
| 
								 | 
							
								      -moz-box-sizing: border-box;
							 | 
						||
| 
								 | 
							
								      -o-box-sizing: border-box;
							 | 
						||
| 
								 | 
							
								      -ms-box-sizing: border-box;
							 | 
						||
| 
								 | 
							
								      box-sizing: border-box;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point {
							 | 
						||
| 
								 | 
							
								      width: 10px;
							 | 
						||
| 
								 | 
							
								      height: 10px;
							 | 
						||
| 
								 | 
							
								      border-radius: 50%;
							 | 
						||
| 
								 | 
							
								      border: 1px solid hsla(0, 0%, 100%, 0.5);
							 | 
						||
| 
								 | 
							
								      cursor: pointer;
							 | 
						||
| 
								 | 
							
								      color: #0ff;
							 | 
						||
| 
								 | 
							
								      background: currentColor;
							 | 
						||
| 
								 | 
							
								      z-index: 3;
							 | 
						||
| 
								 | 
							
								      left: 50%;
							 | 
						||
| 
								 | 
							
								      top: 50%;
							 | 
						||
| 
								 | 
							
								      -webkit-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -moz-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -o-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -ms-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      box-shadow: 0 0 2em currentColor, 0 0 0.5em currentColor;
							 | 
						||
| 
								 | 
							
								      position: absolute;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:after,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:before,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p:after,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p:before {
							 | 
						||
| 
								 | 
							
								      content: "";
							 | 
						||
| 
								 | 
							
								      position: absolute;
							 | 
						||
| 
								 | 
							
								      width: 100%;
							 | 
						||
| 
								 | 
							
								      height: 100%;
							 | 
						||
| 
								 | 
							
								      left: 50%;
							 | 
						||
| 
								 | 
							
								      top: 50%;
							 | 
						||
| 
								 | 
							
								      border-radius: 50%;
							 | 
						||
| 
								 | 
							
								      -webkit-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -moz-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -o-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -ms-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:after,
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point:before {
							 | 
						||
| 
								 | 
							
								      border: 1px solid;
							 | 
						||
| 
								 | 
							
								      -webkit-animation: jsmap-mapAni 1s ease infinite;
							 | 
						||
| 
								 | 
							
								      -moz-animation: jsmap-mapAni 1s ease infinite;
							 | 
						||
| 
								 | 
							
								      -o-animation: jsmap-mapAni 1s ease infinite;
							 | 
						||
| 
								 | 
							
								      -ms-animation: jsmap-mapAni 1s ease infinite;
							 | 
						||
| 
								 | 
							
								      animation: jsmap-mapAni 1s ease infinite;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p:before {
							 | 
						||
| 
								 | 
							
								      border: 1px solid;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    .jsmap-animation-point p {
							 | 
						||
| 
								 | 
							
								      position: absolute;
							 | 
						||
| 
								 | 
							
								      left: 50%;
							 | 
						||
| 
								 | 
							
								      top: 50%;
							 | 
						||
| 
								 | 
							
								      width: 0;
							 | 
						||
| 
								 | 
							
								      height: 0;
							 | 
						||
| 
								 | 
							
								      border-radius: 50%;
							 | 
						||
| 
								 | 
							
								      -webkit-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -moz-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -o-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -ms-transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      transform: translate(-50%, -50%);
							 | 
						||
| 
								 | 
							
								      -webkit-animation: jsmap-mapAni 2s ease infinite;
							 | 
						||
| 
								 | 
							
								      -moz-animation: jsmap-mapAni 2s ease infinite;
							 | 
						||
| 
								 | 
							
								      -o-animation: jsmap-mapAni 2s ease infinite;
							 | 
						||
| 
								 | 
							
								      -ms-animation: jsmap-mapAni 2s ease infinite;
							 | 
						||
| 
								 | 
							
								      animation: jsmap-mapAni 2s ease infinite;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    @-webkit-keyframes jsmap-mapAni {
							 | 
						||
| 
								 | 
							
								      0% {
							 | 
						||
| 
								 | 
							
								        width: 0;
							 | 
						||
| 
								 | 
							
								        height: 0;
							 | 
						||
| 
								 | 
							
								        opacity: 1;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=1);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      25% {
							 | 
						||
| 
								 | 
							
								        width: 12px;
							 | 
						||
| 
								 | 
							
								        height: 12px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.7;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=70);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      50% {
							 | 
						||
| 
								 | 
							
								        width: 20px;
							 | 
						||
| 
								 | 
							
								        height: 20px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.5;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=50);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      75% {
							 | 
						||
| 
								 | 
							
								        width: 30px;
							 | 
						||
| 
								 | 
							
								        height: 30px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.2;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=20);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      to {
							 | 
						||
| 
								 | 
							
								        width: 40px;
							 | 
						||
| 
								 | 
							
								        height: 40px;
							 | 
						||
| 
								 | 
							
								        opacity: 0;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=0);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    @-moz-keyframes jsmap-mapAni {
							 | 
						||
| 
								 | 
							
								      0% {
							 | 
						||
| 
								 | 
							
								        width: 0;
							 | 
						||
| 
								 | 
							
								        height: 0;
							 | 
						||
| 
								 | 
							
								        opacity: 1;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=1);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      25% {
							 | 
						||
| 
								 | 
							
								        width: 12px;
							 | 
						||
| 
								 | 
							
								        height: 12px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.7;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=70);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      50% {
							 | 
						||
| 
								 | 
							
								        width: 20px;
							 | 
						||
| 
								 | 
							
								        height: 20px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.5;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=50);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      75% {
							 | 
						||
| 
								 | 
							
								        width: 30px;
							 | 
						||
| 
								 | 
							
								        height: 30px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.2;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=20);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      to {
							 | 
						||
| 
								 | 
							
								        width: 40px;
							 | 
						||
| 
								 | 
							
								        height: 40px;
							 | 
						||
| 
								 | 
							
								        opacity: 0;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=0);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    @-o-keyframes jsmap-mapAni {
							 | 
						||
| 
								 | 
							
								      0% {
							 | 
						||
| 
								 | 
							
								        width: 0;
							 | 
						||
| 
								 | 
							
								        height: 0;
							 | 
						||
| 
								 | 
							
								        opacity: 1;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=1);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      25% {
							 | 
						||
| 
								 | 
							
								        width: 12px;
							 | 
						||
| 
								 | 
							
								        height: 12px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.7;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=70);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      50% {
							 | 
						||
| 
								 | 
							
								        width: 20px;
							 | 
						||
| 
								 | 
							
								        height: 20px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.5;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=50);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      75% {
							 | 
						||
| 
								 | 
							
								        width: 30px;
							 | 
						||
| 
								 | 
							
								        height: 30px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.2;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=20);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      to {
							 | 
						||
| 
								 | 
							
								        width: 40px;
							 | 
						||
| 
								 | 
							
								        height: 40px;
							 | 
						||
| 
								 | 
							
								        opacity: 0;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=0);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    @-ms-keyframes jsmap-mapAni {
							 | 
						||
| 
								 | 
							
								      0% {
							 | 
						||
| 
								 | 
							
								        width: 0;
							 | 
						||
| 
								 | 
							
								        height: 0;
							 | 
						||
| 
								 | 
							
								        opacity: 1;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=1);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      25% {
							 | 
						||
| 
								 | 
							
								        width: 12px;
							 | 
						||
| 
								 | 
							
								        height: 12px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.7;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=70);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      50% {
							 | 
						||
| 
								 | 
							
								        width: 20px;
							 | 
						||
| 
								 | 
							
								        height: 20px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.5;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=50);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      75% {
							 | 
						||
| 
								 | 
							
								        width: 30px;
							 | 
						||
| 
								 | 
							
								        height: 30px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.2;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=20);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      to {
							 | 
						||
| 
								 | 
							
								        width: 40px;
							 | 
						||
| 
								 | 
							
								        height: 40px;
							 | 
						||
| 
								 | 
							
								        opacity: 0;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=0);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    @keyframes jsmap-mapAni {
							 | 
						||
| 
								 | 
							
								      0% {
							 | 
						||
| 
								 | 
							
								        width: 0;
							 | 
						||
| 
								 | 
							
								        height: 0;
							 | 
						||
| 
								 | 
							
								        opacity: 1;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=1);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      25% {
							 | 
						||
| 
								 | 
							
								        width: 12px;
							 | 
						||
| 
								 | 
							
								        height: 12px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.7;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=70);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      50% {
							 | 
						||
| 
								 | 
							
								        width: 20px;
							 | 
						||
| 
								 | 
							
								        height: 20px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.5;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=50);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      75% {
							 | 
						||
| 
								 | 
							
								        width: 30px;
							 | 
						||
| 
								 | 
							
								        height: 30px;
							 | 
						||
| 
								 | 
							
								        opacity: 0.2;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=20);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      to {
							 | 
						||
| 
								 | 
							
								        width: 40px;
							 | 
						||
| 
								 | 
							
								        height: 40px;
							 | 
						||
| 
								 | 
							
								        opacity: 0;
							 | 
						||
| 
								 | 
							
								        filter: alpha(opacity=0);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  </style>
							 | 
						||
| 
								 | 
							
								  </head>
							 | 
						||
| 
								 | 
							
								<body>
							 | 
						||
| 
								 | 
							
								  <div id='mapContainer'></div>
							 | 
						||
| 
								 | 
							
								</body>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<script>
							 | 
						||
| 
								 | 
							
									//定义全局map变量
							 | 
						||
| 
								 | 
							
									var map = null;
							 | 
						||
| 
								 | 
							
									//定义地图ID变量
							 | 
						||
| 
								 | 
							
									var mapID2D = '000000';
							 | 
						||
| 
								 | 
							
									var mapID3D = '9999';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									let maxFloors = 5;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  window.onload = function () {
							 | 
						||
| 
								 | 
							
								    //加载地图
							 | 
						||
| 
								 | 
							
								    initMap();
							 | 
						||
| 
								 | 
							
								  };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  window.addEventListener('unload', function (e) {
							 | 
						||
| 
								 | 
							
								    //销毁地图
							 | 
						||
| 
								 | 
							
								    map.destroy();
							 | 
						||
| 
								 | 
							
								    map = null;
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									function initMap() {
							 | 
						||
| 
								 | 
							
										openMap2D();
							 | 
						||
| 
								 | 
							
										// openMap3D();
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								  //打开地图
							 | 
						||
| 
								 | 
							
								  function openMap2D() {
							 | 
						||
| 
								 | 
							
								    //初始化参数
							 | 
						||
| 
								 | 
							
								    var mapOptions = {
							 | 
						||
| 
								 | 
							
								      //必要,地图容器
							 | 
						||
| 
								 | 
							
								      container: 'mapContainer',
							 | 
						||
| 
								 | 
							
								      //必要,地图路径
							 | 
						||
| 
								 | 
							
								      mapServerURL: 'jsmap/2D/data/map',
							 | 
						||
| 
								 | 
							
								      mapScaleLevelRange: [1, 24],
							 | 
						||
| 
								 | 
							
								      defaultMapScaleLevel: 19,
							 | 
						||
| 
								 | 
							
								      showGlobe: true,
							 | 
						||
| 
								 | 
							
								      imageryProvider: jsmaplight.JSImageryProviderType.IMAGE_TDT,
							 | 
						||
| 
								 | 
							
								      showLoading:false
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								    //初始化地图对象
							 | 
						||
| 
								 | 
							
								    map = new jsmaplight.JSMap(mapOptions);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    //打开map服务器的地图数据和主题
							 | 
						||
| 
								 | 
							
								    map.openMapById(mapID2D);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    //地图加载完成事件
							 | 
						||
| 
								 | 
							
								    map.on("loadComplete", e => {
							 | 
						||
| 
								 | 
							
								      var zoomControl = new jsmaplight.JSZoomControl({
							 | 
						||
| 
								 | 
							
								        position: jsmaplight.JSControlPosition.LEFT_TOP,
							 | 
						||
| 
								 | 
							
								        offset: {
							 | 
						||
| 
								 | 
							
								          x: 10,
							 | 
						||
| 
								 | 
							
								          y: 10
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								      });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      var floorControl = new jsmaplight.JSFloorControl({
							 | 
						||
| 
								 | 
							
								        position: jsmaplight.JSControlPosition.RIGHT_TOP,
							 | 
						||
| 
								 | 
							
								        showBtnCount: 7,
							 | 
						||
| 
								 | 
							
								        offset: {
							 | 
						||
| 
								 | 
							
								          x: 20,
							 | 
						||
| 
								 | 
							
								          y: 20
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								      });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      if (document.documentElement.clientWidth >= 992) {
							 | 
						||
| 
								 | 
							
								        map.addControl(floorControl);
							 | 
						||
| 
								 | 
							
								        map.addControl(zoomControl);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									map.on('mapClickNode', event => {
							 | 
						||
| 
								 | 
							
										addPointMarker2D(event);
							 | 
						||
| 
								 | 
							
										backWithResult(event);
							 | 
						||
| 
								 | 
							
									});
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  function openMap3D() {
							 | 
						||
| 
								 | 
							
									//初始化参数
							 | 
						||
| 
								 | 
							
									var mapOptions = {
							 | 
						||
| 
								 | 
							
										//必要,地图容器
							 | 
						||
| 
								 | 
							
										container: 'mapContainer',
							 | 
						||
| 
								 | 
							
										//必要,地图类型
							 | 
						||
| 
								 | 
							
										mapType: jsmap.JSMapType.MAP_3D,
							 | 
						||
| 
								 | 
							
										//必要,地图路径
							 | 
						||
| 
								 | 
							
										mapServerURL: "jsmap/3D/data/map",
							 | 
						||
| 
								 | 
							
										viewOptions: {
							 | 
						||
| 
								 | 
							
										  center: {
							 | 
						||
| 
								 | 
							
											x: 119.65549893659012,
							 | 
						||
| 
								 | 
							
											y: 39.9351098623569,
							 | 
						||
| 
								 | 
							
											z: 0.016594102424956802
							 | 
						||
| 
								 | 
							
										  },
							 | 
						||
| 
								 | 
							
										  distance: 370.01629618875734,
							 | 
						||
| 
								 | 
							
										  rotate: 0,
							 | 
						||
| 
								 | 
							
										  tilt: 90
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
								        openingAnimation: false,
							 | 
						||
| 
								 | 
							
								        showGlobe: true,
							 | 
						||
| 
								 | 
							
									    imageryProvider: jsmap.JSImageryProviderType.IMAGE_TDT,
							 | 
						||
| 
								 | 
							
								        showLoading:false
							 | 
						||
| 
								 | 
							
									};
							 | 
						||
| 
								 | 
							
									//初始化地图对象
							 | 
						||
| 
								 | 
							
									map = new jsmap.JSMap(mapOptions);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									//打开map服务器的地图数据和主题
							 | 
						||
| 
								 | 
							
									map.openMapById(mapID3D);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									//地图加载完成事件
							 | 
						||
| 
								 | 
							
									map.on("loadComplete", e => {
							 | 
						||
| 
								 | 
							
										var compassControl = new jsmap.JSCompassControl({
							 | 
						||
| 
								 | 
							
											position: jsmap.JSControlPosition.LEFT_TOP,
							 | 
						||
| 
								 | 
							
											offset: {
							 | 
						||
| 
								 | 
							
												x: 10,
							 | 
						||
| 
								 | 
							
												y: 20
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										var zoomControl = new jsmap.JSZoomControl({
							 | 
						||
| 
								 | 
							
											position: jsmap.JSControlPosition.LEFT_TOP,
							 | 
						||
| 
								 | 
							
											offset: {
							 | 
						||
| 
								 | 
							
												x: 40,
							 | 
						||
| 
								 | 
							
												y: 10
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										if (document.documentElement.clientWidth >= 992) {
							 | 
						||
| 
								 | 
							
											map.addControl(compassControl);
							 | 
						||
| 
								 | 
							
											map.addControl(zoomControl);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									map.on('mapClickNode', event => {
							 | 
						||
| 
								 | 
							
										addPointMarker3D(event);
							 | 
						||
| 
								 | 
							
										backWithResult(event);
							 | 
						||
| 
								 | 
							
									});
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  //添加标注
							 | 
						||
| 
								 | 
							
								  function addPointMarker2D(event) {
							 | 
						||
| 
								 | 
							
								    map.removeAllDomMarker();   //移除全部标注
							 | 
						||
| 
								 | 
							
								    var pointMarker = new jsmaplight.JSDomMarker({
							 | 
						||
| 
								 | 
							
										id: 0,
							 | 
						||
| 
								 | 
							
										position: {
							 | 
						||
| 
								 | 
							
											x: event.eventInfo.coord.x,
							 | 
						||
| 
								 | 
							
											y: event.eventInfo.coord.y,
							 | 
						||
| 
								 | 
							
											z: 1
							 | 
						||
| 
								 | 
							
										}, //坐标
							 | 
						||
| 
								 | 
							
										pointerEvents: 'none',
							 | 
						||
| 
								 | 
							
										content: '<div class="jsmap-animation-point" style="color: blue"><p></p></div>',
							 | 
						||
| 
								 | 
							
										offset: jsmaplight.JSControlPosition.LEFT_BOTTOM,
							 | 
						||
| 
								 | 
							
										marginOffset: {
							 | 
						||
| 
								 | 
							
											x: 0,
							 | 
						||
| 
								 | 
							
											y: 0
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										properties: {
							 | 
						||
| 
								 | 
							
											type: 0
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										callback: (node) => {
							 | 
						||
| 
								 | 
							
											console.log(node);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								    map.addMarker(pointMarker);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  //添加标注
							 | 
						||
| 
								 | 
							
								  function addPointMarker3D(event) {
							 | 
						||
| 
								 | 
							
								    map.removeAllDomMarker();   //移除全部标注
							 | 
						||
| 
								 | 
							
								    var pointMarker = new jsmap.JSDomMarker({
							 | 
						||
| 
								 | 
							
										id: 0,
							 | 
						||
| 
								 | 
							
										position: {
							 | 
						||
| 
								 | 
							
											x: event.eventInfo.coord.x,
							 | 
						||
| 
								 | 
							
											y: event.eventInfo.coord.y,
							 | 
						||
| 
								 | 
							
											z: 1
							 | 
						||
| 
								 | 
							
										}, //坐标
							 | 
						||
| 
								 | 
							
										pointerEvents: 'none',
							 | 
						||
| 
								 | 
							
										content: '<div class="jsmap-animation-point" style="color: blue"><p></p></div>',
							 | 
						||
| 
								 | 
							
										offset: jsmap.JSControlPosition.LEFT_BOTTOM,
							 | 
						||
| 
								 | 
							
										marginOffset: {
							 | 
						||
| 
								 | 
							
											x: 0,
							 | 
						||
| 
								 | 
							
											y: 0
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										properties: {
							 | 
						||
| 
								 | 
							
											type: 0
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										callback: (node) => {
							 | 
						||
| 
								 | 
							
											console.log(node);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								    map.addMarker(pointMarker);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  function backWithResult(event){
							 | 
						||
| 
								 | 
							
								    uni.postMessage({
							 | 
						||
| 
								 | 
							
								      data:{
							 | 
						||
| 
								 | 
							
								        "longitue":event.x,
							 | 
						||
| 
								 | 
							
								        "latitude":event.y,
							 | 
						||
| 
								 | 
							
								        "floorId" :event.floorId
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    })
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								</script>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<style type="text/css">
							 | 
						||
| 
								 | 
							
								  html,
							 | 
						||
| 
								 | 
							
								  body,
							 | 
						||
| 
								 | 
							
								  #mapContainer {
							 | 
						||
| 
								 | 
							
								    width: 100%;
							 | 
						||
| 
								 | 
							
								    height: 100%;
							 | 
						||
| 
								 | 
							
								    margin: 0;
							 | 
						||
| 
								 | 
							
								    padding: 0;
							 | 
						||
| 
								 | 
							
								    overflow: hidden;
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								</style>
							 | 
						||
| 
								 | 
							
								</html>
							 |