From c393f8b721c1e7f6ea65ff0f3ad3a47dce71cfbc Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 21 Jan 2025 10:20:34 +0800
Subject: [PATCH] 格式异常问题解决
---
src/components/map/dcSearchMap.vue | 85 +++++++++++++++++++++++++++---------------
1 files changed, 55 insertions(+), 30 deletions(-)
diff --git a/src/components/map/dcSearchMap.vue b/src/components/map/dcSearchMap.vue
index 6e6f556..04fedde 100644
--- a/src/components/map/dcSearchMap.vue
+++ b/src/components/map/dcSearchMap.vue
@@ -5,12 +5,13 @@
</template>
<script>
+
+let pointLayer = null
export default {
name: "dcSearchMap",
props: ['isDetail', 'point'],
data () {
return {
- pointLayer: null,
currentPoint: null,
//绘制工具
plotTool: null,
@@ -48,18 +49,31 @@
})
//加载地图
+ // global.searchViewer.imageryLayers.addImageryProvider(
+ // new global.DC.Namespace.Cesium.UrlTemplateImageryProvider({
+ // url: 'http://t{s}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=d083e4cf30bfc438ef93436c10c2c20a',
+ // subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
+ // format: 'image/jpeg',
+ // show: true,
+ // maximumLevel: 18
+ // })
+ // )
+
global.searchViewer.imageryLayers.addImageryProvider(
- new global.DC.Namespace.Cesium.UrlTemplateImageryProvider({
- url: 'https://webmap-tile.sf-express.com/MapTileService/rt?fetchtype=static&x={x}&y={y}&z={z}&project=sfmap&pic_size=256&pic_type=png8&data_name=361100&data_format=merged-dat&data_type=normal',
- format: 'image/jpeg',
- show: true,
- maximumLevel: 18
+ new global.DC.Namespace.Cesium.WebMapTileServiceImageryProvider({
+ url: "http://10.141.11.11:80/slapi/MapTileService/wmts?STORETYPE=merged-dat&PROJECTION=4326",
+ layer: "wmts_4326_361100",
+ style: "default",
+ format: "image/png",
+ tileMatrixSetID: "c",
+ tileMatrixLabels: new Array(18).fill(0).map((v, i) => i + 1),
+ tilingScheme: new global.DC.Namespace.Cesium.GeographicTilingScheme(),
})
)
//添加图层
- self.pointLayer = new global.DC.VectorLayer('polygonLayer')
- global.searchViewer.addLayer(self.pointLayer)
+ pointLayer = new global.DC.VectorLayer('polygonLayer')
+ global.searchViewer.addLayer(pointLayer)
self.plotTool = new global.DC.Plot(global.searchViewer, {
icon_center: "/img/dwicon.jpeg", // 自定义的中心点图标
@@ -74,8 +88,8 @@
// Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
// fromDegrees()方法,将经纬度和高程转换为世界坐标
destination: global.DC.Namespace.Cesium.Cartesian3.fromDegrees(
- //设置坐标为上饶市
- 117.951478782, 28.447896798, 1800.0
+ //设置坐标为上饶市信州区
+ 117.966460, 28.431002, 5000.0
),
orientation: {
// 指向
@@ -102,18 +116,18 @@
//鼠标左键事件
let leftClick = function (event) {
if (self.currentPoint) {
- self.pointLayer.removeOverlay(self.currentPoint)
+ pointLayer.removeOverlay(self.currentPoint)
self.currentPoint = null
}
- let point = new global.DC.Point(new global.DC.Position(event.wgs84SurfacePosition.lng, event.wgs84SurfacePosition.lat))
- point.setStyle({
- pixelSize: 10,
- color: global.DC.Color.RED, //颜色
- outlineColor: global.DC.Color.WHITE, //边框颜色
- outlineWidth: 2, //边框大小,
- })
+ let point = new global.DC.Billboard(new global.DC.Position(event.wgs84SurfacePosition.lng, event.wgs84SurfacePosition.lat), 'img/dwicon.jpeg')
+ // point.setStyle({
+ // pixelSize: 10,
+ // color: global.DC.Color.RED, //颜色
+ // outlineColor: global.DC.Color.WHITE, //边框颜色
+ // outlineWidth: 2, //边框大小,
+ // })
self.currentPoint = point
- self.pointLayer.addOverlay(point)
+ pointLayer.addOverlay(point)
let pointLonLat = [event.wgs84SurfacePosition.lng, event.wgs84SurfacePosition.lat]
self.$emit("getMapData", pointLonLat)
}
@@ -148,21 +162,32 @@
pointArray = pointData[1].split(" ")
let position = new global.DC.Position(pointArray[0], pointArray[1])
- let point = new global.DC.Point(position)
- point.setStyle({
- pixelSize: 10,
- color: global.DC.Color.RED, //颜色
- outlineColor: global.DC.Color.WHITE, //边框颜色
- outlineWidth: 2, //边框大小,
- })
+ let point = new global.DC.Billboard(position, 'img/dwicon.jpeg')
+ // point.setStyle({
+ // pixelSize: 10,
+ // color: global.DC.Color.RED, //颜色
+ // outlineColor: global.DC.Color.WHITE, //边框颜色
+ // outlineWidth: 2, //边框大小,
+ // })
this.currentPoint = point
- this.pointLayer.addOverlay(point)
- viewer.flyTo(this.pointLayer)
+ pointLayer.addOverlay(point)
+ viewer.flyTo(pointLayer)
}
},
+ setView (points) {
+ if (points) {
+ let position = new global.DC.Position(Number(points.lng), Number(points.lat), 2000, 0, -90, 0)
+ let point = new global.DC.Billboard(position, 'img/dwicon.jpeg')
+ this.currentPoint = point
+ pointLayer.clear()
+ pointLayer.addOverlay(point)
+ global.searchViewer.flyToPosition(
+ new global.DC.Position(Number(points.lng), Number(points.lat), 2000, 0, -90, 0)
+ )
+ }
+ }
}
}
</script>
-<style scoped>
-</style>
+<style scoped></style>
--
Gitblit v1.9.3