diff --git a/src/views/military/modules/earthMap/msMapLabel/components/MsMapLabelForm.vue b/src/views/military/modules/earthMap/msMapLabel/components/MsMapLabelForm.vue
index 80832cd..ca67124 100644
--- a/src/views/military/modules/earthMap/msMapLabel/components/MsMapLabelForm.vue
+++ b/src/views/military/modules/earthMap/msMapLabel/components/MsMapLabelForm.vue
@@ -13,14 +13,14 @@
-
-
+
+
+
-
-
+
@@ -31,8 +31,9 @@
-
-
+
+
@@ -43,12 +44,33 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -61,7 +83,12 @@
import { getValueType } from '/@/utils';
import { saveOrUpdate } from '../MsMapLabel.api';
import { Form } from 'ant-design-vue';
-
+ import locationPng from '@/assets/images/getLocation.png';
+ import EarthComp from '@/views/earthMap/edit/EarthComp.vue';
+
+ //缓存subObject数据,点击ok 则将执行checkPosition
+ let subObjectCache: any= ref({});
+
const props = defineProps({
formDisabled: { type: Boolean, default: false },
formData: { type: Object, default: ()=>{} },
@@ -167,11 +194,67 @@
});
}
+ // 弹窗地图框属性
+const mapVisible = ref(false);
+const mapShow = function () {
+ mapVisible.value = true;
+};
+const earth = ref()
+function destroyed() {
+ // console.log("earth", earth.value);
+ earth.value.destroy();
+ nextTick(() => {
+ mapVisible.value = false
+ })
+}
+// 关闭地图时设置,视角位置,视距信息
+const checkPosition = function (position, cameraPosition, rotation, fov) {
+ // console.log(position, cameraPosition, rotation, fov);
+
+ formData.labelLon = window.Cesium.Math.toDegrees(position[0]);
+ formData.labelLat = window.Cesium.Math.toDegrees(position[1]);
+ formData.labelHeight = position[2];
+
+ // subObject.value.cameraLon = cameraPosition[0];
+ // subObject.value.cameraLat = cameraPosition[1];
+ // subObject.value.cameraAltitude = cameraPosition[2];
+
+ // subObject.value.rotationX = rotation[0];
+ // subObject.value.rotationY = rotation[1];
+ // subObject.value.rotationZ = rotation[2];
+
+ // subObject.value.viewDistance = fov;
+};
+
+function checkPositionCache(position, cameraPosition, rotation, fov){
+ console.log("接收到了",position);
+ subObjectCache.value.position = position
+ subObjectCache.value.cameraPosition = cameraPosition;
+ subObjectCache.value.rotation = rotation;
+ subObjectCache.value.fov = fov;
+}
+function earthMapOk(){
+ checkPosition(
+ subObjectCache.value.position,
+ subObjectCache.value.cameraPosition,
+ subObjectCache.value.rotation,
+ subObjectCache.value.fov
+ )
+ destroyed()
+}
+
+
+
defineExpose({
add,
edit,
submitForm,
+ mapVisible,
+ earth,
+ destroyed,
+ earthMapOk,
+ checkPosition
});
@@ -181,4 +264,10 @@
overflow-y: auto;
padding: 24px 24px 24px 24px;
}
+ .dwImg {
+ width: 10%;
+ height: 10%;
+ margin-left: 3%;
+ cursor: pointer !important;
+}