Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
founder_vue
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
常超
founder_vue
Commits
7780aba7
Commit
7780aba7
authored
Aug 30, 2021
by
liupeng
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'pgis_data' of
http://47.92.108.28/changchao/founder_vue
into pgis_data
parents
2d03a50e
51eee0f6
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
205 additions
and
28 deletions
+205
-28
public/cfg/cfg.js
+29
-11
src/assets/img/hideBtn.png
+0
-0
src/assets/img/hideBtn_h.png
+0
-0
src/main.js
+1
-1
src/utils/map.js
+68
-1
src/views/Home.vue
+24
-3
src/views/block/layerArrayBox.vue
+20
-5
src/views/map/3DMap.vue
+63
-7
No files found.
public/cfg/cfg.js
View file @
7780aba7
/*
* @Author: LMM
* @Date: 2021-08-23 11:19:49
* @LastEditTime: 2021-08-2
6 10:04:4
7
* @LastEditTime: 2021-08-2
7 17:33:3
7
* @LastEditors: Please set LastEditors
* @Description:配置文件
* @FilePath: \founder_vue\public\cfg\cfg.js
...
...
@@ -9,6 +9,13 @@
var
_701EzServer
=
"http://172.18.124.72:8082/EzServer701/WMTS"
;
var
_7EzServer
=
"http://172.18.124.72:8082/EzServer7/WMTS"
;
window
.
pageConfig
=
{
_3DBaseUrl
:
[
{
url
:
"http://172.18.124.72:8082/EzServer7/WMTS?SERVICE=WMTS&layer=qg_yxdt&style=default&tilematrixset=c&Request=GetTile&Version=1.0.0&Format=tile&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}"
,
// tileMatrixLabels: ["8", "9", "10", "11", "12", "13", "14", "15", "16"],
}
],
pageData
:
{
imageData
:
{
name
:
"影像数据"
,
...
...
@@ -219,9 +226,10 @@ window.pageConfig = {
key
:
"大屏专题地图"
,
name
:
"大屏专题地图"
,
serviceName
:
"DPZTDT"
,
url
:
_701EzServer
,
url
:
"http://172.18.124.72:8082/EzServer701/Maps/DPZTDT/EzMap"
,
// "http://172.18.124.72:8082/EzServer701/client/client7/openmap29.jsp?map=DPZTDT",
center
:
[
108.656
,
34.0498
],
type
:
"ezMap"
,
zoom
:
5
,
},
{
...
...
@@ -255,7 +263,7 @@ window.pageConfig = {
url
:
"http://172.18.124.72:8082/3DServer/model/0b2801c22a7f485ca529d93028945b69/tileset.json"
,
//经度(度) 维度(度) 高度(米) 航向角(度,正北为0) 俯仰角(度) 旋转角(度)
center
:
[
107.188149
,
27.9515
,
500
]
,
center
:
[
107.188149
,
27.9515
,
500
]
},
{
key
:
"倾斜三维2cm"
,
...
...
@@ -280,20 +288,22 @@ window.pageConfig = {
key
:
"倾斜三维精修"
,
name
:
"倾斜三维精修"
,
serviceName
:
"ylnz(杨凌南站)"
,
url
:
"http://172.18.124.72:8082/3DServer/model/8d2351621f064ee886453567dd8a0411/tileset.json"
,
url
:
"http://172.18.124.72:8082/3DServer/model/8d2351621f064ee886453567dd8a0411/tileset.json"
,
center
:
[
108.0481
,
34.2493
,
500
],
},
{
key
:
"仿真三维"
,
name
:
"仿真三维"
,
serviceName
:
"hb(淮北智慧城市三维)"
,
url
:
[
"http://172.18.124.72:8082/3DServer/model/02f36f918b9243bcbc01fef5360e4a76/tileset.json"
,
url
:
[
"http://172.18.124.72:8082/3DServer/model/02f36f918b9243bcbc01fef5360e4a76/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/3dbb680b1be642799b62482c0931a813/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/4733fa3f5f734fd59a35fe97ef4cde00/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/4a4c28e62b9f4bfe9f4d2baf7c3170f7/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/fd5d912e87b242ff879ac167447e8de6/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/50d83feca7114cc6b90b2113b46d3f7f/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/42bfe8235a464be1b37feaa9991c86d8/tileset.json"
"http://172.18.124.72:8082/3DServer/model/42bfe8235a464be1b37feaa9991c86d8/tileset.json"
,
],
center
:
[
116.795
,
33.947
,
500
],
},
...
...
@@ -301,14 +311,16 @@ window.pageConfig = {
key
:
"仿真室内三维"
,
name
:
"仿真室内三维"
,
serviceName
:
"snsw"
,
url
:
"http://172.18.124.72:8082/3DServer/model/a6fae84ff7a04fbfab546dfd2dfdfea8/tileset.json"
,
url
:
"http://172.18.124.72:8082/3DServer/model/a6fae84ff7a04fbfab546dfd2dfdfea8/tileset.json"
,
center
:
[
116.307
,
39.9825
,
80
],
},
{
key
:
"仿真室内外单体三维"
,
name
:
"仿真室内外单体三维"
,
serviceName
:
"syjy"
,
url
:
[
"http://172.18.124.72:8082/3DServer/model/752bb79a14354300b4dc7bead9770844/tileset.json"
,
url
:
[
"http://172.18.124.72:8082/3DServer/model/752bb79a14354300b4dc7bead9770844/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/462b9e6aa930476697b2ba31a37dde93/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/3ce026aed97c4d4fa90ff136443d081f/tileset.json"
,
"http://172.18.124.72:8082/3DServer/model/494d098abeec4e6eb9f997cfeed1c539/tileset.json"
,
...
...
@@ -358,14 +370,20 @@ window.pageConfig = {
key
:
"建筑物三维"
,
name
:
"建筑物三维"
,
serviceName
:
"lz(兰州三维建筑物)"
,
url
:
"http://172.18.124.72:8082/3DServer/model/ebe0c7c1716e464a8ce653f90b6dc6a4/tileset.json"
,
center
:
[
103.846
,
36.05
,
500
],
url
:
"http://172.18.71.226:8083/data/sjcsdata/lzjzw3dtiles/tileset.json"
,
// "http://172.18.124.72:8082/3DServer/model/ebe0c7c1716e464a8ce653f90b6dc6a4/tileset.json",
center
:
[
103.846
,
36.05
,
500
,
0
,
-
40
,
0
],
imgLayer
:
{
url
:
"http://172.18.71.226:8082/EzServer7/WMTS?SERVICE=WMTS&layer=gansusheng_k&style=default&tilematrixset=c&Request=GetTile&Version=1.0.0&Format=tile&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}"
,
// tileMatrixLabels: ["8", "9", "10", "11", "12", "13", "14", "15", "16"],
}
},
{
key
:
"夜景建筑物三维"
,
name
:
"夜景建筑物三维"
,
serviceName
:
"shx(绍兴夜景三维)"
,
url
:
"http://172.18.124.72:8082/3DServer/model/2e4fc030517145cea7452cd05536cb52/tileset.json"
,
url
:
"http://172.18.124.72:8082/3DServer/model/2e4fc030517145cea7452cd05536cb52/tileset.json"
,
center
:
[
120.581
,
29.995
,
500
],
},
],
...
...
src/assets/img/hideBtn.png
0 → 100644
View file @
7780aba7
5.68 KB
src/assets/img/hideBtn_h.png
0 → 100644
View file @
7780aba7
5.78 KB
src/main.js
View file @
7780aba7
/*
* @Author: LMM
* @Date: 2021-08-06 16:05:33
* @LastEditTime: 2021-08-2
5 18:17:46
* @LastEditTime: 2021-08-2
7 17:27:23
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\main.js
...
...
src/utils/map.js
View file @
7780aba7
/*
* @Author: your name
* @Date: 2021-08-11 14:55:07
* @LastEditTime: 2021-08-2
6 09:45:59
* @LastEditTime: 2021-08-2
7 17:33:26
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\utils\map.js
...
...
@@ -137,6 +137,12 @@ function remove_2dLayer() {
_2dlayer
=
null
;
}
}
export
function
addEzMapLayer
(
url
,
layername
)
{
remove_2dLayer
();
_2dlayer
=
new
Ez
.
TileLayer
.
EzMap2010
(
layername
,
url
,
{
sid
:
true
});
window
.
map
.
addLayer
(
_2dlayer
);
}
export
function
addWMTSLayer
(
url
,
layername
)
{
remove_2dLayer
();
let
opt
;
...
...
@@ -181,6 +187,7 @@ function remove_3DTileset() {
export
function
add3DTileset
(
url
)
{
// url = "http://47.92.249.229:8080/3dtiles/SL_JZWMX/tileset.json";
remove_3DTileset
();
url
=
"http://172.18.71.226:8083/data/sjcsdata/lzjzw3dtiles/tileset.json"
;
if
(
url
instanceof
Array
)
{
_3DTileset
=
[];
url
.
forEach
((
item
)
=>
{
...
...
@@ -211,3 +218,63 @@ export function changeViewerCenter(center) {
},
});
}
// 三维地图添加图层
let
_temp3DLayer
=
[];
export
function
removeImageryLayer
()
{
if
(
_temp3DLayer
&&
_temp3DLayer
.
length
>
0
)
{
_temp3DLayer
.
forEach
((
layer
)
=>
{
window
.
viewer
.
imageryLayers
.
remove
(
layer
);
});
_temp3DLayer
=
[];
}
}
export
function
addImageryLayer
(
layerObj
)
{
removeImageryLayer
();
if
(
!
layerObj
)
{
return
;
}
if
(
layerObj
instanceof
Array
)
{
layerObj
.
forEach
((
obj
)
=>
{
let
layer
=
add3DLayer
(
obj
);
_temp3DLayer
.
push
(
layer
);
});
}
else
{
let
layer
=
add3DLayer
(
layerObj
);
_temp3DLayer
.
push
(
layer
);
}
}
function
add3DLayer
(
obj
)
{
let
tempLayer
=
null
;
if
(
!
obj
.
url
)
{
console
.
log
(
"加载失败"
);
}
let
tempObj
=
{
tilingScheme
:
new
Cesium
.
GeographicTilingScheme
(),
tileMatrixLabels
:
[
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
,
"7"
,
"8"
,
"9"
,
"10"
,
"11"
,
"12"
,
"13"
,
"14"
,
"15"
,
"16"
,
"17"
,
"18"
,
"19"
,
],
};
Object
.
assign
(
tempObj
,
obj
);
let
imgLayer
=
new
Cesium
.
WebMapTileServiceImageryProvider
(
tempObj
);
tempLayer
=
window
.
viewer
.
imageryLayers
.
addImageryProvider
(
imgLayer
);
return
tempLayer
;
}
src/views/Home.vue
View file @
7780aba7
<!--
* @Author: LMM
* @Date: 2021-08-06 16:05:33
* @LastEditTime: 2021-08-2
6 10:51:52
* @LastEditTime: 2021-08-2
7 17:57:57
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\views\Home.vue
...
...
@@ -9,7 +9,7 @@
<
template
>
<div
class=
"home"
>
<titleBlk></titleBlk>
<mapToolBlk></mapToolBlk>
<mapToolBlk
v-show=
"!is3D"
></mapToolBlk>
<saveBoxBlk
v-if=
"isShowSaveBox"
v-on:close=
"isShowSaveBox = false"
...
...
@@ -19,6 +19,15 @@
<searchBox></searchBox>
<layerArrayBox
v-on:changeMap=
"changeMap"
></layerArrayBox>
<homePageRightButton
@
click=
"changeDetailLayer"
></homePageRightButton>
<layerArrayBox
v-show=
"isShowArrayBox"
v-on:changeMap=
"changeMap"
></layerArrayBox>
<div
:style=
"
{
backgroundImage: 'url(' + require('../assets/img/hideBtn.png') + ')',
left: isShowArrayBox ? '340px' : '10px',
}"
class="hideBtn"
@click="isShowArrayBox = !isShowArrayBox"
>
</div>
</div>
</
template
>
...
...
@@ -50,6 +59,7 @@ export default {
is3D
:
this
.
$root
.
isShow3D
,
isShowSaveBox
:
false
,
showDetail
:
false
,
isShowArrayBox
:
true
,
};
},
computed
:
{
...
...
@@ -81,4 +91,15 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
></
style
>
<
style
lang=
"scss"
>
.hideBtn
{
background-size
:
100%
100%
;
position
:
absolute
;
top
:
calc
(
50%
-
100px
);
width
:
38px
;
height
:
233px
;
}
.hideBtn
:hover
{
background-image
:
url(../assets/img/hideBtn_h.png)
!important
;
}
</
style
>
src/views/block/layerArrayBox.vue
View file @
7780aba7
<!--
* @Author: your name
* @Date: 2021-08-23 11:12:35
* @LastEditTime: 2021-08-2
5 18:33:17
* @LastEditTime: 2021-08-2
7 17:29:02
* @LastEditors: Please set LastEditors
* @Description: 左侧图层组界面
* @FilePath: \founder_vue\src\views\block\layerArrayBox.vue
...
...
@@ -41,6 +41,8 @@ import {
changeMapCenter
,
add3DTileset
,
changeViewerCenter
,
addImageryLayer
,
addEzMapLayer
,
}
from
"../../utils/map"
;
export
default
{
name
:
"layerArrayBox"
,
...
...
@@ -65,9 +67,13 @@ export default {
}
if
(
this
.
$root
.
isShow3D
)
{
this
.
$root
.
isShow3D
=
false
;
this
.
$emit
(
"changeMap"
)
this
.
$emit
(
"changeMap"
)
;
}
if
(
curType
.
type
&&
curType
.
type
===
"ezMap"
)
{
addEzMapLayer
(
curType
.
url
,
curType
.
serviceName
);
}
else
{
addWMTSLayer
(
curType
.
url
,
curType
.
serviceName
);
}
changeMapCenter
(
curType
.
center
,
curType
.
zoom
);
},
...
...
@@ -80,9 +86,13 @@ export default {
}
if
(
this
.
$root
.
isShow3D
)
{
this
.
$root
.
isShow3D
=
false
;
this
.
$emit
(
"changeMap"
)
this
.
$emit
(
"changeMap"
)
;
}
if
(
curType
.
type
&&
curType
.
type
===
"ezMap"
)
{
addEzMapLayer
(
curType
.
url
,
curType
.
serviceName
);
}
else
{
addWMTSLayer
(
curType
.
url
,
curType
.
serviceName
);
}
changeMapCenter
(
curType
.
center
,
curType
.
zoom
);
},
electronicMapSelected
(
e
)
{
...
...
@@ -94,9 +104,13 @@ export default {
}
if
(
this
.
$root
.
isShow3D
)
{
this
.
$root
.
isShow3D
=
false
;
this
.
$emit
(
"changeMap"
)
this
.
$emit
(
"changeMap"
)
;
}
if
(
curType
.
type
&&
curType
.
type
===
"ezMap"
)
{
addEzMapLayer
(
curType
.
url
,
curType
.
serviceName
);
}
else
{
addWMTSLayer
(
curType
.
url
,
curType
.
serviceName
);
}
changeMapCenter
(
curType
.
center
,
curType
.
zoom
);
},
threeDModelSelected
(
e
)
{
...
...
@@ -108,8 +122,9 @@ export default {
}
if
(
!
this
.
$root
.
isShow3D
)
{
this
.
$root
.
isShow3D
=
true
;
this
.
$emit
(
"changeMap"
)
this
.
$emit
(
"changeMap"
)
;
}
addImageryLayer
(
curType
.
imgLayer
);
add3DTileset
(
curType
.
url
);
changeViewerCenter
(
curType
.
center
);
},
...
...
src/views/map/3DMap.vue
View file @
7780aba7
<!--
* @Author: LMM
* @Date: 2021-08-09 14:57:49
* @LastEditTime: 2021-08-2
5 15:49:41
* @LastEditTime: 2021-08-2
7 16:26:35
* @LastEditors: Please set LastEditors
* @Description: 三维地图
* @FilePath: \founder_vue\src\views\map\3Dview.vue
-->
<
template
>
<div
id=
"map3dDiv"
v-bind:style=
"
{ height: heightWindow, width: '100%' }">
</div>
<div
id=
"map3dDiv"
v-bind:style=
"
{ height: heightWindow, width: '100%' }"
>
</div>
</
template
>
<
script
>
export
default
{
...
...
@@ -26,12 +29,66 @@ export default {
id
:
"map3dDiv"
,
MapServer
:
this
.
baseLayerUrl
,
});
// ezGlobe.viewer.scene.terrainProvider = new Cesium.CesiumTerrainProvider({
// url: window.config.mapUrl.terrainProvider,
// }); //地形
window
.
viewer
=
ezGlobe
.
viewer
;
window
.
pageConfig
.
_3DBaseUrl
.
forEach
((
baseUrl
)
=>
{
let
tempObj
=
{
tilingScheme
:
new
Cesium
.
GeographicTilingScheme
(),
tileMatrixLabels
:
[
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
,
"7"
,
"8"
,
"9"
,
"10"
,
"11"
,
"12"
,
"13"
,
"14"
,
"15"
,
"16"
,
"17"
,
"18"
,
"19"
,
],
};
Object
.
assign
(
tempObj
,
baseUrl
)
let
imgLayer
=
new
Cesium
.
WebMapTileServiceImageryProvider
(
tempObj
);
window
.
viewer
.
imageryLayers
.
addImageryProvider
(
imgLayer
);
});
window
.
viewer
.
scene
.
globe
.
depthTestAgainstTerrain
=
true
;
this
.
flyHome
();
var
tileset6
=
new
Cesium
.
Cesium3DTileset
({
url
:
"http://172.18.71.226:8083/data/sjcsdata/lzjzw3dtiles/tileset.json"
});
window
.
viewer
.
scene
.
primitives
.
add
(
tileset6
);
window
.
viewer
.
scene
.
camera
.
flyTo
({
destination
:
Cesium
.
Cartesian3
.
fromDegrees
(
103.846
,
36.05
,
500
),
orientation
:
{
heading
:
Cesium
.
Math
.
toRadians
(
0.0
),
pitch
:
Cesium
.
Math
.
toRadians
(
-
40.0
),
roll
:
0.0
}
});
tileset6
.
readyPromise
.
then
(
function
(
tileset
)
{
var
heightOffset
=
37.1
;
//高度
var
boundingSphere
=
tileset
.
boundingSphere
;
var
cartographic
=
Cesium
.
Cartographic
.
fromCartesian
(
boundingSphere
.
center
);
var
surface
=
Cesium
.
Cartesian3
.
fromRadians
(
cartographic
.
longitude
,
cartographic
.
latitude
,
0.0
);
var
offset
=
Cesium
.
Cartesian3
.
fromRadians
(
cartographic
.
longitude
,
cartographic
.
latitude
,
heightOffset
);
var
translation
=
Cesium
.
Cartesian3
.
subtract
(
offset
,
surface
,
new
Cesium
.
Cartesian3
());
tileset
.
modelMatrix
=
Cesium
.
Matrix4
.
fromTranslation
(
translation
);
})
// this.flyHome();
},
flyHome
()
{
window
.
viewer
.
scene
.
camera
.
flyTo
({
...
...
@@ -49,7 +106,7 @@ export default {
},
},
mounted
()
{
const
that
=
this
;
const
that
=
this
;
window
.
onresize
=
()
=>
{
return
(()
=>
{
that
.
heightWindow
=
window
.
innerHeight
-
1
+
"px"
;
...
...
@@ -59,9 +116,8 @@ export default {
},
};
</
script
>
<
style
>
#map3dDiv
{
<
style
>
#map3dDiv
{
display
:
inline-block
;
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment