360全景和停车管理修改

This commit is contained in:
徐克 2022-07-28 19:52:30 +08:00
parent ffbd4fd6e2
commit e845a6bb3f
38 changed files with 556 additions and 54 deletions

View File

@ -10,6 +10,9 @@
<script src="Build/UnityLoader.js"></script> <script src="Build/UnityLoader.js"></script>
<script> <script>
var unityInstance = UnityLoader.instantiate("unityContainer", "Build/sgs.json", {onProgress: UnityProgress}); var unityInstance = UnityLoader.instantiate("unityContainer", "Build/sgs.json", {onProgress: UnityProgress});
// function getUrl(data) {
// window.parent.postMessage({ status:'200',data:"360全景",panorama:data},'*');
// }
</script> </script>
</head> </head>
<body> <body>

View File

@ -142,7 +142,7 @@
el.addEventListener("click", function (e) { el.addEventListener("click", function (e) {
/////////////////////////////////自定义输出内容////////////////////////////////////// /////////////////////////////////自定义输出内容//////////////////////////////////////
console.log("跳转" + e.target.cusData.data); console.log("跳转" + e.target.cusData.data);
window.parent['vueDefinedMyProp']('nanjing') // window.parent['vueDefinedMyProp']('nanjing')
}); });
return mk; return mk;

View File

