bill 8 bulan lalu
induk
melakukan
44445f5d9a

+ 2 - 6
src/views/guide/path/sign.vue

@@ -61,18 +61,14 @@ watchEffect((onCleanup) => {
   if (!node.value) return;
   const $node = node.value;
   const focusHandler = (f: boolean) => {
-    console.log("focus", f);
-    custom.showPath = f ? props.path.id : void 0;
+    node.value?.fly();
   };
   $node.bus.on("focus", focusHandler);
   onCleanup(() => $node.bus.off("focus", focusHandler));
 });
 
 const clickHandler = () => {
-  const focus = !(props.path.id === custom.showPath);
-  custom.showPath = focus ? props.path.id : void 0;
-  console.log(node.value);
-  node.value?.focus(focus);
+  node.value?.fly();
 };
 </script>
 

+ 3 - 3
src/views/tagging-position/index.vue

@@ -4,7 +4,7 @@
     <Collapse v-model:activeKey="showId" ghost accordion expandIconPosition="end">
       <template v-for="(position, i) in positions" :key="position.id">
         <PositionSign
-          v-if="!(unKeepAdding && position.id !== showId)"
+          v-show="!(unKeepAdding && position.id !== showId)"
           :position="position"
           :title="`位置${i + 1}`"
           @applyGlobal="(keys) => applyGlobal(position, keys)"
@@ -44,7 +44,7 @@ import {
   watch,
   watchEffect,
 } from "vue";
-import { sdk, taggingsGroup } from "@/sdk";
+import { getTaggingPosNode, sdk, taggingsGroup } from "@/sdk";
 import { showTaggingPositionsStack } from "@/env";
 import {
   autoSaveTaggings,
@@ -93,7 +93,7 @@ const flyTaggingPosition = (position: TaggingPosition) => {
 
   pop = showTaggingPositionsStack.push(ref(new WeakSet([position])));
   sdk.comeTo({
-    position: position.localPos,
+    position: getTaggingPosNode(position)!.getImageCenter(),
     modelId: position.modelId,
     dur: 300,
     distance: 3,

+ 2 - 2
src/views/tagging/sign.vue

@@ -35,7 +35,7 @@
 import { getFileUrl, getUrlType, MetaType } from "@/utils";
 import { computed, ref, watchEffect, nextTick } from "vue";
 import { getResource, showTaggingPositionsStack } from "@/env";
-import { sdk } from "@/sdk";
+import { getTaggingPosNode, sdk } from "@/sdk";
 import {
   getTaggingStyle,
   getTaggingPositions,
@@ -98,7 +98,7 @@ const flyTaggingPositions = (tagging: Tagging, callback?: () => void) => {
 
     const pop = showTaggingPositionsStack.push(ref(new WeakSet([position])));
     sdk.comeTo({
-      position: position.localPos,
+      position: getTaggingPosNode(position)!.getImageCenter(),
       modelId: position.modelId,
       dur: 300,
       distance: 3,