Commit f583e484 authored by fengruiyu's avatar fengruiyu

修改 JS

parent 474f8297
// var initZsMap = function (data) {
// console.log(data)
// }
var isWindowLoad = false;//页面加载
var BridgeIsLoad = false;//框架加载
//[h(街道图)、m(街道图)、p(街道图)、r(街道图)、s(影像无注记)、y(影像含注记)、t(地形图)]
var gtype = 's';
function zsChangeUrl(d) {
var sub = d.split("?")[1];
//console.log(sub)
if (G_MAP.getMapTypeId() == 'hybrid' ) {
gtype = 's'
}
if(G_MAP.getMapTypeId() == 'satellite'){
gtype = 'y'
}
if (G_MAP.getMapTypeId() == 'roadmap') {
gtype = 'r'
}
if (G_MAP.getMapTypeId() == 'terrain') {
gtype = 't'
}
var url = 'http://r.mints-id.com/ab/1/2/maps/vt?lyrs=' + gtype + '&gl=cn&' + sub.replace("hl=zh-CN", "").replace("v=", "");
//console.log(url)
return url;
}
function tryAllIsOk() {
//console.log("tryAllIsOk", "isWindowLoad", isWindowLoad, "BridgeIsLoad", BridgeIsLoad)
if (isWindowLoad) {
try {
doAppFun("allIsOk");
} catch (e) {
// console.log('allisOk', e)
// alert("app未接受开始自动跳转" + e)
setTimeout(function () {
doAppFun("allIsOk");
}, 1500);
}
}
}
function toVurl(a, innerData) {
var data = JSON.stringify(innerData);
if (a == 'b') {
try {
doAppFun("toBVr", data);
} catch (e) {
console.log('tobvr', data)
// alert("app未接受开始自动跳转" + e)
}
}
if (a == 'g') {
try {
doAppFun("toVr", data);
} catch (e) {
// console.log('toVr', data)
//alert("app未接受开始自动跳转" + e)
}
}
}
function toVurl(a, innerData) {
var data = JSON.stringify(innerData);
if (a == 'b') {
try {
doAppFun("toBVr", data);
} catch (e) {
console.log('tobvr', data)
// alert("app未接受开始自动跳转" + e)
}
}
if (a == 'g') {
try {
doAppFun("toVr", data);
} catch (e) {
// console.log('toVr', data)
//alert("app未接受开始自动跳转" + e)
}
}
}
function allIsOk(a, data) {
//console.log("innerAllIsOk")
isWindowLoad = true;
tryAllIsOk();
// setTimeout(function(){
//
// },1000);
}
function doAppFun(funstr, params) {
//参数一:调用java中的方法 submitFromWeb是方法名,必须和Android中注册时候的方法名称保持一致
//参数二:返回给Android端的数据,可以为字符串,json等信息
//参数三:js接收到Android传递过来的数据之后的相应处理逻辑
window.WebViewJavascriptBridge.callHandler(
funstr
, params
, function (responseData) {
// console.log(responseData)
}
);
}
function centerChanged() {
try {
doAppFun("centerChanged");
} catch (e) {
// console.log("tips", msg)
//alert("app未弹框==>" + msg + e)
}
}
function tips(msg) {
try {
doAppFun("tips", msg);
} catch (e) {
//console.log("tips", msg)
//alert("app未弹框==>" + msg + e)
}
}
function openScenicsFrame(params) {
try {
doAppFun("openScenicsFrame", params);
} catch (e) {
}
}
//JS注册事件监听
function connectWebViewJavascriptBridge(callback) {
if (window.WebViewJavascriptBridge) {
callback(WebViewJavascriptBridge)
} else {
document.addEventListener(
'WebViewJavascriptBridgeReady'
, function () {
callback(WebViewJavascriptBridge)
BridgeIsLoad = true;
tryAllIsOk()
},
false
);
}
}
function getVmMsg(msg) {
return {
event: msg,
showVrButton: vm.showVrButton,
showScenics: vm.showScenics,
mapType: showScenics.mapType,
}
}
//注册回调函数,第一次连接时调用 初始化函数
connectWebViewJavascriptBridge(function (bridge) {
//初始化
bridge.init(function (message, responseCallback) {
var data = {
'Javascript Responds': 'Wee!'
};
responseCallback(data);
});
//Android调用js方法:functionInJs方法名称需要保持一致 ,并返回给Android通知
bridge.registerHandler("initZsMap", function (data, responseCallback) {
data = JSON.parse(data)
vm.initZsMap(data);
responseCallback(getVmMsg("suc:initZsMap"));
});
bridge.registerHandler("addZoom", function (data, responseCallback) {
vm.addZoom();
responseCallback(getVmMsg("suc:addZoom"));
});
bridge.registerHandler("reduceZoom", function (data, responseCallback) {
vm.reduceZoom();
responseCallback(getVmMsg("suc:reduceZoom"));
});
bridge.registerHandler("changeVrButton", function (data, responseCallback) {
data = JSON.parse(data)
vm.showVrButton = data.show == "1";
responseCallback(getVmMsg("suc:changeVrButton"));
});
bridge.registerHandler("showScenics", function (data, responseCallback) {
data = JSON.parse(data)
console.log('ksssssssssssssssssss',data)
vm.doShowScenics(data.list);
responseCallback(getVmMsg("suc:showScenics"));
});
bridge.registerHandler("closeScenics", function (data, responseCallback) {
vm.doCloseScenics();
responseCallback(getVmMsg("suc:closeScenics"));
});
bridge.registerHandler("changeMapType", function (data, responseCallback) {
data = JSON.parse(data)
G_MAP.setMapTypeId(data.type);
responseCallback(getVmMsg("suc:changeMapType"));
});
})
function CheckChinese(val) {
var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g");
if (reg.test(val)) {
return true;
}
return false;
}
// function toBLatLng(point, f) {
// // 百度地图API功能
//
// var ggPoint = new BMap.Point(point.lng, point.lat);
//
// var convertor = new BMap.Convertor();
// var pointArr = [];
// pointArr.push(ggPoint);
//
// convertor.translate(pointArr, COORDINATES_GCJ02, COORDINATES_BD09, function (data) {
//
// console.log("转换后百度ip", );
// console.log(data.points[0])
// var geoc = new BMap.Geocoder();
//
// geoc.getLocation(data.points[0], function (rs) {
// //console.log(rs)
// var addComp = rs.addressComponents;
// console.log(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " +
// addComp.street + ", " + addComp.streetNumber);
// // console.log(CheckChinese(addComp.province))
// var res = data.points[0];
// res.c = CheckChinese(addComp.province);
// f && f(res)
// })
//
//
// })
//
// /**
// * 坐标常量说明:
// * COORDINATES_WGS84 = 1, WGS84坐标
// * COORDINATES_WGS84_MC = 2, WGS84的平面墨卡托坐标
// * COORDINATES_GCJ02 = 3,GCJ02坐标
// * COORDINATES_GCJ02_MC = 4, GCJ02的平面墨卡托坐标
// * COORDINATES_BD09 = 5, 百度bd09经纬度坐标
// * COORDINATES_BD09_MC = 6,百度bd09墨卡托坐标
// * COORDINATES_MAPBAR = 7,mapbar地图坐标
// * COORDINATES_51 = 8,51地图坐标
// */
//
// }
//var rpoint = CoordinateUtil.wgs84_to_bd(point)
function toGPoint(point, f) {
var convertor = new BMap.Convertor();
var pointArr = [point];
convertor.translate(pointArr, 5, 3, function (data) {
var geoc = new BMap.Geocoder();
var res = data.points[0];
f && f(res)
})
}
function toBPoint(point, f) {
var convertor = new BMap.Convertor();
var pointArr = [point];
convertor.translate(pointArr, 3, 5, function (data) {
var geoc = new BMap.Geocoder();
var res = data.points[0];
f && f(res)
})
}
function getLocation(rpoint, f) {
// console.log("工具类转换后", rpoint);
var geoc = new BMap.Geocoder();
var data = new BMap.Point(rpoint.lng, rpoint.lat);
geoc.getLocation(data, function (rs) {
var addComp = rs.addressComponents;
console.log(addComp.province);
//+ ", " + addComp.city + ", " + addComp.district + ", " addComp.street + ", " + addComp.streetNumber);
// console.log( CheckChinese(addComp.province),typeof(addComp.province),addComp.province.indexOf("台湾")!=-1,CheckChinese(addComp.province)&&addComp.province!="台湾省")
var res = data;
res.c = CheckChinese(addComp.province) && addComp.province != "台湾省";
f && f(res)
})
}
function bvr(point) {
var panoramaService = new BMap.PanoramaService();
panoramaService.getPanoramaByLocation(new BMap.Point(point.lng, point.lat), 10000, function (data) {
var panoramaInfo = "";
if (data == null) {
console.log('no data');
tips("暂无街景")
return;
}
// panoramaInfo += '全景id为:' + data.id + '\n';
panoramaInfo = '全景路段名为:' + data.description;
// panoramaInfo += '<br/>坐标为:' + data.position.lng + ':' + data.position.lat + '\n';
console.log(panoramaInfo);
// tips("准备跳转国内" + data.description)
var params = {
"d": data.id,
"title": data.description
}
toVurl('b', params)
});
}
window.google = window.google || {};
google.maps = google.maps || {};
//强行阻断地图加载
//获取加载参数
var G_ZSYDA; //gmapinitneed
function loadGoogleMap(Yda) {
//window.google.maps.Load&&window.google.maps.Load(Yda);
G_ZSYDA = Yda;
}
var initMap; //gneedfun
/**
* 根据缩放等级获取KM数(m数)和像素
*/
function getScaleInfos(zoomLevel, lat,tt) {
// 缩放等级-比例尺
var zoomList = [{
text: "10000KM",
value: 10000 * 1000
}, {
text: "5000KM",
value: 5000 * 1000
}, {
text: "2000KM",
value: 2000 * 1000
}, {
text: "1000KM",
value: 1000 * 1000
}, {
text: "500KM",
value: 500 * 1000
},
// {
// text: "200KM",
// value: 200 * 1000
// },
{
text: "200KM",
value: 200 * 1000
}, {
text: "100KM",
value: 100 * 1000
}, {
text: "50KM",
value: 50 * 1000
}, {
text: "20KM",
value: 20 * 1000
}, {
text: "10KM",
value: 10 * 1000
}, {
text: "5KM",
value: 5000
}, {
text: "2KM",
value: 2000
},
{
text: "2KM",
value: 2000
},
{
text: "1KM",
value: 1000
}, {
text: "500m",
value: 500
}, {
text: "200m",
value: 200
},
// {
// text: "200m",
// value: 200
// },
{
text: "100m",
value: 100
}, {
text: "50m",
value: 50
}, {
text: "20m",
value: 20
}, {
text: "10m",
value: 10
}, {
text: "5m",
value: 5
}, {
text: "2m",
value: 2
}, {
text: "1m",
value: 1
}, {
text: "1m",
value: 1
}, {
text: "1m",
value: 1
}, {
text: "1m",
value: 1
}];
// 宽度
tt.pxValue = Math.floor(zoomList[zoomLevel].value / (156543.03392 * Math.cos(lat * Math.PI / 180) / Math.pow(2,
zoomLevel)));
// 更新经纬度数据
return zoomList[zoomLevel].text;
};
function tosh(gpoint) {
console.log("查询国外或中国台湾街景")
var ser = new google.maps.StreetViewService();
const request = {
location: {
lat: gpoint.lat,
lng: gpoint.lng
},
radius: 10000,
preference: 'nearest', //google.maps.StreetViewPreference.NEAREST,
};
ser.getPanorama(request, function(a) {
if (a == null || a.location == null) {
tips("暂无街景")
return;
}
console.log(a.location.description)
//console.log(a.location.latLng.lat() + ',' + a.location.latLng.lng())
// console.log("准备模拟app跳转至外国街景:" + a.location.description + "==>./streets.html?a=" + a.location.latLng
// .lat() + "&b=" + a.location.latLng.lng())
var params = {
"lng": a.location.latLng.lng(),
"lat": a.location.latLng.lat(),
"title": a.location.description
}
toVurl('g', params)
})
}
(function() {
var modules = google.maps.modules = {};
google.maps.__gjsload__ = function(name, text) {
modules[name] = text;
};
google.maps.Load = function(apiLoad) {
delete google.maps.Load;
apiLoad([
0.009999999776482582,
[
null,
[
getMb1U(),
null,
null,
null,
1,
"904",
[
"http://khms0.google.com/kh?v=904\u0026hl=zh-CN\u0026",
"http://khms1.google.com/kh?v=904\u0026hl=zh-CN\u0026"
]
],
null,
null,
null,
null,
[
[
"http://cbks0.googleapis.com/cbk?",
"http://cbks1.googleapis.com/cbk?"
]
],
[
getMb2U(),
null,
null,
null,
null,
"130",
[
"http://khms0.google.com/kh?v=130\u0026hl=zh-CN\u0026",
"http://khms1.google.com/kh?v=130\u0026hl=zh-CN\u0026"
]
]
],
[
"zh-CN",
"US",
null,
0,
null,
null,
"http://maps.gstatic.com/mapfiles/",
null,
getRequestUrl(),
getRequestUrl(''),
null,
"http://maps.google.com",
null,
"http://maps.gstatic.com/maps-api-v3/api/images/",
"http://www.google.com/maps",
null,
"http://www.google.com",
1,
"http://maps.googleapis.com/maps_api_js_slo/log?hasfast=true"
],
[
getRequestUrl() + "/maps-api-v3/api/js/45/7/intl/zh_cn",
"3.45.7"
],
[
3420973460
],
null,
null,
null,
null,
null,
null,
"initMap",
null,
null,
1,
"http://khms.googleapis.com/mz?v=904\u0026",
getZsKey(),
"http://earthbuilder.googleapis.com",
"http://earthbuilder.googleapis.com",
null,
"http://mts.googleapis.com/maps/vt/icon",
[
[
getRequestUrl() + "/maps/vt"
],
[
getRequestUrl() + "/maps/vt"
],
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
[
"http://www.google.com/maps/vt"
],
"/maps/vt",
565000000,
565,
565290767
],
2,
500,
[
null,
null,
null,
null,
"http://www.google.com/maps/preview/log204",
"",
"http://static.panoramio.com.storage.googleapis.com/photos/",
[
"http://geo0.ggpht.com/cbk",
"http://geo1.ggpht.com/cbk",
"http://geo2.ggpht.com/cbk",
"http://geo3.ggpht.com/cbk"
],
getRequestUrl() + "/maps/api/js/GeoPhotoService.GetMetadata",
getRequestUrl() + "/maps/api/js/GeoPhotoService.SingleImageSearch",
getVrUrls(),
],
null,
null,
null,
null,
"/maps/api/js/ApplicationService.GetEntityDetails",
0,
null,
null,
null,
null,
[],
[
"45.7"
],
1,
0,
[
1
],
null,
null,
null,
0.009999999776482582
], loadScriptTime);
};
var loadScriptTime = (new Date).getTime();
})();
This diff is collapsed.
/**
* @原算法 https://www.jianshu.com/p/57ca061f3987
* @根据该作者的修改成JS版的
* @time 2019-7-17 09:58:42
* @description bd09 转WGS84,精准度高
* */
var CoordinateUtil = {
x_pi: 3.14159265358979324 * 3000.0 / 180.0,
//pai
pi: 3.1415926535897932384626,
//离心率
ee: 0.00669342162296594323,
//长半轴
a: 6378245.0,
//百度转国测局
bd09togcj02: function(bd_lon, bd_lat) {
var x = bd_lon - 0.0065;
var y = bd_lat - 0.006;
var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * CoordinateUtil.x_pi);
var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * CoordinateUtil.x_pi);
var gg_lng = z * Math.cos(theta);
var gg_lat = z * Math.sin(theta);
return {
lng: gg_lng,
lat: gg_lat
}
},
//gs84转国测局
wgs84togcj02: function(lng, lat) {
var dlat = CoordinateUtil.transformlat(lng - 105.0, lat - 35.0);
var dlng = CoordinateUtil.transformlng(lng - 105.0, lat - 35.0);
var radlat = lat / 180.0 * CoordinateUtil.pi;
var magic = Math.sin(radlat);
magic = 1 - CoordinateUtil.ee * magic * magic;
var sqrtmagic = Math.sqrt(magic);
dlat = (dlat * 180.0) / ((CoordinateUtil.a * (1 - CoordinateUtil.ee)) / (magic * sqrtmagic) * CoordinateUtil.pi);
dlng = (dlng * 180.0) / (CoordinateUtil.a / sqrtmagic * Math.cos(radlat) * CoordinateUtil.pi);
var mglat = lat + dlat;
var mglng = lng + dlng;
return {
lng: mglng,
lat: mglat
};
},
//国测局转百度
gcj02tobd09: function(lng, lat) {
var z = Math.sqrt(lng * lng + lat * lat) + 0.00002 * Math.sin(lat * CoordinateUtil.x_pi);
var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * CoordinateUtil.x_pi);
var bd_lng = z * Math.cos(theta) + 0.0065;
var bd_lat = z * Math.sin(theta) + 0.006;
return {
lng: bd_lng,
lat: bd_lat
};
},
//国测局转84
gcj02towgs84: function(lng, lat) {
var dlat = CoordinateUtil.transformlat(lng - 105.0, lat - 35.0);
var dlng = CoordinateUtil.transformlng(lng - 105.0, lat - 35.0);
var radlat = lat / 180.0 * CoordinateUtil.pi;
var magic = Math.sin(radlat);
magic = 1 - CoordinateUtil.ee * magic * magic;
var sqrtmagic = Math.sqrt(magic);
dlat = (dlat * 180.0) / ((CoordinateUtil.a * (1 - CoordinateUtil.ee)) / (magic * sqrtmagic) * CoordinateUtil.pi);
dlng = (dlng * 180.0) / (CoordinateUtil.a / sqrtmagic * Math.cos(radlat) * CoordinateUtil.pi);
var mglat = lat + dlat;
var mglng = lng + dlng;
return {
lng: lng * 2 - mglng,
lat: lat * 2 - mglat
};
},
//经度转换
transformlat: function(lng, lat) {
var ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * Math.sqrt(Math.abs(lng));
ret += (20.0 * Math.sin(6.0 * lng * CoordinateUtil.pi) + 20.0 * Math.sin(2.0 * lng * CoordinateUtil.pi)) * 2.0 / 3.0;
ret += (20.0 * Math.sin(lat * CoordinateUtil.pi) + 40.0 * Math.sin(lat / 3.0 * CoordinateUtil.pi)) * 2.0 / 3.0;
ret += (160.0 * Math.sin(lat / 12.0 * CoordinateUtil.pi) + 320 * Math.sin(lat * CoordinateUtil.pi / 30.0)) * 2.0 / 3.0;
return ret;
},
//纬度转换
transformlng: function(lng, lat) {
var ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * Math.sqrt(Math.abs(lng));
ret += (20.0 * Math.sin(6.0 * lng * CoordinateUtil.pi) + 20.0 * Math.sin(2.0 * lng * CoordinateUtil.pi)) * 2.0 / 3.0;
ret += (20.0 * Math.sin(lng * CoordinateUtil.pi) + 40.0 * Math.sin(lng / 3.0 * CoordinateUtil.pi)) * 2.0 / 3.0;
ret += (150.0 * Math.sin(lng / 12.0 * CoordinateUtil.pi) + 300.0 * Math.sin(lng / 30.0 * CoordinateUtil.pi)) * 2.0 / 3.0;
return ret;
},
getWgs84xy:function(point){
//先转 国测局坐标
var doubles_gcj = CoordinateUtil.bd09togcj02(point.lng, point.lat); //(x 117. y 36. )
//国测局坐标转wgs84
var doubles_wgs84 = CoordinateUtil.gcj02towgs84(doubles_gcj.lng, doubles_gcj.lat);
//返回 纠偏后 坐标
return doubles_wgs84;
},
wgs84_to_bd:function(point){
var lng=point.lng;
if(lng>180){
console.log("lng>>",lng)
lng=lng%360;
if(lng>180){
lng=lng-360;
}
console.log("lng>>>>",lng)
}
if(lng<-180){
console.log("lng>>",lng)
lng=lng%360;
if(lng<-180){
lng=lng+360;
}
console.log("lng>>>>",lng)
}
//先转 国测局坐标
var doubles_gcj = CoordinateUtil.wgs84togcj02(lng, point.lat); //(x 117. y 36. )
//国测局坐标转bd
var doubles_bd = CoordinateUtil.gcj02tobd09(doubles_gcj.lng, doubles_gcj.lat);
//返回 纠偏后 坐标
return doubles_bd;
}
}
//统计页面
var urlParams = new Array();
var urlParamslength = 0;
function setParams() {
var param = location.search;
if (param != null && param.length > 0) {
param = param.substring(1, param.length);
var allparam = param.split('&');
if (allparam != null && allparam.length > 0) {
for (var i = 0; i < allparam.length; i++) {
var oneparam = allparam[i].split('=');
if (oneparam != null && oneparam.length > 1) {
urlParams[oneparam[0]] = oneparam[1];
urlParamslength++;
}
}
}
}
}
setParams();
function getParam(key) {
if (urlParamslength == 0) {
setParams();
}
return (urlParams[key] == undefined || urlParams[key] == null || urlParams[key] == 'null') ? "" : urlParams[key];
}
This diff is collapsed.
function getZsKey() {
return getParam("gk")==null?"":getParam("gk");
}
function getRequestUrl(a) {
return "https://maps."+getParam("base")+"/" + getParam("u") + ""
}
function getVrUrls() {
return [
"http://lh3.ggpht."+getParam("base")+"/" + getParam("u") + "/",
"http://lh4.ggpht."+getParam("base")+"/" + getParam("u") + "/",
"http://lh5.ggpht."+getParam("base")+"/" + getParam("u") + "/",
"http://lh6.ggpht."+getParam("base")+"/" + getParam("u") + "/"
]
};
function getVrUrls0(a) {
if ( getParam("ut") =='uz')
return [
"http://geo0.ggpht."+getParam("base")+"/" + getParam("u") + "/cbk",
"http://geo1.ggpht."+getParam("base")+"/" + getParam("u") + "/cbk",
"http://geo2.ggpht."+getParam("base")+"/" + getParam("u") + "/cbk",
"http://geo3.ggpht."+getParam("base")+"/" + getParam("u") + "/cbk"
]
var date = Date.parse(new Date()) / 1000
console.log("kkkk")
return ['https://streetscape.xinzhi.space/' + date + '/' + md5(date).toUpperCase()+"/cbk"]
}
function getMb1U() {
return [
"http://khms0."+getParam("base")+"/" + getParam("u") + "/kh?v=904\u0026hl=zh-CN\u0026",
"http://khms1."+getParam("base")+"/" + getParam("u") + "/kh?v=904\u0026hl=zh-CN\u0026"
]
}
function getMb2U() {
return [
"http://khms0."+getParam("base")+"/" + getParam("u") + "/kh?v=130\u0026hl=zh-CN\u0026",
"http://khms1."+getParam("base")+"/" + getParam("u") + "/kh?v=130\u0026hl=zh-CN\u0026"
]
}
///
function wordToHex(lValue) {
let WordToHexValue = "",
WordToHexValueTemp = "",
lByte,
lCount;
for (lCount = 0; lCount <= 3; lCount++) {
lByte = lValue >>> lCount * 8 & 255;
WordToHexValueTemp = "0" + lByte.toString(16);
WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2);
}
return WordToHexValue;
};
function rotateLeft(lValue, iShiftBits) {
return lValue << iShiftBits | lValue >>> 32 - iShiftBits;
};
function addUnsigned(lX, lY) {
let lX4, lY4, lX8, lY8, lResult;
lX8 = lX & 0x80000000;
lY8 = lY & 0x80000000;
lX4 = lX & 0x40000000;
lY4 = lY & 0x40000000;
lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
if (lX4 & lY4) return lResult ^ 0x80000000 ^ lX8 ^ lY8;
if (lX4 | lY4) {
if (lResult & 0x40000000) return lResult ^ 0xC0000000 ^ lX8 ^ lY8; else return lResult ^ 0x40000000 ^ lX8 ^ lY8;
} else {
return lResult ^ lX8 ^ lY8;
}
};
function F(x, y, z) {
return x & y | ~x & z;
};
function G(x, y, z) {
return x & z | y & ~z;
};
function H(x, y, z) {
return x ^ y ^ z;
};
function I(x, y, z) {
return y ^ (x | ~z);
};
function FF(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function GG(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function HH(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function II(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function convertToWordArray(string) {
let lWordCount;
let lMessageLength = string.length;
let lNumberOfWordsTempOne = lMessageLength + 8;
let lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - lNumberOfWordsTempOne % 64) / 64;
let lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;
let lWordArray = Array(lNumberOfWords - 1);
let lBytePosition = 0;
let lByteCount = 0;
while (lByteCount < lMessageLength) {
lWordCount = (lByteCount - lByteCount % 4) / 4;
lBytePosition = lByteCount % 4 * 8;
lWordArray[lWordCount] = lWordArray[lWordCount] | string.charCodeAt(lByteCount) << lBytePosition;
lByteCount++;
}
lWordCount = (lByteCount - lByteCount % 4) / 4;
lBytePosition = lByteCount % 4 * 8;
lWordArray[lWordCount] = lWordArray[lWordCount] | 0x80 << lBytePosition;
lWordArray[lNumberOfWords - 2] = lMessageLength << 3;
lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;
return lWordArray;
};
function md5(string) {
let str = string + 'EfAvGE#aR@bC@VvdC223$xC23sWXR$vf'
let x = Array();
let k, AA, BB, CC, DD, a, b, c, d;
let S11 = 7,
S12 = 12,
S13 = 17,
S14 = 22;
let S21 = 5,
S22 = 9,
S23 = 14,
S24 = 20;
let S31 = 4,
S32 = 11,
S33 = 16,
S34 = 23;
let S41 = 6,
S42 = 10,
S43 = 15,
S44 = 21;
str = uTF8Encode(str);
x = convertToWordArray(str);
a = 0x67452301;
b = 0xEFCDAB89;
c = 0x98BADCFE;
d = 0x10325476;
for (k = 0; k < x.length; k += 16) {
AA = a;
BB = b;
CC = c;
DD = d;
a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);
d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);
c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);
b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);
a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);
d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);
c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);
b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);
a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);
d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);
c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);
b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);
a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);
d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);
c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);
b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);
a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);
d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);
c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);
b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);
a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);
d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);
c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);
b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);
a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);
d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);
c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);
b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);
a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);
d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);
c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);
b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);
a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);
d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);
c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);
b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);
a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);
d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);
c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);
b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);
a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);
d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);
c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);
b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);
a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);
d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);
c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);
b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);
a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);
d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);
c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);
b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);
a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);
d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);
c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);
b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);
a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);
d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);
c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);
b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);
a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);
d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);
c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);
b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);
a = addUnsigned(a, AA);
b = addUnsigned(b, BB);
c = addUnsigned(c, CC);
d = addUnsigned(d, DD);
}
let tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);
return tempValue.toLowerCase();
}
function uTF8Encode(string) {
string = string.replace(/\x0d\x0a/g, "\x0a");
let output = "";
for (let n = 0; n < string.length; n++) {
let c = string.charCodeAt(n);
if (c < 128) {
output += String.fromCharCode(c);
} else if (c > 127 && c < 2048) {
output += String.fromCharCode(c >> 6 | 192);
output += String.fromCharCode(c & 63 | 128);
} else {
output += String.fromCharCode(c >> 12 | 224);
output += String.fromCharCode(c >> 6 & 63 | 128);
output += String.fromCharCode(c & 63 | 128);
}
}
return output;
};
\ No newline at end of file
function getZsKey() {
return getParam("gk")==null?"":getParam("gk");
}
function getRequestUrl(a) {
return "http://maps."+getParam("base")+".com/" + getParam("u") + ""
}
function getVrUrls() {
return [
"http://lh3.ggpht."+getParam("base")+".com/" + getParam("u") + "/",
"http://lh4.ggpht."+getParam("base")+".com/" + getParam("u") + "/",
"http://lh5.ggpht."+getParam("base")+".com/" + getParam("u") + "/",
"http://lh6.ggpht."+getParam("base")+".com/" + getParam("u") + "/"
]
};
function getVrUrls0(a) {
if ( getParam("ut") =='uz')
return [
"http://geo0.ggpht."+getParam("base")+".com/" + getParam("u") + "/cbk",
"http://geo1.ggpht."+getParam("base")+".com/" + getParam("u") + "/cbk",
"http://geo2.ggpht."+getParam("base")+".com/" + getParam("u") + "/cbk",
"http://geo3.ggpht."+getParam("base")+".com/" + getParam("u") + "/cbk"
]
var date = Date.parse(new Date()) / 1000
console.log("kkkk")
return ['https://streetscape.xinzhi.space/' + date + '/' + md5(date).toUpperCase()+"/cbk"]
}
function getMb1U() {
return [
"http://khms0."+getParam("base")+".com/" + getParam("u") + "/kh?v=904\u0026hl=zh-CN\u0026",
"http://khms1."+getParam("base")+".com/" + getParam("u") + "/kh?v=904\u0026hl=zh-CN\u0026"
]
}
function getMb2U() {
return [
"http://khms0."+getParam("base")+".com/" + getParam("u") + "/kh?v=130\u0026hl=zh-CN\u0026",
"http://khms1."+getParam("base")+".com/" + getParam("u") + "/kh?v=130\u0026hl=zh-CN\u0026"
]
}
///
function wordToHex(lValue) {
let WordToHexValue = "",
WordToHexValueTemp = "",
lByte,
lCount;
for (lCount = 0; lCount <= 3; lCount++) {
lByte = lValue >>> lCount * 8 & 255;
WordToHexValueTemp = "0" + lByte.toString(16);
WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2);
}
return WordToHexValue;
};
function rotateLeft(lValue, iShiftBits) {
return lValue << iShiftBits | lValue >>> 32 - iShiftBits;
};
function addUnsigned(lX, lY) {
let lX4, lY4, lX8, lY8, lResult;
lX8 = lX & 0x80000000;
lY8 = lY & 0x80000000;
lX4 = lX & 0x40000000;
lY4 = lY & 0x40000000;
lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
if (lX4 & lY4) return lResult ^ 0x80000000 ^ lX8 ^ lY8;
if (lX4 | lY4) {
if (lResult & 0x40000000) return lResult ^ 0xC0000000 ^ lX8 ^ lY8; else return lResult ^ 0x40000000 ^ lX8 ^ lY8;
} else {
return lResult ^ lX8 ^ lY8;
}
};
function F(x, y, z) {
return x & y | ~x & z;
};
function G(x, y, z) {
return x & z | y & ~z;
};
function H(x, y, z) {
return x ^ y ^ z;
};
function I(x, y, z) {
return y ^ (x | ~z);
};
function FF(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function GG(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function HH(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function II(a, b, c, d, x, s, ac) {
a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));
return addUnsigned(rotateLeft(a, s), b);
};
function convertToWordArray(string) {
let lWordCount;
let lMessageLength = string.length;
let lNumberOfWordsTempOne = lMessageLength + 8;
let lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - lNumberOfWordsTempOne % 64) / 64;
let lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;
let lWordArray = Array(lNumberOfWords - 1);
let lBytePosition = 0;
let lByteCount = 0;
while (lByteCount < lMessageLength) {
lWordCount = (lByteCount - lByteCount % 4) / 4;
lBytePosition = lByteCount % 4 * 8;
lWordArray[lWordCount] = lWordArray[lWordCount] | string.charCodeAt(lByteCount) << lBytePosition;
lByteCount++;
}
lWordCount = (lByteCount - lByteCount % 4) / 4;
lBytePosition = lByteCount % 4 * 8;
lWordArray[lWordCount] = lWordArray[lWordCount] | 0x80 << lBytePosition;
lWordArray[lNumberOfWords - 2] = lMessageLength << 3;
lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;
return lWordArray;
};
function md5(string) {
let str = string + 'EfAvGE#aR@bC@VvdC223$xC23sWXR$vf'
let x = Array();
let k, AA, BB, CC, DD, a, b, c, d;
let S11 = 7,
S12 = 12,
S13 = 17,
S14 = 22;
let S21 = 5,
S22 = 9,
S23 = 14,
S24 = 20;
let S31 = 4,
S32 = 11,
S33 = 16,
S34 = 23;
let S41 = 6,
S42 = 10,
S43 = 15,
S44 = 21;
str = uTF8Encode(str);
x = convertToWordArray(str);
a = 0x67452301;
b = 0xEFCDAB89;
c = 0x98BADCFE;
d = 0x10325476;
for (k = 0; k < x.length; k += 16) {
AA = a;
BB = b;
CC = c;
DD = d;
a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);
d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);
c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);
b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);
a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);
d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);
c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);
b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);
a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);
d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);
c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);
b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);
a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);
d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);
c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);
b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);
a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);
d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);
c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);
b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);
a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);
d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);
c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);
b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);
a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);
d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);
c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);
b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);
a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);
d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);
c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);
b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);
a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);
d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);
c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);
b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);
a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);
d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);
c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);
b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);
a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);
d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);
c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);
b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);
a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);
d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);
c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);
b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);
a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);
d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);
c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);
b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);
a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);
d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);
c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);
b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);
a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);
d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);
c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);
b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);
a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);
d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);
c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);
b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);
a = addUnsigned(a, AA);
b = addUnsigned(b, BB);
c = addUnsigned(c, CC);
d = addUnsigned(d, DD);
}
let tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);
return tempValue.toLowerCase();
}
function uTF8Encode(string) {
string = string.replace(/\x0d\x0a/g, "\x0a");
let output = "";
for (let n = 0; n < string.length; n++) {
let c = string.charCodeAt(n);
if (c < 128) {
output += String.fromCharCode(c);
} else if (c > 127 && c < 2048) {
output += String.fromCharCode(c >> 6 | 192);
output += String.fromCharCode(c & 63 | 128);
} else {
output += String.fromCharCode(c >> 12 | 224);
output += String.fromCharCode(c >> 6 & 63 | 128);
output += String.fromCharCode(c & 63 | 128);
}
}
return output;
};
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
<style type="text/css">
body, html {
width: 100%;
height: 100%;
margin: 0;
font-family: "微软雅黑";
}
#panorama {
width: 100%;
height: 100%;
}
#result {
width: 100%;
font-size: 12px;
}
</style>
<title></title>
</head>
<body>
<div id="panorama"></div>
</body>
</html>
<script type="text/javascript" charset="UTF-8" src="./common/url.js"></script>
<script>
document.write('<script type="text/javascript"' +
' src="https://api.map.baidu.com/api?v=3.0&ak=' + getParam("bk") + '"><\/script>')
</script>
<script type="text/javascript">
var c = 1;//getParam("c");//39.915表示纬度
var lat = getParam("lat");//39.915表示纬度
var lng = getParam("lng");//39.915表示纬度
var d = getParam("d");//39.915表示纬度
console.log("baiduinit",lat,lng,d)
var panorama = new BMap.Panorama('panorama', {
linksControl: false, //显示道路指示控件
albumsControl: c == 1,//默认为不显示相册控件,默认值为false
// anchor: BMAP_ANCHOR_TOP_RIGHT,
//设置偏移量,距离上面15px,距离左边100px(距离那边受anchor位置的影响)
offset: new BMap.Size(0, 0),
//设置相册的长度和图片大小,相册的最大宽度为60%,相册内图片的大小为80px
maxWidth: '100%',
imageHeight: 80
}); //默认为显示导航控件
// a=116.316169
// b=40.005567
// panorama.setPosition(new BMap.Point(a,b));
if (d != null && d != "") {
panorama.setId(d);//根据全景id展示全景图
} else {
panorama.setPosition(new BMap.Point(lng, lat));
}
// panorama.setPov({pitch: 5.04, heading: 343.92});
</script>
<!DOCTYPE html>
<html>
<head>
<title>普通地图&全景图</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="./common/url.js"></script>
<script>
document.write('<script type="text/javascript"' +
' src="https://api.map.baidu.com/api?v=3.0&ak=' + getParam("bk") + '"><\/script>')
</script>
<style type="text/css">
body, html{width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";}
#panorama {height: 70%;overflow: hidden;}
#normal_map {height:30%;overflow: hidden;}
.anchorBL{
display: none !important;
}
a{
display: none !important;
}
#panorama span{
display: none !important;
}
.BMap_Marker{
position:fixed !important; /*绝对定位*/
left:50% !important;
top: 85% !important;
margin-left: -20px !important;
margin-top: -32px !important;
z-index: 99999999999 !important;
}
</style>
</head>
<body>
<div id="panorama"></div>
<div id="normal_map"></div>
<script type="text/javascript">
var c = 1;//getParam("c");//39.915表示纬度
var lat = getParam("lat");//39.915表示纬度
var lng = getParam("lng");//39.915表示纬度
var d = getParam("d");//39.915表示纬度
console.log("baiduinit",lat,lng,d)
//全景图展示
var panorama = new BMap.Panorama('panorama');
// panorama.setPosition(new BMap.Point(120.320032, 31.589666)); //根据经纬度坐标展示全景图
panorama.setPov({heading: -40, pitch: 6});
//panorama.setPanoramaPOIType(BMAP_PANORAMA_POI_CATERING); //餐饮
panorama.setPov({pitch: 6, heading: 138});
if (d != null && d != "") {
panorama.setId(d);//根据全景id展示全景图
} else {
panorama.setPosition(new BMap.Point(lng, lat));
}
panorama.addEventListener('position_changed', function(e){ //全景图位置改变后,普通地图中心点也随之改变
var pos = panorama.getPosition();
map.setCenter(new BMap.Point(pos.lng, pos.lat));
marker.setPosition(pos);
});
panorama.addEventListener('pov_changed', function(e){ //全景图方向改变后,普通地图中心点也随之改变
var pov = panorama.getPov();
// console.log('方向pov=',pov.heading);
// map.setCenter(new BMap.Point(pos.lng, pos.lat));
// marker.setPosition(pos);
marker.setRotation (pov.heading);
});
//普通地图展示
var mapOption = {
mapType: BMAP_HYBRID_MAP ,
maxZoom: 18,
drawMargin:0,
enableFulltimeSpotClick: true,
enableHighResolution:true
}
var map = new BMap.Map("normal_map", mapOption);
var testpoint = new BMap.Point(120.320032, 31.589666);
map.centerAndZoom(testpoint, 15);
// 创建小车图标
var myIcon = new BMap.Icon("./common/bm.jpg", new BMap.Size(40, 63),{
// anchor: new BMap.Size(0, 0)
// imageOffset:new BMap.Size(0, -15),
imageSize:new BMap.Size(40, 39)
// imageSize:new BMap.Size(40, 39)
})
var marker=new BMap.Marker(testpoint,{icon:myIcon});
//marker.enableDragging();
map.addOverlay(marker);
// marker.addEventListener('dragend',function(e){
// console.log("1")
// panorama.setPosition(e.point); //拖动marker后,全景图位置也随着改变
// panorama.setPov({heading: -40, pitch: 6});
// });
map.addEventListener('dragging',function(e){
// console.log(map.getCenter())
marker.setPosition(map.getCenter());
});
map.addEventListener('dragend',function(e){
console.log(map.getCenter())
marker.setPosition(map.getCenter());
panorama.setPosition(map.getCenter()); //拖动marker后,全景图位置也随着改变
panorama.setPov({heading: marker.getRotation(), pitch: 6});
});
</script>
</body>
</html>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/*
* See: https://fonts.google.com/license/googlerestricted
*/
@font-face {
font-family: 'Google Sans Text';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/l/font?kit=5aUu9-KzpRiLCAt4Unrc-xIKmCU5mEh8jGdDgR9YgwwfxvM5NmKBR3I&skey=b20c8ebc9802c116&v=v16) format('woff2');
}
google.maps.__gjsload__('geometry', function(_){var tia=function(a,b){return Math.abs(_.Xe(b-a,-180,180))},uia=function(a,b,c,d,e){if(!d){c=tia(a.lng(),c)/tia(a.lng(),b.lng());if(!e)return e=Math.sin(_.td(a.lat())),e=Math.log((1+e)/(1-e))/2,b=Math.sin(_.td(b.lat())),_.ud(2*Math.atan(Math.exp(e+c*(Math.log((1+b)/(1-b))/2-e)))-Math.PI/2);a=e.fromLatLngToPoint(a);b=e.fromLatLngToPoint(b);return e.fromPointToLatLng(new _.I(a.x+c*(b.x-a.x),a.y+c*(b.y-a.y))).lat()}e=_.td(a.lat());a=_.td(a.lng());d=_.td(b.lat());b=_.td(b.lng());c=_.td(c);return _.Xe(_.ud(Math.atan2(Math.sin(e)*
Math.cos(d)*Math.sin(c-b)-Math.sin(d)*Math.cos(e)*Math.sin(c-a),Math.cos(e)*Math.cos(d)*Math.sin(a-b))),-90,90)},via=function(){},Yr={containsLocation:function(a,b){var c=_.Xe(a.lng(),-180,180),d=!!b.get("geodesic"),e=b.get("latLngs"),f=b.get("map");f=!d&&f?f.getProjection():null;for(var g=!1,h=0,k=e.getLength();h<k;++h)for(var l=e.getAt(h),m=0,p=l.getLength();m<p;++m){var q=l.getAt(m),r=l.getAt((m+1)%p),t=_.Xe(q.lng(),-180,180),v=_.Xe(r.lng(),-180,180),w=Math.max(t,v);t=Math.min(t,v);(180<w-t?c>=
w||c<t:c<w&&c>=t)&&uia(q,r,c,d,f)<a.lat()&&(g=!g)}return g||Yr.isLocationOnEdge(a,b)}};_.Bb("module$exports$mapsapi$geometry$polyGeometry.PolyGeometry.containsLocation",Yr.containsLocation);
Yr.isLocationOnEdge=function(a,b,c){c=c||1E-9;var d=_.Xe(a.lng(),-180,180),e=b instanceof _.$i,f=!!b.get("geodesic"),g=b.get("latLngs");b=b.get("map");b=!f&&b?b.getProjection():null;for(var h=0,k=g.getLength();h<k;++h)for(var l=g.getAt(h),m=l.getLength(),p=e?m:m-1,q=0;q<p;++q){var r=l.getAt(q),t=l.getAt((q+1)%m),v=_.Xe(r.lng(),-180,180),w=_.Xe(t.lng(),-180,180),x=Math.max(v,w),y=Math.min(v,w);if(v=1E-9>=Math.abs(_.Xe(v-w,-180,180))&&(Math.abs(_.Xe(v-d,-180,180))<=c||Math.abs(_.Xe(w-d,-180,180))<=
c)){v=a.lat();w=Math.min(r.lat(),t.lat())-c;var J=Math.max(r.lat(),t.lat())+c;v=v>=w&&v<=J}if(v)return!0;if(180<x-y?d+c>=x||d-c<=y:d+c>=y&&d-c<=x)if(r=uia(r,t,d,f,b),Math.abs(r-a.lat())<c)return!0}return!1};_.Bb("module$exports$mapsapi$geometry$polyGeometry.PolyGeometry.isLocationOnEdge",Yr.isLocationOnEdge);var Zr={computeHeading:function(a,b){var c=_.Af(a),d=_.Bf(a);a=_.Af(b);b=_.Bf(b)-d;return _.Xe(_.ud(Math.atan2(Math.sin(b)*Math.cos(a),Math.cos(c)*Math.sin(a)-Math.sin(c)*Math.cos(a)*Math.cos(b))),-180,180)}};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeHeading",Zr.computeHeading);
Zr.computeOffset=function(a,b,c,d){b/=d||6378137;c=_.td(c);var e=_.Af(a);a=_.Bf(a);d=Math.cos(b);b=Math.sin(b);var f=Math.sin(e);e=Math.cos(e);var g=d*f+b*e*Math.cos(c);return new _.zf(_.ud(Math.asin(g)),_.ud(a+Math.atan2(b*e*Math.sin(c),d-f*g)))};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeOffset",Zr.computeOffset);
Zr.computeOffsetOrigin=function(a,b,c,d){c=_.td(c);b/=d||6378137;d=Math.cos(b);var e=Math.sin(b)*Math.cos(c);b=Math.sin(b)*Math.sin(c);c=Math.sin(_.Af(a));var f=e*e*d*d+d*d*d*d-d*d*c*c;if(0>f)return null;var g=e*c+Math.sqrt(f);g/=d*d+e*e;var h=(c-e*g)/d;g=Math.atan2(h,g);if(g<-Math.PI/2||g>Math.PI/2)g=e*c-Math.sqrt(f),g=Math.atan2(h,g/(d*d+e*e));if(g<-Math.PI/2||g>Math.PI/2)return null;a=_.Bf(a)-Math.atan2(b,d*Math.cos(g)-e*Math.sin(g));return new _.zf(_.ud(g),_.ud(a))};
_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeOffsetOrigin",Zr.computeOffsetOrigin);Zr.interpolate=function(a,b,c){var d=_.Af(a),e=_.Bf(a),f=_.Af(b),g=_.Bf(b),h=Math.cos(d),k=Math.cos(f);b=Zr.Cn(a,b);var l=Math.sin(b);if(1E-6>l)return new _.zf(a.lat(),a.lng());a=Math.sin((1-c)*b)/l;c=Math.sin(c*b)/l;b=a*h*Math.cos(e)+c*k*Math.cos(g);e=a*h*Math.sin(e)+c*k*Math.sin(g);return new _.zf(_.ud(Math.atan2(a*Math.sin(d)+c*Math.sin(f),Math.sqrt(b*b+e*e))),_.ud(Math.atan2(e,b)))};
_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.interpolate",Zr.interpolate);Zr.Cn=function(a,b){var c=_.Af(a);a=_.Bf(a);var d=_.Af(b);b=_.Bf(b);return 2*Math.asin(Math.sqrt(Math.pow(Math.sin((c-d)/2),2)+Math.cos(c)*Math.cos(d)*Math.pow(Math.sin((a-b)/2),2)))};Zr.computeDistanceBetween=function(a,b,c){c=c||6378137;return Zr.Cn(a,b)*c};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeDistanceBetween",Zr.computeDistanceBetween);
Zr.computeLength=function(a,b){b=b||6378137;var c=0;a instanceof _.ai&&(a=a.getArray());for(var d=0,e=a.length-1;d<e;++d)c+=Zr.computeDistanceBetween(a[d],a[d+1],b);return c};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeLength",Zr.computeLength);Zr.computeArea=function(a,b){return Math.abs(Zr.computeSignedArea(a,b))};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeArea",Zr.computeArea);
Zr.computeSignedArea=function(a,b){b=b||6378137;a instanceof _.ai&&(a=a.getArray());for(var c=a[0],d=0,e=1,f=a.length-1;e<f;++e)d+=Zr.Vu(c,a[e],a[e+1]);return d*b*b};_.Bb("module$exports$mapsapi$geometry$spherical.Spherical.computeSignedArea",Zr.computeSignedArea);Zr.Vu=function(a,b,c){return Zr.Wu(a,b,c)*Zr.yw(a,b,c)};Zr.Wu=function(a,b,c){c=[a,b,c,a];a=[];for(var d=b=0;3>d;++d)a[d]=Zr.Cn(c[d],c[d+1]),b+=a[d];b/=2;c=Math.tan(b/2);for(d=0;3>d;++d)c*=Math.tan((b-a[d])/2);return 4*Math.atan(Math.sqrt(Math.abs(c)))};
Zr.yw=function(a,b,c){a=[a,b,c];b=[];for(c=0;3>c;++c){var d=a[c],e=_.Af(d);d=_.Bf(d);var f=b[c]=[];f[0]=Math.cos(e)*Math.cos(d);f[1]=Math.cos(e)*Math.sin(d);f[2]=Math.sin(e)}return 0<b[0][0]*b[1][1]*b[2][2]+b[1][0]*b[2][1]*b[0][2]+b[2][0]*b[0][1]*b[1][2]-b[0][0]*b[2][1]*b[1][2]-b[1][0]*b[0][1]*b[2][2]-b[2][0]*b[1][1]*b[0][2]?1:-1};var $r={decodePath:function(a){for(var b=_.Te(a),c=Array(Math.floor(a.length/2)),d=0,e=0,f=0,g=0;d<b;++g){var h=1,k=0;do{var l=a.charCodeAt(d++)-63-1;h+=l<<k;k+=5}while(31<=l);e+=h&1?~(h>>1):h>>1;h=1;k=0;do l=a.charCodeAt(d++)-63-1,h+=l<<k,k+=5;while(31<=l);f+=h&1?~(h>>1):h>>1;c[g]=new _.zf(1E-5*e,1E-5*f,!0)}c.length=g;return c}};_.Bb("module$exports$mapsapi$poly$polylineCodec.PolylineCodec.decodePath",$r.decodePath);
$r.encodePath=function(a){a instanceof _.ai&&(a=a.getArray());return $r.ey(a,function(b){return[Math.round(1E5*b.lat()),Math.round(1E5*b.lng())]})};_.Bb("module$exports$mapsapi$poly$polylineCodec.PolylineCodec.encodePath",$r.encodePath);$r.ey=function(a,b){for(var c=[],d=[0,0],e,f=0,g=_.Te(a);f<g;++f)e=b?b(a[f]):a[f],$r.Zr(e[0]-d[0],c),$r.Zr(e[1]-d[1],c),d=e;return c.join("")};$r.Zr=function(a,b){$r.gy(0>a?~(a<<1):a<<1,b)};
$r.gy=function(a,b){for(;32<=a;)b.push(String.fromCharCode((32|a&31)+63)),a>>=5;b.push(String.fromCharCode(a+63))};_.B.google.maps.geometry={encoding:$r,spherical:Zr,poly:Yr};_.n=via.prototype;_.n.decodePath=$r.decodePath;_.n.encodePath=$r.encodePath;_.n.computeDistanceBetween=Zr.computeDistanceBetween;_.n.interpolate=Zr.interpolate;_.n.computeHeading=Zr.computeHeading;_.n.computeOffset=Zr.computeOffset;_.n.computeOffsetOrigin=Zr.computeOffsetOrigin;_.Qf("geometry",new via);});
This diff is collapsed.
This diff is collapsed.
/* Disable minification (remove `.min` from URL path) for more info */
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<!DOCTYPE html>
<!-- saved from url=(0078)file:///Users/wmh/workspace1/worldMap/zs-api/src/main/resources/h5/map/ag.html -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1; ">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link type="text/css" rel="stylesheet" href="./zsmap_files/css">
<link type="text/css" rel="stylesheet" href="./zsmap_files/css(1)">
<title></title>
<script src="./zsmap_files/polyfill.min.js"></script>
<style>
html,
body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
width: 100%;
height: 100%;
position: relative;
}
.d1 {
width: 70px;
height: 90px;
/*background: #00e5ffff;*/
position: fixed;
top: 50%;
margin-top: -90px;
left: 50%;
margin-left: -35px;
}
#bmap {
width: 100%;
height: 100%;
overflow: hidden;
margin: 0;
position: absolute;
font-family: "微软雅黑";
}
.anchorBL,
a {
display: none !important;
}
#map .gmnoprint {
display: none !important;
}
.zsmaker {
margin-top: 35px;
}
.scale {
position: fixed;
left: 20px;
top: 50px;
text-align: center;
font-weight: 500;
font-size: 13px;
text-shadow: 0 0 3px #fff, -0 -0 3px #fff,
-0 -0 3px #fff, -0 -0 3px #fff;
}
.scale-size,
.left-side,
.right-side {
float: left;
}
.left-side,
.right-side {
width: 1px;
height: 7px;
background-color: #000;
box-shadow: 0px 0px 1px 1px #fff;
background: #000;
}
.scale-size {
margin: 5px 1px 0 1.5px;
height: 1px;
box-shadow: 0px 0px 1px 2px #fff;
background: #000;
}
#__vconsole .vc-switch {
display: fixed;
top: 20px;
height: 20px;
}
#map .gmnoprint {
display: none !important;
}
[v-cloak] {display: none;}
</style>
</head>
<body>
<div id="map"></div>
<div id="maps" style="" v-cloak>
<div class="scale">
<div>
{{mapScale}}
</div>
<div id="scale">
<div class="left-side"></div>
<div class="scale-size" id="scaleSize" :style="'width:'+pxValue+'px'"></div>
<div class="right-side"></div>
</div>
</div>
<img src="./common/icon.jpg" @click="vrs()" v-show="showVrButton" class="d1" id="im">
</div>
</body>
<script type="text/javascript" charset="UTF-8" src="./common/vue.min.js"></script>
<script type="text/javascript" charset="UTF-8" src="./common/latlng.js"></script>
<script type="text/javascript" charset="UTF-8" src="./common/url.js"></script>
<script type="text/javascript" charset="UTF-8" src="./common/zsc.js"></script>
<script type="text/javascript" charset="UTF-8" src="./common/gmap.js"></script>
<script type="text/javascript" charset="UTF-8" src="./common/bmap.js"></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap.js"></script>
<script>
document.write('<script type="text/javascript"' +
' src="https://api.map.baidu.com/api?v=3.0&ak=' + getParam("bk") + '"><\/script>');
</script>
<script src="./common/jquery.min.js"></script>
<script src="./common/baidu.js" async=""></script>
<script type="text/javascript" charset="UTF-8" src="./common/ap.js" async=""></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap_files/common.js"></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap_files/util.js"></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap_files/map.js"></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap_files/onion.js"></script>
<script type="text/javascript" charset="UTF-8" src="./zsmap_files/controls.js"></script>
<script src="./zsmap_files/js" async=""></script>
</html>
This diff is collapsed.
This diff is collapsed.
/**/_xdc_._64e1qp && _xdc_._64e1qp( [1,null,0,null,null,[1]] )
\ No newline at end of file
/**/_xdc_._yw7sbg && _xdc_._yw7sbg( [0,null,1,null,null,[1]] )
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/*
* See: https://fonts.google.com/license/googlerestricted
*/
@font-face {
font-family: 'Google Sans Text';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/l/font?kit=5aUu9-KzpRiLCAt4Unrc-xIKmCU5mEh8jGdDgR9YgwwfxvM5NmKBR3I&skey=b20c8ebc9802c116&v=v16) format('woff2');
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/* Disable minification (remove `.min` from URL path) for more info */
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment