| | |
| | | id="mapView" |
| | | class="MapBox" |
| | | v-loading="loading" |
| | | element-loading-spinner="el-icon-loading" |
| | | element-loading-background="rgba(0, 0, 0, 0.8)" |
| | | > |
| | | <div class="topMenu"> |
| | |
| | | ><i class="el-icon-s-operation"></i |
| | | ></el-link> |
| | | </el-form-item> |
| | | <el-form-item label="比例尺"> |
| | | <el-form-item> |
| | | <el-select v-model="value" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in options" |
| | |
| | | :underline="false" |
| | | :disabled="layerExtent == null" |
| | | >出图申请 |
| | | </el-link></el-form-item |
| | | > |
| | | </el-link> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-link |
| | | style="color: white" |
| | | @click="getShowMapList" |
| | | :underline="false" |
| | | >出图列表</el-link |
| | | ></el-form-item |
| | | > |
| | | > |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-link |
| | | style="color: white" |
| | |
| | | <div class="bottomContent"> |
| | | <div style="width: 100%" v-show="lefMenuContent"> |
| | | <el-tree |
| | | :data="data" |
| | | :data="treeData" |
| | | show-checkbox |
| | | node-key="id" |
| | | :props="defaultProps" |
| | |
| | | <el-input v-model="form.name"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-table |
| | | ref="singleTable" |
| | | :data="tableData" |
| | | style="width: 100%" |
| | | height="200" |
| | | > |
| | | <el-table-column type="index" label="序号" width="50"> |
| | | </el-table-column> |
| | | <div style="padding: 1%; border: 1px solid white"> |
| | | <el-table |
| | | ref="singleTable" |
| | | :data="tableData" |
| | | style="width: 100%" |
| | | height="200" |
| | | > |
| | | <el-table-column type="index" label="序号" width="50"> |
| | | </el-table-column> |
| | | |
| | | <el-table-column property="name" label="图层名称"> |
| | | </el-table-column> |
| | | </el-table> |
| | | <el-table-column property="name" label="图层名称"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-form-item> |
| | | |
| | | <el-form-item> |
| | |
| | | > |
| | | <el-table-column type="index" width="50" label="序号"> |
| | | </el-table-column> |
| | | <el-table-column property="name" label="名称"> </el-table-column> |
| | | <el-table-column property="type" label="类型"> </el-table-column> |
| | | <el-table-column property="descr" label="标题"> </el-table-column> |
| | | <el-table-column property="name" label="文件名称"> </el-table-column> |
| | | <el-table-column property="createName" label="出图人"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | property="createTime" |
| | | :formatter="formatTime" |
| | | label="日期" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column property="descr" label="描述"> </el-table-column> |
| | | |
| | | <el-table-column label="操作" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-link |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import ImageWMS from 'ol/source/ImageWMS'; |
| | | import Map from 'ol/Map'; |
| | | import XYZ from 'ol/source/XYZ'; |
| | | import View from 'ol/View'; |
| | | import Image from 'ol/layer/Image'; |
| | | import TileLayer from 'ol/layer/Tile'; |
| | | import { transform } from 'ol/proj'; |
| | | import Draw, { createRegularPolygon, createBox } from 'ol/interaction/Draw.js'; |
| | | import { OSM, Vector as VectorSource } from 'ol/source'; |
| | | import { Vector as VectorLayer } from 'ol/layer'; |
| | | import LayerVector from 'ol/layer/Vector'; |
| | | import Style from 'ol/style/Style'; |
| | | import Fill from 'ol/style/Fill'; |
| | | import Stroke from 'ol/style/Stroke'; |
| | | import Circle from 'ol/style/Circle'; |
| | | import mapviewVue from '../../components/mapview.vue'; |
| | | import { removeToken, getToken } from '@/utils/auth'; |
| | | import $ from 'jquery'; |
| | | import { exportSelectByPage } from '../../api/api.js'; |
| | | import moment from 'moment'; |
| | | import ImageWMS from "ol/source/ImageWMS" |
| | | import Map from "ol/Map" |
| | | import XYZ from "ol/source/XYZ" |
| | | import View from "ol/View" |
| | | import { OverviewMap, defaults as defaultControls, FullScreen, ScaleLine, Rotate} from "ol/control.js" |
| | | import Image from "ol/layer/Image" |
| | | import TileLayer from "ol/layer/Tile" |
| | | import { transform } from "ol/proj" |
| | | import Draw, { createRegularPolygon, createBox } from "ol/interaction/Draw.js" |
| | | import { OSM, Vector as VectorSource } from "ol/source" |
| | | import { Vector as VectorLayer } from "ol/layer" |
| | | import LayerVector from "ol/layer/Vector" |
| | | import Style from "ol/style/Style" |
| | | import Fill from "ol/style/Fill" |
| | | import Stroke from "ol/style/Stroke" |
| | | import Circle from "ol/style/Circle" |
| | | import mapviewVue from "../../components/mapview.vue" |
| | | import { removeToken, getToken } from "@/utils/auth" |
| | | import $ from "jquery" |
| | | import { exportSelectByPage, perms_selectLayers } from "../../api/api.js" |
| | | import moment from "moment" |
| | | import { image_layer } from "../../assets/js/index.js" |
| | | export default { |
| | | data() { |
| | | return { |
| | |
| | | rowtype: true, |
| | | loading: false, |
| | | form: {}, |
| | | formInline: { role: '' }, |
| | | formInline: { role: "" }, |
| | | layerform: {}, |
| | | tableData: [], |
| | | exportable: [], |
| | | multipleSelection: [], |
| | | options: [{ label: '1:20万', value: '1:20万' }], |
| | | value: '1:20万', |
| | | data: [ |
| | | { |
| | | id: 1, |
| | | label: '图层', |
| | | children: [ |
| | | { |
| | | id: 11, |
| | | label: '项目', |
| | | value: '项目', |
| | | layer: 'LF:bs_project', |
| | | isEdit: false, |
| | | }, |
| | | { |
| | | id: 12, |
| | | label: '站场', |
| | | value: '站场', |
| | | layer: 'LF:m_sitepoint', |
| | | isEdit: false, |
| | | }, |
| | | { |
| | | id: 13, |
| | | label: '管道中心线', |
| | | value: '管道中心线', |
| | | layer: 'LF:m_pipeline', |
| | | isEdit: false, |
| | | }, |
| | | { |
| | | id: 14, |
| | | label: '战略通道', |
| | | value: '战略通道', |
| | | layer: 'LF:th_strategic_channel', |
| | | isEdit: false, |
| | | }, |
| | | ], |
| | | }, |
| | | options: [ |
| | | { label: "A0", value: "A0" }, |
| | | { label: "A1", value: "A1" }, |
| | | { label: "A2", value: "A2" }, |
| | | { label: "A3", value: "A3" }, |
| | | { label: "A4", value: "A4" }, |
| | | { label: "A5", value: "A5" }, |
| | | { label: "A6", value: "A6" }, |
| | | ], |
| | | value: "A4", |
| | | treeData: [], |
| | | arrList: [], |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'label', |
| | | children: "children", |
| | | label: "label", |
| | | }, |
| | | draw: null, |
| | | vector: null, |
| | |
| | | pageIndex: 1, |
| | | }, |
| | | count: 0, |
| | | }; |
| | | } |
| | | }, |
| | | |
| | | mounted() { |
| | | this.initMap(); |
| | | this.showMapLayer(); |
| | | this.LayerStart() |
| | | this.initMap() |
| | | this.showMapLayer() |
| | | }, |
| | | methods: { |
| | | showMapLayer() { |
| | | var val = this.data[0].children; |
| | | var std = []; |
| | | for (var i = 0; i < val.length; i++) { |
| | | var layer2 = new Image({ |
| | | name: val[i].label, |
| | | source: new ImageWMS({ |
| | | crossOrigin: 'anonymous', |
| | | url: geoServerURl, |
| | | |
| | | params: { |
| | | FORMAT: 'image/png', |
| | | VERSION: '1.1.1', |
| | | LAYERS: val[i].layer, |
| | | }, |
| | | }), |
| | | }); |
| | | mapView.addLayer(layer2); |
| | | std.push(val[i].id); |
| | | async LayerStart() { |
| | | const data = await perms_selectLayers() |
| | | if (data.code != 200) { |
| | | return this.$message.error("图层列表查询失败") |
| | | } |
| | | this.$refs.tree.setCheckedKeys(std); |
| | | var std = [] |
| | | var layer_list = [] |
| | | var layer_groups = [] |
| | | for (var i in data.result) { |
| | | if (data.result[i].type == 1) { |
| | | layer_groups.push({ |
| | | id: data.result[i].id, |
| | | label: data.result[i].cnName, |
| | | type: data.result[i].type, |
| | | isEdit: false, |
| | | children: [], |
| | | }) |
| | | } else if (data.result[i].type == 2) { |
| | | if (data.result[i].url != null) { |
| | | var layer_entity = { |
| | | id: data.result[i].id, |
| | | pid: data.result[i].pid, |
| | | label: data.result[i].cnName, |
| | | resource: data.result[i].url, |
| | | type: data.result[i].type, |
| | | isEdit: false, |
| | | } |
| | | layer_list.push(layer_entity) |
| | | if (data.result[i].isShow == 1) { |
| | | std.push(data.result[i].id) |
| | | this.showMapLayer(layer_entity) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | for (var i in layer_list) { |
| | | for (var j in layer_groups) { |
| | | if (layer_list[i].pid === layer_groups[j].id) { |
| | | layer_groups[j].children.push(layer_list[i]) |
| | | } |
| | | } |
| | | } |
| | | this.treeData = layer_groups |
| | | for (var i in data.result) { |
| | | if (data.result[i].type == 2 && data.result[i].url != null) { |
| | | for (var j = 0; j < window.Viewer.imageryLayers._layers.length; j++) { |
| | | var val_id = window.Viewer.imageryLayers._layers[j] |
| | | if (val_id.show == true) { |
| | | if (val_id.imageryProvider.name == data.result[i].cnName) { |
| | | std.push(data.result[i].id) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | this.$refs.tree.setCheckedKeys(std) |
| | | }, |
| | | showMapLayer(val) { |
| | | var layer2 = new Image({ |
| | | name: val.label, |
| | | source: new ImageWMS({ |
| | | crossOrigin: "anonymous", |
| | | url: geoServerURl, |
| | | |
| | | params: { |
| | | FORMAT: "image/png", |
| | | VERSION: "1.1.1", |
| | | LAYERS: val.resource, |
| | | }, |
| | | }), |
| | | }) |
| | | mapView.addLayer(layer2) |
| | | }, |
| | | showLeftMenu(res) { |
| | | switch (res) { |
| | | case 1: |
| | | this.leftMenuOpen = !this.leftMenuOpen; |
| | | break; |
| | | this.leftMenuOpen = !this.leftMenuOpen |
| | | break |
| | | case 2: |
| | | this.leftMenuOpen = false; |
| | | break; |
| | | this.leftMenuOpen = false |
| | | break |
| | | } |
| | | if (this.leftMenuOpen == true) { |
| | | setTimeout(() => { |
| | | this.lefMenuContent = true; |
| | | }, 200); |
| | | this.lefMenuContent = true |
| | | }, 200) |
| | | } else { |
| | | setTimeout(() => { |
| | | this.lefMenuContent = false; |
| | | }, 1100); |
| | | this.lefMenuContent = false |
| | | }, 1100) |
| | | } |
| | | }, |
| | | formatTime(row, column) { |
| | | let date = row[column.property]; |
| | | let date = row[column.property] |
| | | if (date === undefined || date === null) { |
| | | return ''; |
| | | return "" |
| | | } |
| | | return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss'); |
| | | return moment(parseInt(date)).format("YYYY-MM-DD HH:mm:ss") |
| | | }, |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val; |
| | | this.multipleSelection = val |
| | | }, |
| | | handleSizeChange(val) { |
| | | this.listdata.pageIndex = 1; |
| | | this.listdata.pageSize = val; |
| | | this.getShowMapList(); |
| | | this.listdata.pageIndex = 1 |
| | | this.listdata.pageSize = val |
| | | this.getShowMapList() |
| | | }, |
| | | handleCurrentChange(val) { |
| | | this.listdata.pageIndex = val; |
| | | this.getShowMapList(); |
| | | this.listdata.pageIndex = val |
| | | this.getShowMapList() |
| | | }, |
| | | async getShowMapList() { |
| | | this.showMapList = true; |
| | | const data = await exportSelectByPage(this.listdata); |
| | | this.showMapList = true |
| | | const data = await exportSelectByPage(this.listdata) |
| | | |
| | | this.exportable = data.result; |
| | | this.exportable = data.result |
| | | |
| | | this.count = data.count; |
| | | this.count = data.count |
| | | }, |
| | | |
| | | getYMD() { |
| | | let myDate = new Date() |
| | | let myYear = myDate.getFullYear() //获取完整的年份(4位,1970-????) |
| | | let myMonth = myDate.getMonth() + 1 //获取当前月份(0-11,0代表1月) |
| | | let myToday = myDate.getDate() //获取当前日(1-31) |
| | | myMonth = myMonth > 9 ? myMonth : "0" + myMonth |
| | | myToday = myToday > 9 ? myToday : "0" + myToday |
| | | let nowDate = "V" + myYear + myMonth + myToday |
| | | return nowDate |
| | | }, |
| | | setExportMapLayer(res) { |
| | | var token = '?token=' + getToken(); |
| | | var token = "?token=" + getToken() |
| | | var data = { |
| | | token: token.replace('?token=', ''), |
| | | token: token.replace("?token=", ""), |
| | | title: this.form.name, |
| | | pageSize: 'A4', |
| | | province: '山东省', |
| | | scale: this.value, |
| | | resolution: '20米', |
| | | date: '2022.11.14', |
| | | pageSize: this.value, |
| | | province: "山东省", |
| | | scale: "1:20万", |
| | | resolution: "20米", |
| | | date: this.getYMD(), |
| | | layers: res.toString(), |
| | | rotation: 0, |
| | | xmin: this.layerExtent.xmin, |
| | | ymin: this.layerExtent.ymin, |
| | | xmax: this.layerExtent.xmax, |
| | | ymax: this.layerExtent.ymax, |
| | | }; |
| | | } |
| | | |
| | | $.ajax({ |
| | | async: true, |
| | | url: BASE_URL + '/export/insertMap' + token, |
| | | type: 'POST', |
| | | url: BASE_URL + "/export/insertMap" + token, |
| | | type: "POST", |
| | | data: JSON.stringify(data), |
| | | contentType: 'application/json', |
| | | dataType: 'json', |
| | | contentType: "application/json", |
| | | dataType: "json", |
| | | error: function () {}, |
| | | success: (rs) => { |
| | | this.loading = false; |
| | | var value = 'code = ' + rs.code + ', result = ' + rs.result; |
| | | success: rs => { |
| | | this.loading = false |
| | | var value = "code = " + rs.code + ", result = " + rs.result |
| | | if ((rs.code = 200)) { |
| | | this.$message({ |
| | | message: value, |
| | | type: 'success', |
| | | }); |
| | | this.setMapRemoveDraw(); |
| | | message: "出图成功,请到出图列表查看并下载", |
| | | type: "success", |
| | | }) |
| | | this.setMapRemoveDraw() |
| | | } else { |
| | | this.loading = false; |
| | | this.$message.error(value); |
| | | this.loading = false |
| | | this.$message.error(value) |
| | | } |
| | | }, |
| | | }); |
| | | }) |
| | | }, |
| | | downloadMap(index, rows) { |
| | | var guid = rows.guid; |
| | | var token = '?token=' + getToken(); |
| | | var a = document.createElement('a'); // 创建一个a标签元素 |
| | | a.style.display = 'none'; // 设置元素不可见 |
| | | a.href = BASE_URL + '/mark/downloadFile' + token + '&guid=' + guid; |
| | | var guid = rows.guid |
| | | var token = "?token=" + getToken() |
| | | var a = document.createElement("a") // 创建一个a标签元素 |
| | | a.style.display = "none" // 设置元素不可见 |
| | | a.href = BASE_URL + "/mark/downloadFile" + token + "&guid=" + guid |
| | | |
| | | document.body.appendChild(a); // 加入 |
| | | a.click(); // 触发点击,下载 |
| | | document.body.removeChild(a); // 释放 |
| | | document.body.appendChild(a) // 加入 |
| | | a.click() // 触发点击,下载 |
| | | document.body.removeChild(a) // 释放 |
| | | }, |
| | | setMapRemoveDraw() { |
| | | if (this.draw != null) { |
| | | mapView.removeLayer(this.vector); |
| | | mapView.removeLayer(this.vector) |
| | | } |
| | | this.layerExtent = null; |
| | | this.layerExtent = null |
| | | }, |
| | | |
| | | setMapAddDraw() { |
| | | this.setMapRemoveDraw(); |
| | | this.setMapRemoveDraw() |
| | | |
| | | this.source = new VectorSource({ wrapX: false }); |
| | | this.source = new VectorSource({ wrapX: false }) |
| | | |
| | | this.vector = new VectorLayer({ |
| | | source: this.source, |
| | | }); |
| | | mapView.addLayer(this.vector); |
| | | }) |
| | | mapView.addLayer(this.vector) |
| | | |
| | | let type = 'Circle'; |
| | | let geometryFunction = createBox(); |
| | | let type = "Circle" |
| | | let geometryFunction = createBox() |
| | | this.draw = new Draw({ |
| | | source: this.source, |
| | | type, |
| | | geometryFunction, |
| | | }); |
| | | mapView.addInteraction(this.draw); |
| | | this.draw.on('drawend', (e) => { |
| | | let feature = e.feature; |
| | | let geom = feature.getGeometry(); |
| | | var extent = geom.getExtent(); |
| | | var a1 = transform([extent[0], extent[1]], 'EPSG:3857', 'EPSG:4326'); |
| | | var a2 = transform([extent[2], extent[3]], 'EPSG:3857', 'EPSG:4326'); |
| | | }) |
| | | mapView.addInteraction(this.draw) |
| | | this.draw.on("drawend", e => { |
| | | let feature = e.feature |
| | | let geom = feature.getGeometry() |
| | | var extent = geom.getExtent() |
| | | var a1 = transform([extent[0], extent[1]], "EPSG:3857", "EPSG:4326") |
| | | var a2 = transform([extent[2], extent[3]], "EPSG:3857", "EPSG:4326") |
| | | |
| | | this.layerExtent = { |
| | | xmin: a1[0], |
| | | ymin: a1[1], |
| | | xmax: a2[0], |
| | | ymax: a2[1], |
| | | }; |
| | | mapView.removeInteraction(this.draw); |
| | | }); |
| | | } |
| | | mapView.removeInteraction(this.draw) |
| | | }) |
| | | }, |
| | | setMapRole() { |
| | | if (this.formInline.role == '') { |
| | | this.formInline.role = '0'; |
| | | if (this.formInline.role == "") { |
| | | this.formInline.role = "0" |
| | | } |
| | | var value = parseFloat(this.formInline.role); |
| | | var value = parseFloat(this.formInline.role) |
| | | |
| | | var role = (Math.PI / 180) * value; |
| | | mapView.getView().setRotation(role); |
| | | var role = (Math.PI / 180) * value |
| | | mapView.getView().setRotation(role) |
| | | }, |
| | | setMapApply() { |
| | | if (this.layerExtent == null) { |
| | | this.$message.error('请选择出图范围'); |
| | | return; |
| | | this.$message.error("请选择出图范围") |
| | | return |
| | | } |
| | | this.loading = true; |
| | | var val_data = []; |
| | | this.loading = true |
| | | var val_data = [] |
| | | for (var i in this.tableData) { |
| | | val_data.push(this.tableData[i].name); |
| | | val_data.push(this.tableData[i].name) |
| | | } |
| | | if (this.isActive) { |
| | | val_data.push('矢量图'); |
| | | val_data.push('矢量注记'); |
| | | val_data.push("矢量图") |
| | | } else { |
| | | val_data.push('影像'); |
| | | val_data.push('影像注记'); |
| | | val_data.push("影像注记") |
| | | val_data.push("影像图") |
| | | } |
| | | this.setExportMapLayer(val_data); |
| | | this.showMapApply = false; |
| | | this.form = {}; |
| | | this.setExportMapLayer(val_data) |
| | | this.showMapApply = false |
| | | this.form = {} |
| | | }, |
| | | handleClose() {}, |
| | | handleTreeNodeClick(data, nodes) { |
| | | if (data.children != null) return; |
| | | var layers = mapView.getAllLayers(); |
| | | if (data.children != null) return |
| | | var layers = mapView.getAllLayers() |
| | | for (var i in layers) { |
| | | var layer = layers[i]; |
| | | var layer = layers[i] |
| | | var str = 0 |
| | | if (layer.values_.name == data.label) { |
| | | layer.setVisible(nodes); //显示图层 |
| | | layer.setVisible(nodes) //显示图层 |
| | | if (nodes == true) { |
| | | str++ |
| | | this.arrList.push({ |
| | | name: data.label, |
| | | }); |
| | | }) |
| | | } else { |
| | | this.arrList.some((item, i) => { |
| | | if (item.name === data.label) { |
| | | this.arrList.splice(i, 1); |
| | | this.arrList.splice(i, 1) |
| | | } |
| | | }); |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | this.tableData = this.arrList; |
| | | |
| | | if (str == 0 && nodes == true) { |
| | | this.showMapLayer(data) |
| | | this.arrList.push({ |
| | | name: data.label, |
| | | }) |
| | | } |
| | | |
| | | this.tableData = this.arrList |
| | | }, |
| | | setAddMapLayer() { |
| | | this.dialogVisible = false; |
| | | this.dialogVisible = false |
| | | this.data[0].children.push({ |
| | | label: this.layerform.name, |
| | | type: this.layerform.type, |
| | | resource: this.layerform.resource, |
| | | }); |
| | | }) |
| | | }, |
| | | |
| | | setLeftMenu() { |
| | | this.showleftMenu = true; |
| | | this.rowtype = true; |
| | | this.showleftMenu = true |
| | | this.rowtype = true |
| | | }, |
| | | //左侧菜单点击事件 |
| | | changeRowType() { |
| | | this.rowtype = !this.rowtype; |
| | | this.rowtype = !this.rowtype |
| | | }, |
| | | //地图初始化 |
| | | initMap() { |
| | | var TiandiLayer = new TileLayer({ |
| | | source: new XYZ({ |
| | | url: 'http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}', |
| | | url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}", |
| | | }), |
| | | }); |
| | | }) |
| | | |
| | | var GaoDeLayer = new TileLayer({ |
| | | source: new XYZ({ |
| | | url: 'http://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=6', |
| | | url: "http://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=6", |
| | | }), |
| | | }); |
| | | }) |
| | | var GaoDeTitle = new TileLayer({ |
| | | source: new XYZ({ |
| | | url: 'http://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=8', |
| | | url: "http://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=8", |
| | | }), |
| | | }); |
| | | }) |
| | | window.mapView = new Map({ |
| | | target: 'mapView', |
| | | target: "mapView", |
| | | layers: [TiandiLayer, GaoDeLayer, GaoDeTitle], |
| | | view: new View({ |
| | | center: transform([105.02, 34.9], 'EPSG:4326', 'EPSG:3857'), |
| | | center: transform([105.02, 34.9], "EPSG:4326", "EPSG:3857"), |
| | | zoom: 4, |
| | | projection: 'EPSG:3857', |
| | | projection: "EPSG:3857", |
| | | }), |
| | | }); |
| | | mapView.getLayers().item(1).setVisible(false); |
| | | mapView.getLayers().item(2).setVisible(false); |
| | | this.formInline.role = mapView.getView().getRotation(); |
| | | controls: defaultControls().extend([new FullScreen(), new ScaleLine(), new Rotate()]), |
| | | }) |
| | | mapView.getLayers().item(1).setVisible(false) |
| | | mapView.getLayers().item(2).setVisible(false) |
| | | // this.formInline.role = mapView.getView().getRotation() |
| | | }, |
| | | //切换底图 |
| | | changeMenulayer() { |
| | | this.isActive = !this.isActive; |
| | | this.isMenuLayer = !this.isMenuLayer; |
| | | this.setLayerVisible(); |
| | | this.isActive = !this.isActive |
| | | this.isMenuLayer = !this.isMenuLayer |
| | | this.setLayerVisible() |
| | | }, |
| | | setLayerVisible() { |
| | | if (this.isActive == true) { |
| | | mapView.getLayers().item(1).setVisible(false); |
| | | mapView.getLayers().item(2).setVisible(false); |
| | | mapView.getLayers().item(0).setVisible(true); |
| | | mapView.getLayers().item(1).setVisible(false) |
| | | mapView.getLayers().item(2).setVisible(false) |
| | | mapView.getLayers().item(0).setVisible(true) |
| | | } else { |
| | | mapView.getLayers().item(1).setVisible(true); |
| | | mapView.getLayers().item(2).setVisible(true); |
| | | mapView.getLayers().item(0).setVisible(false); |
| | | mapView.getLayers().item(1).setVisible(true) |
| | | mapView.getLayers().item(2).setVisible(true) |
| | | mapView.getLayers().item(0).setVisible(false) |
| | | } |
| | | }, |
| | | }, |
| | | }; |
| | | } |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | |
| | | padding: 20px; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | overflow: auto; |
| | | } |
| | | .CenDiv { |
| | | height: 40px; |
| | |
| | | .active { |
| | | height: 40px; |
| | | width: 60px; |
| | | background: url('../../assets/img/Layer/imgLayer2.png') no-repeat center; |
| | | background: url("../../assets/img/Layer/imgLayer2.png") no-repeat center; |
| | | position: absolute; |
| | | background-size: 100% 100%; |
| | | border-radius: 5px; |
| | |
| | | .menuLayer { |
| | | height: 40px; |
| | | width: 60px; |
| | | background: url('../../assets/img/Layer/imgLayer1.png') no-repeat center; |
| | | background: url("../../assets/img/Layer/imgLayer1.png") no-repeat center; |
| | | position: absolute; |
| | | background-size: 100% 100%; |
| | | border-radius: 5px; |
| | |
| | | .mapApplay { |
| | | width: 40%; |
| | | position: absolute; |
| | | background: rgba(0, 0, 0, 0.5); |
| | | background: #303030; |
| | | z-index: 40; |
| | | top: 15%; |
| | | margin-left: 30%; |
| | |
| | | /deep/.el-loading-spinner i { |
| | | color: #409eff !important; |
| | | } |
| | | /deep/.el-tree .el-tree-node__content:hover { |
| | | background-color: transparent !important; |
| | | } |
| | | /deep/.el-tree { |
| | | color: white !important; |
| | | background: transparent !important; |
| | | } |
| | | /deep/.el-tree-node:focus > .el-tree-node__content { |
| | | background: transparent !important; |
| | | } |
| | | } |
| | | </style> |