bill 3 роки тому
батько
коміт
db25d3f116

+ 1 - 0
src/api/scene.ts

@@ -39,6 +39,7 @@ export type Scenes = Scene[]
 
 const toLocalScene = (scene: Scene) => ({
   ...scene,
+  num: scene.type === SceneType.SWMX ? scene.modelId.toString() : scene.num,
   name: scene.name || scene.sceneName || scene.modelTitle,
 })
 

+ 14 - 5
src/layout/scene-list/index.vue

@@ -6,7 +6,7 @@
     <template #atom="{ item }">
       <div 
         v-if="item.raw === fuseModel" 
-        @click="$emit('update:current', current === item.raw ? null : item.raw)"
+        @click="updateCurrent(item.raw)"
       >
         <ModelList
           class="scene-model-list"
@@ -22,7 +22,7 @@
           </template>
         </ModelList>
       </div>
-      <div class="scene" @click="$emit('update:current', {type: item.raw.type, num: item.raw.num})" v-else>
+      <div class="scene" @click="updateCurrent(item.raw)" v-else>
         <p>{{ item.raw.name }}</p>
         <p>{{ SceneTypeDesc[item.raw.type as SceneType] }}</p>
       </div>
@@ -37,21 +37,30 @@ import List from '@/components/list/index.vue'
 import ModelList from '../model-list/index.vue'
 import { fuseModel, getModelTypeDesc } from '@/model'
 
-import type { ModelType } from '@/model'
+import type { ModelType, FuseModelType } from '@/model'
+import type { Scene } from '@/store'
 
-defineEmits<{ (e: 'update:current', data: ModelType): void }>()
+const emit = defineEmits<{ (e: 'update:current', data: ModelType): void }>()
 const props = defineProps<{ current: ModelType }>()
 
 const list = computed(() => {
   const sceneList = scenes.value.map(scene => ({
     raw: scene,
     select: props.current !== fuseModel 
-      && props.current.num === scene.num 
+      && (props.current.num === scene.num )
       && props.current.type === scene.type
   }))
   return [{ raw: fuseModel }, ...sceneList]
 })
 
+const updateCurrent = (scene: FuseModelType | Scene) => {
+  if (scene === fuseModel) {
+    emit('update:current', scene)
+  } else {
+    emit('update:current', { type: scene.type, num: scene.num })
+  }
+}
+
 </script>
 
 <style lang="scss">

+ 0 - 1
src/model/platform.ts

@@ -143,7 +143,6 @@ export async function exposeFactory(type: ModelType, win?: any): Promise<ModelEx
           const { pose, mode } = JSON.parse(flyData)
           sdk.customMap.mode  = mode
           sdk.scene.setPose(pose, 300)
-          console.error('setView')
         }
       }
     }

+ 1 - 5
src/sdk/association.ts

@@ -70,7 +70,6 @@ const associationModels = (sdk: SDK) => {
         continue;
       }
 
-      console.error('added', item)
       const itemRaw = toRaw(item)
       const sceneModel = sdk.addModel({
         ...itemRaw,
@@ -167,10 +166,7 @@ const associationModels = (sdk: SDK) => {
           )
           watch(
             () => modelShow.value, 
-            () => {
-              console.error(item, modelShow.value)
-              isUnSet || getSceneModel(item)?.changeShow(modelShow.value)
-            }, 
+            () => isUnSet || getSceneModel(item)?.changeShow(modelShow.value), 
             { immediate: true }
           )
 

+ 2 - 2
src/store/fuse-model.ts

@@ -26,8 +26,8 @@ export type { FuseModelAttrs } from '@/api'
 export const fuseModels = ref<FuseModels>([])
 export const defaultFuseModelAttrs: FuseModelAttrs = {
   show: true,
-  scale: 1,
-  opacity: 1,
+  scale: 100,
+  opacity: 100,
   bottom: 0,
   position: {x: 0, y: 0, z: 0},
   rotation: {x: 0, y: 0, z: 0}

+ 3 - 0
src/views/measure/edit.vue

@@ -22,6 +22,9 @@ const emit = defineEmits<{
 const measure = reactive(props.measure)
 const modelMeasure = sdk.startMeasure(measure.type)
 associationMessaure(modelMeasure, measure)
+modelMeasure.bus.on('submit', () => {
+  console.log('???--------------??')
+})
 modelMeasure.bus.on('cancel', giveupLeave)
 modelMeasure.bus.on('invalidPoint', Message.error)
 

+ 2 - 1
src/views/sign-model/index.vue

@@ -24,7 +24,8 @@ const loadSignModel = async () => {
       modelId: scene.modelId,
       show: true,
       url: scene.modelGlbUrl || scene.modelObjUrl,
-      type: scene.type
+      type: scene.type,
+      opacity: 100
     })
     fuseModels.value.push(fuseModel)