@ -21,7 +21,7 @@
z-index: 100; z-index: 100;
background-image: url(images/fc.png); background-image: url(images/fc.png);
position:relative; position:relative;
z-index:9999; /*z-index:9999;*/
} }
.fc:hover{ .fc:hover{
@ -187,7 +187,7 @@
z-index: 100; z-index: 100;
background-image: url(images/td.png); background-image: url(images/td.png);
position:relative; position:relative;
z-index:9999; /*z-index:9999;*/
} }
.td:hover{ .td:hover{
@ -446,6 +446,7 @@
var defaultPos = "nanjing";//默认画线的位置 var defaultPos = "nanjing";//默认画线的位置
var cityBoundsData = new Object(); var cityBoundsData = new Object();
var cityOverColor = "#ff002a";//城市鼠标经过颜色 var cityOverColor = "#ff002a";//城市鼠标经过颜色
var cityColor = "transparent"
//socket //socket
// var socket = io('wss://111.229.30.246:18443'); // var socket = io('wss://111.229.30.246:18443');
var socket = io('ws://111.229.30.246:18444'); var socket = io('ws://111.229.30.246:18444');
@ -482,9 +483,9 @@ function send(val) {
// } // }
var positions = { var positions = {
"nj": { name: "南京市", lng: 119.932628, lat: 32.473465, markers: [ "nj": { name: "南京市", lng: 119.932628, lat: 32.473465, markers: [
{ icon: "images/sgs.png", width: 200, height: 100, lng: 118.773886, lat:32.058391, data: "省大楼",url:"/build/sgs.html"}, { icon: "images/sgs.png", width: 200, height: 138, lng: 118.773886, lat:32.058391, data: "省大楼",url:"/build/sgs.html",zIndex:9999},
{ icon: "images/fwds.png", width: 200, height: 100, lng: 118.741654, lat: 31.992058, data: "服务大厦",url:"/build/tgs.html" }, { icon: "images/fwds.png", width: 200, height: 138, lng: 118.741654, lat: 31.992058, data: "服务大厦",url:"/build/tgs.html",zIndex:9999 },
{ icon: "images/sdl.png", width: 200, height: 100, lng: 118.744015, lat: 31.990507, data: "市大楼",url:"/build/cgs.html" },] }, { icon: "images/sdl.png", width: 200, height: 138, lng: 118.744015, lat: 31.990507, data: "市大楼",url:"/build/cgs.html",zIndex:9999 },] },
// "nj": { name: "南京市", lng: 118.802997, lat: 32.066366, markers: [ // "nj": { name: "南京市", lng: 118.802997, lat: 32.066366, markers: [
// { icon: "images/sgs.png", width: 200, height: 100, lng: 118.77416, lat: 32.0578, data: "省大楼" }] }, // { icon: "images/sgs.png", width: 200, height: 100, lng: 118.77416, lat: 32.0578, data: "省大楼" }] },
"njData": { name: "南京市", lng: 118.802997, lat: 32.066366, markers: [ "njData": { name: "南京市", lng: 118.802997, lat: 32.066366, markers: [
@ -704,7 +705,6 @@ function send(val) {
layers.jiangsu = new Object(); layers.jiangsu = new Object();
layers.jiangsu.line = createLine("jiangsu", res.jiangsu, '#3787ff', 2).id; layers.jiangsu.line = createLine("jiangsu", res.jiangsu, '#3787ff', 2).id;
layers.jiangsu.polygon = createPolygon("jiangsu", res.jiangsu, '#3787ff', 0.1).id; layers.jiangsu.polygon = createPolygon("jiangsu", res.jiangsu, '#3787ff', 0.1).id;
createCities("nanjing",res.nanjing); createCities("nanjing",res.nanjing);
createCities("zhenjiang",res.zhenjiang); createCities("zhenjiang",res.zhenjiang);
createCities("suzhou",res.suzhou); createCities("suzhou",res.suzhou);
@ -785,18 +785,16 @@ function send(val) {
var hidePolygon = createPolygon("hide" + cityName, cityData, "#000000", 0); var hidePolygon = createPolygon("hide" + cityName, cityData, "#000000", 0);
map.on('mouseover', hidePolygon.id, function (ev) { map.on('mouseover', hidePolygon.id, function (ev) {
createPolygon("show" + cityName, cityData, cityOverColor, 0.1); createPolygon("show" +cityName , cityData, cityOverColor, 0.1);
createLine("show" + cityName, cityData, cityOverColor, 1); createLine("show" + cityName, cityData, cityOverColor, 1);
}); });
map.on('mouseleave', hidePolygon.id, function (ev) { map.on('mouseleave', hidePolygon.id, function (ev) {
clearLayer("p-show" + cityName); clearLayer("p-show" +cityName);
clearLayer("l-show" + cityName); clearLayer("l-show" +cityName);
}); });
map.on('click', hidePolygon.id, function (ev) { map.on('click', hidePolygon.id, function (ev) {
console.log("1111",cityData[0],cityName) console.log("1111",cityData[0],cityName)
clearLayer("hide" + cityName);
clearLayer("hide" + cityName);
map.easeTo({ center: [cityData[100][0], cityData[100][1]], zoom: getMapZoom1() }); map.easeTo({ center: [cityData[100][0], cityData[100][1]], zoom: getMapZoom1() });
send(cityName) send(cityName)
if(cityName=='nanjing'){ if(cityName=='nanjing'){
@ -919,7 +917,7 @@ function send(val) {
el.src = markerData.icon; el.src = markerData.icon;
el.style.width = markerData.width == undefined ? "64px" : markerData.width + "px"; el.style.width = markerData.width == undefined ? "64px" : markerData.width + "px";
el.style.height = markerData.height == undefined ? "64px" : markerData.height + "px"; el.style.height = markerData.height == undefined ? "64px" : markerData.height + "px";
el.style.zIndex = markerData.zIndex
// 如果不传el会默认给一个蓝色水滴图标 // 如果不传el会默认给一个蓝色水滴图标
var mk = new SGMap.Marker(el, { var mk = new SGMap.Marker(el, {
// marker相对经纬度点坐标点的位置 // marker相对经纬度点坐标点的位置
@ -929,14 +927,13 @@ function send(val) {
}); });
mk.setLngLat([markerData.lng, markerData.lat]); mk.setLngLat([markerData.lng, markerData.lat]);
mk.addTo(map); mk.addTo(map);
el.addEventListener("click", function (e) { el.addEventListener("click", function (e) {
/////////////////////////////////自定义输出内容////////////////////////////////////// /////////////////////////////////自定义输出内容//////////////////////////////////////
console.log("场景跳转@" + e.target.cusData.data); console.log("场景跳转@" + e.target.cusData.data);
// window.parent['vueDefinedMyProp1']('build') // window.parent['vueDefinedMyProp1']('build')
window.parent.postMessage({ data:"办公用地",params:e.target.cusData.data,url:e.target.cusData.url},'*'); window.parent.postMessage({ data:"办公用地",params:e.target.cusData.data,url:e.target.cusData.url},'*');
// gotoPosition(e.target.cusData.data) // gotoPosition(e.target.cusData.data)
}); });
return mk; return mk;
} }
@ -965,6 +962,7 @@ function send(val) {
var lng = parseFloat(row.position.substring(0, row.position.indexOf(','))); var lng = parseFloat(row.position.substring(0, row.position.indexOf(',')));
var lat = parseFloat(row.position.substr(row.position.indexOf(',') + 1)); var lat = parseFloat(row.position.substr(row.position.indexOf(',') + 1));
// console.log(lng, lat); // console.log(lng, lat);
visibleTD('nanjing')
if (lng != NaN && lat != NaN && lng > 100 && lat < 100) { if (lng != NaN && lat != NaN && lng > 100 && lat < 100) {
//画marker点 //画marker点
var el = document.createElement("div"); var el = document.createElement("div");

File diff suppressed because one or more lines are too long

Binary file not shown.

16
public/sgs/Build/sgs.json Normal file
View File

@ -0,0 +1,16 @@
{
"companyName": "DefaultCompany",
"productName": "ShengDaPing",
"productVersion": "0.1",
"dataUrl": "sgs.data.unityweb",
"wasmCodeUrl": "sgs.wasm.code.unityweb",
"wasmFrameworkUrl": "sgs.wasm.framework.unityweb",
"graphicsAPI": ["WebGL 2.0"],
"webglContextAttributes": {"preserveDrawingBuffer": false},
"splashScreenStyle": "Dark",
"backgroundColor": "#231F20",
"cacheControl": {"default": "must-revalidate"},
"developmentBuild": false,
"multithreading": false,
"unityVersion": "2019.4.36f1c1"
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/index.html

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/Map/sgmap出行安全/sgmap.html

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/Map/sgmap房地资源/sgmap.html

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/Map/sgmap智慧工地/sgmap.html

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/Map/sgmap绿色双碳/sgmap.html

View File

@ -0,0 +1 @@
https://web-1300932214.cos.ap-nanjing.myqcloud.com/sgs/Map/sgmap食品安全/sgmap.html

View File

@ -0,0 +1,24 @@
function UnityProgress(unityInstance, progress) {
if (!unityInstance.Module)
return;
if (!unityInstance.logo) {
unityInstance.logo = document.createElement("div");
unityInstance.logo.className = "logo " + unityInstance.Module.splashScreenStyle;
unityInstance.container.appendChild(unityInstance.logo);
}
if (!unityInstance.progress) {
unityInstance.progress = document.createElement("div");
unityInstance.progress.className = "progress " + unityInstance.Module.splashScreenStyle;
unityInstance.progress.empty = document.createElement("div");
unityInstance.progress.empty.className = "empty";
unityInstance.progress.appendChild(unityInstance.progress.empty);
unityInstance.progress.full = document.createElement("div");
unityInstance.progress.full.className = "full";
unityInstance.progress.appendChild(unityInstance.progress.full);
unityInstance.container.appendChild(unityInstance.progress);
}
unityInstance.progress.full.style.width = (100 * progress) + "%";
unityInstance.progress.empty.style.width = (100 * (1 - progress)) + "%";
if (progress == 1)
unityInstance.logo.style.display = unityInstance.progress.style.display = "none";
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -0,0 +1,31 @@
html,body{
width: 100%;
height: 100%;
margin: 0px;
overflow: hidden;
}
#unityContainer{
width: 100%;
height: 100%;
margin: 0px;
}
.webgl-content * {border: 0; margin: 0; padding: 0;width: 100%; height: 100%;}
.webgl-content {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
.webgl-content .logo, .progress {position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
.webgl-content .logo {background: url('progressLogo.Light.png') no-repeat center / contain; width: 154px; height: 130px;}
.webgl-content .progress {height: 18px; width: 141px; margin-top: 90px;}
.webgl-content .progress .empty {background: url('progressEmpty.Light.png') no-repeat right / cover; float: right; width: 100%; height: 100%; display: inline-block;}
.webgl-content .progress .full {background: url('progressFull.Light.png') no-repeat left / cover; float: left; width: 0%; height: 100%; display: inline-block;}
.webgl-content .logo.Dark {background-image: url('progressLogo.Dark.png');}
.webgl-content .progress.Dark .empty {background-image: url('progressEmpty.Dark.png');}
.webgl-content .progress.Dark .full {background-image: url('progressFull.Dark.png');}
.webgl-content .footer {margin-top: 5px; height: 38px; line-height: 38px; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 18px;display: none;}
.webgl-content .footer .webgl-logo, .title, .fullscreen {height: 100%; display: inline-block; background: transparent center no-repeat;}
.webgl-content .footer .webgl-logo {background-image: url('webgl-logo.png'); width: 204px; float: left;}
.webgl-content .footer .title {margin-right: 10px; float: right;}
.webgl-content .footer .fullscreen {background-image: url('fullscreen.png'); width: 38px; float: right;}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

52
public/sgs/index.html Normal file
View File

@ -0,0 +1,52 @@
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>省公司</title>
<link rel="shortcut icon" href="TemplateData/favicon.ico">
<link rel="stylesheet" href="TemplateData/style.css">
<script src="TemplateData/UnityProgress.js"></script>
<script src="Build/UnityLoader.js"></script>
<script>
var unityInstance = UnityLoader.instantiate("unityContainer", "Build/sgs.json", {onProgress: UnityProgress});
//开启/关闭楼层面板 arg:true|false
window.parent.FloorUI = function(arg){
console.log("arg",arg)
unityInstance.SendMessage("GameManager","FloorUI",'true');
}
//调用停车场
window.parent.FloorBase = function(arg){
console.log("arg",arg)
unityInstance.SendMessage("GameManager","FloorBase",'true');
}
//跳转场景 GongDi MainScene B1 B2 B3 1 2 4 27
window.parent.GotoScene = function (arg){
unityInstance.SendMessage("GameManager","GotoScene",arg);
}
//当场景加载完成的时候
function OnSceneLoaded(scene){
window.parent.OnSceneLoaded(scene)
}
//打开全景图
function getUrl(url){
console.log("打开全景",url);
window.parent.postMessage({ status:'200',data:"360全景",panorama:url},'*');
}
</script>
</head>
<body>
<div class="webgl-content" style="width:100%;height: 100%;">
<div id="unityContainer"></div>
<div class="footer">
<div class="webgl-logo"></div>
<div class="fullscreen" onclick="unityInstance.SetFullscreen(1)"></div>
<div class="title">ShengDaPing</div>
</div>
</div>
</body>
</html>

View File

@ -31,5 +31,6 @@ h2 {
// background-color:#0d131f; // background-color:#0d131f;
overflow: hidden; overflow: hidden;
} }
</style> </style>

View File

@ -89,6 +89,7 @@ width: 100%;
color: #8ec1d8; color: #8ec1d8;
font-weight: 700; font-weight: 700;
font-size: 16px; font-size: 16px;
padding-top: 3px;
.icon { .icon {
height: 10px; height: 10px;
width: 10px; width: 10px;

View File

@ -268,6 +268,24 @@ const routes = [{
import ('../views/green/index.vue'), import ('../views/green/index.vue'),
}], }],
}, },
{
path: '/360panorama',
meta: {
title: '360全景'
},
component: {
render: (e) => e("router-view")
},
children: [{
path: '',
name: '360panorama',
meta: {
title: '360全景'
},
component: () =>
import ('../views/360panorama.vue'),
}],
},
] ]
const router = new VueRouter({ const router = new VueRouter({
routes routes

View File

@ -36,14 +36,16 @@ export default {
if (appRef) { if (appRef) {
if (currentRate > baseProportion) { if (currentRate > baseProportion) {
// 表示更宽 // 表示更宽
scale.width = ((window.innerHeight * baseProportion) / baseWidth).toFixed(5); // scale.width = ((window.innerHeight * baseProportion) / baseWidth).toFixed(5);
scale.width = 1;
console.log('scale.width,,', scale.width, parseFloat(scale.width) + 0.08111); console.log('scale.width,,', scale.width, parseFloat(scale.width) + 0.08111);
scale.height = (window.innerHeight / baseHeight).toFixed(5) scale.height = (window.innerHeight / baseHeight).toFixed(5)
appRef.style.transform = `scale(${parseFloat(scale.width)}, ${scale.height}) translate(-50%, -50%)` appRef.style.transform = `scale(${parseFloat(scale.width)}, ${scale.height}) translate(-50%, -50%)`
} else { } else {
// 表示更高 // 表示更高
scale.height = ((window.innerWidth / baseProportion) / baseHeight).toFixed(5) scale.height = ((window.innerWidth / baseProportion) / baseHeight).toFixed(5)
scale.width = (window.innerWidth / baseWidth).toFixed(5) // scale.width = (window.innerWidth / baseWidth).toFixed(5)
scale.width = 1;
appRef.style.transform = `scale(${scale.width}, ${scale.height}) translate(-50%, -50%)` appRef.style.transform = `scale(${scale.width}, ${scale.height}) translate(-50%, -50%)`
} }
} }

313
src/views/360panorama.vue Normal file
View File

@ -0,0 +1,313 @@
<template>
<div id="index" ref="appRef">
<div
class="bg"
>
<iframe :src="buildingUrl" name="ifr" frameborder="0" ref="iframe" width="100%" height="100%" style="position: absolute"></iframe>
<!-- <div class="body-left"></div>-->
<!-- <div class="body-right"></div>-->
<!-- <div class="body-bottom"></div>-->
<dv-loading v-if="loading">Loading...</dv-loading>
<div v-else class="host-body">
<headerIndex :cdata="{ title: '360全景', margin: '26px auto' }" style="position:relative"/>
<div class="body-box" style="margin-top: -100px;">
<!-- 第四行数据 -->
<div class="bottom-box">
<!-- <dv-border-box-13>
<bottomLeft />
</dv-border-box-13>
<dv-border-box-12>
<bottomRight />
</dv-border-box-12> -->
<div class="container">
<!-- <div id="temp-float-window">
<router-view></router-view>
</div> -->
<!-- 返回按钮 -->
<!-- <div class="back-button">
<a href="../../index.html"></a>
</div> -->
<div class="left">
</div>
<div class="right">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import drawMixin from "../utils/drawMixin";
import { formatTime } from "../utils/index.js";
import headerIndex from "../components/layout/header";
import centerLeft1 from "./centerLeft1";
import centerLeft2 from "./centerLeft2";
import centerRight1 from "./centerRight1";
import centerRight2 from "./centerRight2";
import center from "./center";
import bottomLeft from "./bottomLeft";
import bottomRight from "./bottomRight";
// import { url } from "inspector";
export default {
mixins: [drawMixin],
data() {
return {
buildingUrl:'/sgs/index.html'
};
},
components: {
headerIndex,
centerLeft1,
centerLeft2,
centerRight1,
centerRight2,
center,
bottomLeft,
bottomRight,
},
mounted() {
window.OnSceneLoaded= function(scene){
console.log("scene",scene);
window.FloorUI('true')
}
window.addEventListener("message", this.buildUrl, false);
},
methods: {
buildUrl(e){
if (e.data.status === '200'){
this.buildingUrl = e.data.panorama
}
console.log(e.data.panorama)
},
},
created() {
}
};
</script>
<style lang="scss" scoped>
@import "../assets/scss/index.scss";
.body-left{
background: url('../assets/left.png') no-repeat!important;
}
.body-right{
background: url('../assets/right.png') no-repeat!important;
}
.body-bottom{
background: url('../assets/down.png') no-repeat!important;
}
//
.container {
z-index: 99!important;
.left {
left: 35px;
}
.right {
right: 35px;
}
.left,
.right {
position: absolute;
.main {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 490px;
height: 324px;
padding: 30px 20px;
background: url(../assets/borad-bg.png) no-repeat;
background-size: 490px 324px;
.main-title {
// width: 542px;
height: 22px;
padding-left: 50px;
margin-bottom: 5px;
background: -15px url(../assets/tit.png) no-repeat;
background-size: contain;
color: #8ec1d8;
font-weight: 700;
font-size: 16px;
}
.content {
padding-left: 10px;
text-align: center;
.list-table {
.tb-hd,
.tb-bd {
ul {
display: flex;
justify-content: space-around;
width: 100%;
height: 35px;
color: #a6d3e8;
li {
flex: 1;
line-height: 35px;
&:first-child {
flex: 0.5;
}
}
}
}
.tb-hd {
ul {
color: #65c1f2;
}
}
.tb-bd {
ul {
&:nth-child(2n + 1) {
background-color: #191934;
}
}
}
}
}
}
}
.middle {
/* 搜索框 */
.search-middle {
position: absolute;
left: 50%;
top: 180px;
width: 356px;
height: 42px;
transform: translateX(-50%);
}
.search-middle .search-container {
position: relative;
width: 100%;
height: 100%;
}
.search-middle .search-container input {
width: 100%;
height: 100%;
padding-left: 15px;
background-color: transparent;
background-image: url(../assets/search-input.png);
background-size: contain;
border: 0;
border-radius: 0;
font-size: 12px;
color: rgb(211, 245, 255);
}
.search-middle .search-container input:focus {
outline: none;
}
.search-middle .search-container input::-webkit-input-placeholder {
color: rgb(211, 245, 255);
}
.search-middle .search-container button {
width: 45px;
height: 100%;
position: absolute;
right: 0;
top: 0;
background-color: transparent;
background: 10px 10px url(../assets/search-button.png) no-repeat;
border: 0;
border-radius: 0;
text-align: center;
line-height: 30px;
cursor: pointer;
}
/* 对话框demo */
.dialogs-demo > div {
position: absolute;
width: 343px;
height: 166px;
background-image: url(../assets/dialog.png);
cursor: pointer;
}
.dialogs-demo > div:hover {
background-image: url(../assets/dialog-highlight.png);
}
.dialogs-demo > div img {
position: relative;
left: 215px;
top: -65px;
}
.dialogs-demo > div .text {
position: relative;
left: 38px;
top: -130px;
}
.dialogs-demo > div .text p:first-child {
font-weight: 700;
font-size: 16px;
color: rgb(132, 222, 231);
line-height: 45px;
}
.dialogs-demo > div .text p:last-child {
font-weight: 400;
font-size: 16px;
color: #fff;
}
.dialogs-demo > div.demo-1 {
left: 900px;
top: 312px;
}
.dialogs-demo > div.demo-2 {
left: 1100px;
top: 520px;
}
.dialogs-demo > div.demo-3 {
left: 723px;
top: 650px;
}
}
/* 返回按钮 */
.back-button a {
position: absolute;
right: 21px;
top: 20px;
width: 90px;
height: 33px;
background-color: transparent;
border: 0;
background-image: url(../assets/back.png);
cursor: pointer;
}
.back-button a:hover {
background-image: url(../assets/back-highlight.png);
}
/* 临时窗口 */
#temp-float-window {
display: none;
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: 1900px;
height: 1000px;
background-color: #fff;
border: 5px solid #fff;
z-index: 999!important;
#index {
width: 100%;
height: 100%;
}
}
}
</style>

View File

@ -3,12 +3,13 @@
<div <div
class="bg" class="bg"
> >
<div class="body-left"></div> <iframe :src="buildingUrl" name="ifr" frameborder="0" ref="iframe" width="100%" height="100%" style="position: absolute"></iframe>
<div class="body-right"></div> <!-- <div class="body-left"></div>-->
<div class="body-bottom"></div> <!-- <div class="body-right"></div>-->
<!-- <div class="body-bottom"></div>-->
<dv-loading v-if="loading">Loading...</dv-loading> <dv-loading v-if="loading">Loading...</dv-loading>
<div v-else class="host-body"> <div v-else class="host-body">
<headerIndex :cdata="{ title: '车辆管理', margin: '26px auto' }" /> <headerIndex :cdata="{ title: '车辆管理', margin: '26px auto' }" style="position: relative" />
<div class="body-box"> <div class="body-box">
<!-- 第三行数据 --> <!-- 第三行数据 -->
@ -101,6 +102,7 @@ export default {
mixins: [drawMixin], mixins: [drawMixin],
data() { data() {
return { return {
buildingUrl:'/sgs/index.html',
backgroundPic: { backgroundPic: {
index: "car/bg", index: "car/bg",
}, },
@ -128,11 +130,23 @@ export default {
mounted() { mounted() {
this.timeFn(); this.timeFn();
this.cancelLoading(); this.cancelLoading();
window.addEventListener("message", this.buildUrl, false);
window.OnSceneLoaded= function(scene){
console.log("scene",scene);
// window.FloorBase('true')
}
this.buildUrl()
}, },
beforeDestroy() { beforeDestroy() {
clearInterval(this.timing); clearInterval(this.timing);
}, },
methods: { methods: {
buildUrl(e){
if (e.data.status === '200'){
this.buildingUrl = e.data.panorama
}
console.log(e.data.panorama)
},
timeFn() { timeFn() {
this.timing = setInterval(() => { this.timing = setInterval(() => {
this.dateDay = formatTime(new Date(), "HH: mm: ss"); this.dateDay = formatTime(new Date(), "HH: mm: ss");
@ -152,10 +166,13 @@ export default {
this.$router.push("car/carChild"); this.$router.push("car/carChild");
}else if(val === 1){ }else if(val === 1){
console.log("切换停车场1-主场景") console.log("切换停车场1-主场景")
window.GotoScene("B1");
}else if(val === 2) { }else if(val === 2) {
console.log("切换停车场2-主场景") console.log("切换停车场2-主场景");
window.GotoScene("B2");
}else if(val === 3) { }else if(val === 3) {
console.log("切换停车场3-主场景") console.log("切换停车场3-主场景");
window.GotoScene("B3");
}else if(val === 'home'){ }else if(val === 'home'){
console.log("跳传首页") console.log("跳传首页")
} }

View File

@ -218,7 +218,7 @@ export default {
// $box-width: 300px; // $box-width: 300px;
// $box-height: 410px; // $box-height: 410px;
$box-width: 600px; $box-width: 600px;
$box-height:900px; $box-height:731px;
#centerLeft1 { #centerLeft1 {

View File

@ -1,4 +1,5 @@
<template> <template>
<!-- <div id="index" ref="appRef">-->
<div id="index" ref="appRef"> <div id="index" ref="appRef">
<div <div
class="bg" class="bg"
@ -174,13 +175,13 @@ export default {
{index: 5, city: '扬州', building_name: '省公司大楼', water: '0', electricity: '0', gas: '0', heat: '0'}, {index: 5, city: '扬州', building_name: '省公司大楼', water: '0', electricity: '0', gas: '0', heat: '0'},
], ],
// //
datalist_usage1: [ // datalist_usage1: [
{index: 1, city: '南京', building_name: '客服大厦1', water: 31449.7, electricity: 7466093.4, gas: '0', heat: '0'}, // {index: 1, city: '', building_name: '1', water: 31449.7, electricity: 7466093.4, gas: '0', heat: '0'},
{index: 2, city: '南京', building_name: '盐城零碳1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 2, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 3, city: '苏州', building_name: '淮安楼宇1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 3, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 4, city: '南通', building_name: '徐州大沙河1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 4, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 5, city: '扬州', building_name: '省公司大楼1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 5, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
], // ],
// //
datalist_save: [ datalist_save: [
@ -191,13 +192,13 @@ export default {
{index: 5, city: '扬州', building_name: '省公司大楼', water: '0', electricity: '0', gas: '0', heat: '0'}, {index: 5, city: '扬州', building_name: '省公司大楼', water: '0', electricity: '0', gas: '0', heat: '0'},
], ],
// //
datalist_save1: [ // datalist_save1: [
{index: 1, city: '南京', building_name: '客服大厦1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 1, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 2, city: '南京', building_name: '盐城零碳1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 2, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 3, city: '苏州', building_name: '淮安楼宇1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 3, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 4, city: '南通', building_name: '徐州大沙河1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 4, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
{index: 5, city: '扬州', building_name: '省公司大楼1', water: '0', electricity: '0', gas: '0', heat: '0'}, // {index: 5, city: '', building_name: '1', water: '0', electricity: '0', gas: '0', heat: '0'},
], // ],
}; };
}, },
@ -239,15 +240,15 @@ export default {
// // } // // }
// // document.getElementById('temp-float-window').style.display = 'block' // // document.getElementById('temp-float-window').style.display = 'block'
// } // }
qiehuan(){ // qiehuan(){
this.datalist_save = this.datalist_save1 // this.datalist_save = this.datalist_save1
this.datalist_usage = this.datalist_usage1 // this.datalist_usage = this.datalist_usage1
} // }
}, },
created() { created() {
window['vueDefinedMyProp'] = nanjing =>{ // window['vueDefinedMyProp'] = nanjing =>{
this.qiehuan() // this.qiehuan()
} // }
} }
}; };
</script> </script>

View File

@ -277,7 +277,7 @@ export default {
this.$router.push("/land"); this.$router.push("/land");
} else if (val == 2) { } else if (val == 2) {
console.log("消防安全-主场景") console.log("消防安全-主场景")
this.$router.push("/fire"); // this.$router.push("/fire");
} else if (val == 3) { } else if (val == 3) {
console.log("智慧工地-主场景") console.log("智慧工地-主场景")
this.$router.push("/wisdom"); this.$router.push("/wisdom");
@ -295,6 +295,7 @@ export default {
this.$router.push("/carTravel"); this.$router.push("/carTravel");
}else if (val == 9) { }else if (val == 9) {
console.log("360全景-主场景") console.log("360全景-主场景")
this.$router.push("/360panorama")
}else { }else {
console.log("绿色双碳-主场景") console.log("绿色双碳-主场景")
this.$router.push("/green"); this.$router.push("/green");
@ -332,6 +333,14 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../assets/scss/index.scss"; @import "../assets/scss/index.scss";
.contentText{
width: 100%;
min-height: 100%;
max-height: 100vh;
height: 100%;
overflow: hidden;
position: absolute;
}
.body-left{ .body-left{
background: url('../assets/left.png') no-repeat!important; background: url('../assets/left.png') no-repeat!important;
} }

View File

@ -392,7 +392,7 @@ export default {
}, },
{ {
key: "宗地地号", key: "宗地地号",
value: "" value: "320105002014GB00033"
}, },
{ {
key: "宗地图", key: "宗地图",
@ -404,7 +404,7 @@ export default {
}, },
{ {
key: "使用终止日期", key: "使用终止日期",
value: "" value: "2056年2月5号"
}, },
{ {
key: "土地实际持有人", key: "土地实际持有人",
@ -469,7 +469,7 @@ export default {
dataSource5: [ dataSource5: [
{ {
key: "房产编号", key: "房产编号",
value: "" value: "14201001004"
}, },
{ {
key: "来源", key: "来源",
@ -492,7 +492,7 @@ export default {
}, },
{ {
key: "总建筑层数", key: "总建筑层数",
value: "" value: "21层"
}, },
{ {
key: "地上层数", key: "地上层数",

View File

@ -1,5 +1,5 @@
<template> <template>
<div id="index" ref="appRef" style="overflow:hidden"> <div id="index" class="contentText" style="overflow:hidden">
<!-- <div class="bg" :style="{ <!-- <div class="bg" :style="{
backgroundImage: backgroundImage:
'url(' + require(`../../assets/${backgroundPic.index}.png`) + ')', 'url(' + require(`../../assets/${backgroundPic.index}.png`) + ')',
@ -56,7 +56,7 @@
</template> </template>
</BasicBox> </BasicBox>
<!-- <div class="d1" @click="go('nanjing')" v-show="nanj">切换南京</div>--> <!-- <div class="d1" @click="go('nanjing')" v-show="nanj">切换南京</div>-->
<div class="d2" @click="go('landChild')" v-show="landC">切换详情</div> <!-- <div class="d2" @click="go('landChild')" v-show="landC">切换详情</div>-->
</div> </div>
<div class="center"> <div class="center">
<div class="box" v-for="(item, index) in centerList" :key="index"> <div class="box" v-for="(item, index) in centerList" :key="index">
@ -1281,6 +1281,12 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "~@/common/var.scss"; @import "~@/common/var.scss";
.contentText{
width: 100vw;
min-height: 100%;
max-height: 100vh;
overflow: hidden;
}
.back-button a { .back-button a {
position: absolute; position: absolute;
right: 21px; right: 21px;