shuishen
2022-03-25 fef95dccf82c863e9d656c1ef82694c0e32c51d9
src/components/map/components/dimension.vue
@@ -97,7 +97,9 @@
                [114.03954722, 27.62819644, 100],
                [114.04006133, 27.628038, 100]
            ],
            mapCenter: [115.871863, 28.743861, 400.0]
            mapCenter: [116.35381525,
                27.95839468, 400.0]
            // mapCenter: [115.871863, 28.743861, 400.0]
        }
    },
    computed: {
@@ -207,6 +209,45 @@
                            // minimumLevel: 19
                        }))
                    global.viewer.imageryLayers.addImageryProvider(
                        new global.DC.Namespace.Cesium.WebMapTileServiceImageryProvider({
                            url: 'http://arcgis.jxpskj.com:6080/arcgis/rest/services/FZ25DMap/MapServer/WMTS',
                            layer: 'fzsw2019',
                            style: 'default',
                            tileMatrixSetID: 'default028mm',
                            format: 'image/jpgpng',
                            tilingScheme: new global.DC.Namespace.Cesium.GeographicTilingScheme(),
                            maximumLevel: 19,
                            tileMatrixLabels: [
                                '0',
                                '1',
                                '2',
                                '3',
                                '4',
                                '5',
                                '6',
                                '7',
                                '8',
                                '9',
                                '10',
                                '11',
                                '12',
                                '13',
                                '14',
                                '15',
                                '16',
                                '17',
                                '18',
                                '19'
                            ]
                        })
                    )
                    // global.viewer.imageryLayers.addImageryProvider(new global.DC.Namespace.Cesium.ArcGisMapServerImageryProvider({
                    //     url: 'http://arcgis.jxpskj.com:6080/arcgis/rest/services/FZ25DMap/MapServer',
                    //     layer: 'fzsw2019',
                    // }))
                    // wallLayer = new global.DC.VectorLayer('wallLayer')
                    // global.viewer.addLayer(wallLayer)
@@ -282,8 +323,8 @@
                    global.viewer.scene.screenSpaceCameraController.minimumZoomDistance = 100
                    global.eagleViewer.scene.screenSpaceCameraController.minimumZoomDistance = 1100
                    // 最大
                    global.viewer.scene.screenSpaceCameraController.maximumZoomDistance = 400
                    global.eagleViewer.scene.screenSpaceCameraController.maximumZoomDistance = 1400
                    // global.viewer.scene.screenSpaceCameraController.maximumZoomDistance = 400
                    // global.eagleViewer.scene.screenSpaceCameraController.maximumZoomDistance = 1400
                    // 设置相机缩小时的速率
                    global.viewer.scene.screenSpaceCameraController._minimumZoomRate = 2000
@@ -429,153 +470,157 @@
                            }
                        }
                    document.querySelector('.dc-zoom-controller').children[2].onclick =
                        function () {
                            if (
                                that.dimensionValue != undefined &&
                                that.dimensionValue != '真三维'
                            ) {
                                const height = Math.ceil(
                                    global.viewer.camera.positionCartographic.height
                                )
                    // document.querySelector('.dc-zoom-controller').children[2].onclick =
                    //     function () {
                    //         if (
                    //             that.dimensionValue != undefined &&
                    //             that.dimensionValue != '真三维'
                    //         ) {
                    //             const height = Math.ceil(
                    //                 global.viewer.camera.positionCartographic.height
                    //             )
                                if (height < 150) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                200
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                    //             if (height < 150) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             200
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                                    return
                                }
                    //                 return
                    //             }
                                if (height < 250) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                300
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                    //             if (height < 250) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             300
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                                    return
                                }
                    //                 return
                    //             }
                                if (height < 350) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                400
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                                }
                            }
                        }
                    //             if (height < 350) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             400
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                    //             }
                    //         }
                    //     }
                    document.querySelector('.dc-zoom-controller').children[0].onclick =
                        function () {
                            if (
                                that.dimensionValue != undefined &&
                                that.dimensionValue != '真三维'
                            ) {
                                const height = Math.ceil(
                                    global.viewer.camera.positionCartographic.height
                                )
                    // document.querySelector('.dc-zoom-controller').children[0].onclick =
                    //     function () {
                    //         if (
                    //             that.dimensionValue != undefined &&
                    //             that.dimensionValue != '真三维'
                    //         ) {
                    //             const height = Math.ceil(
                    //                 global.viewer.camera.positionCartographic.height
                    //             )
                                if (height > 350) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                300
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                    //             if (height > 350) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             300
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                                    return
                                }
                    //                 return
                    //             }
                                if (height > 250) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                200
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                    //             if (height > 250) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             200
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                                    return
                                }
                    //                 return
                    //             }
                                if (height > 150) {
                                    global.viewer.camera.setView({
                                        destination:
                                            global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                                                global.viewer.camera.positionCartographic.longitude,
                                                global.viewer.camera.positionCartographic.latitude,
                                                100
                                            ),
                                        orientation: {
                                            // 指向
                                            heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                                            // 视角
                                            pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                                            roll: 0.0
                                        }
                                    })
                                }
                            }
                        }
                    //             if (height > 150) {
                    //                 global.viewer.camera.setView({
                    //                     destination:
                    //                         global.DC.Namespace.Cesium.Cartesian3.fromRadians(
                    //                             global.viewer.camera.positionCartographic.longitude,
                    //                             global.viewer.camera.positionCartographic.latitude,
                    //                             100
                    //                         ),
                    //                     orientation: {
                    //                         // 指向
                    //                         heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
                    //                         // 视角
                    //                         pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
                    //                         roll: 0.0
                    //                     }
                    //                 })
                    //             }
                    //         }
                    //     }
                    global.viewer.on(global.DC.SceneEventType.CAMERA_CHANGED, that.mapCameraEvent)
                    global.eagleViewer.on(global.DC.SceneEventType.CAMERA_CHANGED, that.smallMapCameraEvent)
                    // global.viewer.on(global.DC.SceneEventType.CAMERA_CHANGED, that.mapCameraEvent)
                    // global.eagleViewer.on(global.DC.SceneEventType.CAMERA_CHANGED, that.smallMapCameraEvent)
                }
            }
        }
    },
    methods: {
        zoomToOpen () {
        },
        locationSTM () {
            global.viewer.flyToPosition('116.45793269658417,39.92711385557482,617.5967826044838,181.95219395269424,-21.286437065473546')
        },