WEB VIDEO PLATFORM是一个基于GB28181-2016标准实现的网络视频平台,支持NAT穿透,支持海康、大华、宇视等品牌的IPC、NVR、DVR接入。支持国标级联,支持rtsp/rtmp等视频流转发到国标平台,支持rtsp/rtmp等推流转发到国标平台。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 lines
2.2 KiB

<template>
<div id="mapContainer" style="width: 100%;height: 100%;"></div>
</template>
<script>
import 'ol/ol.css';
import Map from 'ol/Map';
import OSM from 'ol/source/OSM';
import XYZ from 'ol/source/XYZ';
import TileLayer from 'ol/layer/Tile';
import View from 'ol/View';
import {get as getProj, fromLonLat} from 'ol/proj';
import {ZoomSlider, Zoom} from 'ol/control';
let olMap = null;
export default {
name: 'MapComponent',
data() {
return {
};
},
created(){
this.$nextTick(() => {
this.init();
})
},
props: [],
mounted () {
},
methods: {
init(){
let center = fromLonLat([116.41020, 39.915119]);
if (mapParam.center) {
center = fromLonLat(mapParam.center);
}
const view = new View({
center: center,
zoom: mapParam.zoom || 10,
projection: this.projection,
maxZoom: mapParam.maxZoom || 19,
minZoom: mapParam.minZoom || 1,
});
let tileLayer = null;
if (mapParam.tilesUrl) {
tileLayer = new TileLayer({
source: new XYZ({
projection: getProj("EPSG:3857"),
wrapX: false,
tileSize: 256 || mapParam.tileSize,
url: mapParam.tilesUrl
})
})
}else {
tileLayer = new TileLayer({
preload: 4,
source: new OSM(),
})
}
olMap = new Map({
target: "mapContainer", // 容器ID
layers: [tileLayer], // 默认图层
view: view, // 视图
controls:[ // 控件
// new ZoomSlider(),
new Zoom(),
] ,
})
},
setCenter(point){
},
zoomIn(zoom){
},
zoomOut(zoom){
},
centerAndZoom(point,zoom,callback){
},
panTo(point){
},
openInfoBox(){
},
closeInfoBox(){
},
addLayer(){
},
removeLayer(){
}
},
destroyed() {
// if (this.jessibuca) {
// this.jessibuca.destroy();
// }
// this.playing = false;
// this.loaded = false;
// this.performance = "";
},
}
</script>
<style>
</style>